denovoGear - gsudre/autodenovo GitHub Wiki
09/19/2017
Just for fun, let's explore DenovoGear's option to call variants using the whole family pedigree:
../../software/denovogear-v1.1.1-Linux-x86_64/bin/dng call -p ../9020_quartet.ped ../../NISC/SampleBams/CCGO_800734.bam ../../NISC/SampleBams/CCGO_800983.bam ../../NISC/SampleBams/CCGO_800986.bam ../../NISC/SampleBams/CCGO_800984.bam > 9020_quartet_calls.vcf
But what we're most interested in is the actual denovo calling the software does. So, we do something like this:
samtools mpileup -gDf /fdb/igenomes/Homo_sapiens/UCSC/hg19/Sequence/WholeGenomeFasta/genome.fa ../../NISC/SampleBams/CCGO_800734.bam ../../NISC/SampleBams/CCGO_800933.bam ../../NISC/SampleBams/CCGO_800934.bam ../../NISC/SampleBams/CCGO_800936.bam | ../../software/denovogear-v1.1.1-Linux-x86_64/bin/dng dnm auto --ped ../9020_quartet.ped --output_vcf 9020_dnm.vcf --bcf -
Note that mpileup reads in subject IDs from the RG field, so I had to alter the headers first:
module load picard
java_memory="-Xmx50g"
my_gc_threads=23
id=CCGO_800734
java ${java_memory} -XX:ParallelGCThreads=${my_gc_threads} -jar $PICARDJARPATH/picard.jar AddOrReplaceReadGroups I=../../NISC/SampleBams/${id}.bam O=${id}_RG.bam RGID=${id} RGPL=illumina RGSM=${id} RGPU=unit1 RGLB=${id}
Now, is it better if we use the VCF/BCF generated by its own calls, instead of using the one from samtools?
10/03/2017
The question above should still be explored. For now, let's just use the recalibrated variants joint called by GATK. So:
../../software/denovogear-v1.1.1-Linux-x86_64/bin/dng dnm auto --ped ../9004_trio.ped --output_vcf 9004_dnm.vcf --vcf ../VCF/recalibrated_variants.vcf
Then it's just a matter of running it for all trios:
while read t; do
../../software/denovogear-v1.1.1-Linux-x86_64/bin/dng dnm auto --ped ../${t}.ped --output_vcf ${t}_dnm.vcf --vcf ../VCF/recalibrated_variants.vcf; done < ../trio_ids.txt