genomics-pipeline

Step 20: Mitochondrial Variant Calling and Heteroplasmy Detection

What This Does

Calls mitochondrial DNA variants with heteroplasmy fractions — detecting variants present in only a fraction of your mitochondrial copies. Uses GATK Mutect2 in mitochondrial mode.

Why

Step 12 (haplogrep3) assigns your mitochondrial haplogroup from chrM variants already in the main VCF. This step goes deeper:

Tool

Note: This step was originally planned for MToolBox, but no working Docker image exists for MToolBox (see lessons-learned.md). GATK Mutect2 is the standard clinical alternative.

Docker Image

broadinstitute/gatk:4.6.1.0

Command

# Extract chrM reads
samtools view -b sorted.bam chrM > chrM.bam
samtools index chrM.bam

# Call variants in mitochondrial mode
gatk Mutect2 \
  -R reference.fasta \
  -I chrM.bam \
  -L chrM \
  --mitochondria-mode \
  --max-mnp-distance 0 \
  -O chrM_mutect2.vcf.gz

# Filter
gatk FilterMutectCalls \
  -R reference.fasta \
  -V chrM_mutect2.vcf.gz \
  --mitochondria-mode \
  -O chrM_filtered.vcf.gz

Output

Interpreting Heteroplasmy

| AF Level | Meaning | |—|—| | >0.95 | Homoplasmic — effectively fixed variant | | 0.10-0.95 | Heteroplasmic — mixed population, clinically significant threshold varies | | 0.03-0.10 | Low-level heteroplasmy — may be age-related somatic | | <0.03 | Near detection limit |

Runtime

~15-30 minutes per sample.

Notes