Reference NG50
Find NG50 against half the reference genome length; flag assemblies below that threshold.
Description
NG50 uses half a reference genome as its cumulative length target.
NG50 uses half a reference genome as its cumulative length target. Unlike N50, an incomplete assembly may never reach that reference-based threshold.1
Find NG50 against half the reference genome length; flag assemblies below that threshold.
When to use Reference NG50
Use this for the following task: Find NG50 against half the reference genome length; flag assemblies below that threshold.
Prepare the caller-filtered sequences, counts, coordinates or annotations requested below. Keep identifiers and paired lists aligned on the same reference.
How to use Reference NG50 and understand its results
- Prepare the caller-filtered sequences, counts, coordinates or annotations requested below. Keep identifiers and paired lists aligned on the same reference.
- Enter contigLengths, referenceGenomeBases using the field table, then run the tool.
- Read ng50, thresholdReached. Interpret flags, units, ordering and placeholder values using the rules below.
- Review any reported issue or failed check, correct the supplied values when appropriate, and verify the result in its intended context.
| Input field | Meaning | Value type and bounds | Requirement |
|---|---|---|---|
| contigLengths | Contig lengths | list of integer; minimum entries 1; maximum entries 100000; each entry: integer; minimum 0 | Required |
| referenceGenomeBases | Reference genome length in bases; half this length sets the NG50 threshold. | integer; minimum 1 | Required |
Require a positive reference length and supported contig lengths. Sort lengths descending, accumulate and report whether the reference threshold was reached.2
NG50 = length at first descending cumulative sum ≥ referenceGenomeBases/2 This summarizes the declared operation. Units, indexing, inclusivity and exceptional cases are explained in the surrounding text.
| Output field | Meaning | Value type |
|---|---|---|
| ng50 | NG50 | integer |
| thresholdReached | Threshold reached | boolean |
{
"input": {
"contigLengths": [
6,
3,
1
],
"referenceGenomeBases": 20
},
"output": {
"ng50": 1,
"thresholdReached": true
}
} Limitations and assumptions
If the threshold is not reached, ng50 is 0 and thresholdReached is false. Contiguity does not measure assembly correctness.
The tool operates on supplied local data; alignment, filtering and annotation must already be appropriate for the stated calculation. Malformed requests produce input errors. A successfully evaluated request can still contain false flags, empty result lists or a result outside the supplied threshold; those outcomes have the meanings stated above.
Alternative or Complementary methods
Choose Assembly N50 for this operation: Find the contig length at which descending cumulative length reaches half the assembly. For a complementary task, use Assembly L50 for this operation: Count the fewest largest contigs covering half the total assembled bases.
Further background: Background specification: Reference NG50.
References
-
Reference NG50 — tool.io
Similar or alternative tools
- Assembly N50
Find the contig length at which descending cumulative length reaches half the assembly.
- Assembly L50
Count the fewest largest contigs covering half the total assembled bases.