You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
LUYAO REN a61cb440af runtime 9 months ago
pictures runtime 9 months ago
tasks tunning novoalign parameters 9 months ago
README.md runtime 9 months ago
inputs first commit 9 months ago
workflow.wdl first commit 9 months ago

README.md

Novoalign

Novoalign is a commercial mapping software, without any published paper, and a license is needed.

For Read1 Novoalign uses a seeded alignment process to find alignment locations each with a Read1 alignment score. For each good location found Novoalign does a Needleman­Wunsch alignment of the second read against a region starting from the Read1 alignment and extending 6 standard deviations beyond mean fragment length. The best alignment for Read2 will define the pair score for Read1/Read2. All the alignments are added to a collection for Read1.

This process is repeated using Read2 seeded alignment and then N­W for Read1, creating a collection of Read2/Read1 pairs. There are very likely duplicates amongst the two collections.

Novoalign then decides whether there is a “proper pair” or not. To do this a structural variation penalty is used as follows.

Novoalign has a proper pair if the score of the best pair (Read1/Read2 or Read2/Read1 combined score including fragment length penalty) is less than the structural variation penalty (default 70) plus best single­end Read1 score plus best single­end Read2 score.

If Novoalign has a proper pair, Read1/Read2 & Read2/Read1 lists are combined, removing duplicates and sorting by alignment score. At this point Novoalign has a list of one or more proper pair alignments. This list is passed to reporting which can report one or more alignments depending on the options.

If there wasn’t a proper pair then Novoalign reports alignments to each read in single end mode and the reporting options will decide whether Novoalign reports one or more alignments.

The result of the paired search can be two paired alignments where the pairing is more probable than a structural variation, or it can be two individual alignments, one to each read of the pair.

Given the threshold, gap penalties and reads it is quite possible for novoalign to find alignments with gaps in both ends of the reads. There are no design restrictions that prevent this type of result and it depends only on the scoring parameters and threshold. [cited from the manual]

1. index reference seuqneces
novoindex GRCh38 GRCh38.d1.vd1.fa
2. Novoalign
novoalign -d <reference.ndx> -f <read1.fastq.gz> <read2.fastq.gz> -o SAM -c $nt --hlimit 9 -t 0,2 > ${sample}.novoalign.sam

3. covert sam to bam and index bam
java -jar picard.jar AddOrReplaceReadGroups I=star_output.sam O=rg_added_sorted.bam SO=coordinate RGID=id RGLB=library RGPL=platform RGPU=machine RGSM=sample 

samtools index rg_added_sorted.bam 
4. Markduplicates
sentieon driver -t NUMBER_THREADS -i SORTED_BAM \
  --algo LocusCollector --fun score_info SCORE.gz
sentieon driver -t NUMBER_THREADS -i SORTED_BAM \
  --algo Dedup --rmdup --score_info SCORE.gz  \
  --metrics DEDUP_METRIC_TXT DEDUPED_BAM
NIST’s settings
novoalign -d <reference.ndx> -f <read1.fastq.gz> <read2.fastq.gz>
-F STDFQ --Q2Off -t 400 -o SAM -c 10 

Parameters explanation

-F Specifies the format of the read file. Normally Novoalign can detect the format of read files and this option is not required. STDFQ means Fastq format with Sanger coding of quality values. ­10log10(Perr) + ‘!’

--Q20ff For Novoalign disables treating Q=2 bases as Illumina “The Read Segment Quality Control Indicator”. Setting Q2 off will treat Q=2 bases as normal bases with a quality of 2. When off Q=2 bases are included in quality calibration and may be recalibrated to higher qualities

-t Sets absolute threshold or highest alignment score acceptable for the best alignment

-o Specifies the report format

-c Sets the number of threads to be used. On licensed versions it defaults to the number of CPUs as reported by sysinfo(). On free version the option is disabled.

Per sample running time

Total ~18h

Settings:

  • Disksize 500
  • Cluster OnDemand ecs.sn1ne.8xlarge img-ubuntu-vpc
  • 30x WGS
Module Time
Novoalign 13h
SamToBam 3h40min
indexBam 15min
Dedup 20min