omics.co.in logo omics.co.in

6. Structural Variant (SV) & Copy Number (CNV) Calling

⚡ Category 6 of 14  ·  🧬 8 Primary Tools

Discovery of genomic alterations greater than 50 bp—including large deletions, duplications, inversions, translocations, mobile element insertions, and focal copy number amplifications.

🔍 Ctrl + K

6. Structural Variant (SV) & Copy Number (CNV) Calling

8 Primary Tools

Detecting large genomic alterations (>50 bp) including deletions, duplications, inversions, translocations, copy number amplifications, and complex chromothripsis events.

ToolPrimary Role & PurposeSupported PlatformsExecutable Pipeline
Manta →Paired-end short reads; often paired with Strelka2 for complete variationShort-Read (Illumina)View Code ↓
DELLY →Integrated paired-end and split-read discovery with single-base breakpoint resolutionShort-Read (Illumina)View Code ↓
LUMPY / Smoove →Integrates discordant pairs, split reads, and coverage profiles into one probabilistic modelShort-Read (Illumina)View Code ↓
GRIDSS →Breakpoint caller using assembly and split reads for complex cancer genomesShort-Read (Illumina)View Code ↓
Sniffles / Sniffles2 →Standard for PacBio HiFi and ONT, resolving nested and complex SVsLong-Read (PacBio / ONT)View Code ↓
cuteSV →Fast signature-clustering algorithm for ONT/HiFi long-read SVsLong-Read (ONT / PacBio HiFi)View Code ↓
CNVkit →Copy number variant calling from hybrid-capture whole-exome and targeted sequencingWES / Targeted PanelsView Code ↓
Control-FREEC →Calculates copy numbers and loss of heterozygosity with automatic ploidy assessmentWGS / WES (Cancer)View Code ↓
🌐 Extended Structural & CNV Ecosystem: Breakpoints & Copy Number
Short-Read SV Callers: Manta, DELLY, LUMPY, GRIDSS, Smoove
Long-Read SV Callers: Sniffles2, cuteSV, SVIM, pbsv
Copy Number (CNV/CNA): CNVkit, Control-FREEC, GATK gCNV, FACETS, Sequenza, ASCAT, PURPLE, HMMcopy
Pangenome SV Graphs: vg toolkit, minigraph-cactus, PGGB
🧬

Short-Read Structural Variants & Indels

Short-Read SV Breakpoints

Manta calls structural variants (deletions, inversions, duplications, translocations) and large indels from paired-end short-read sequencing data by pairing split-read mapping with de novo local graph assembly of candidate regions.

# 1. Configure Manta SV calling for tumor-normal pair
configManta.py \
  --tumorBam=tumor.dedup.bam \
  --normalBam=normal.dedup.bam \
  --referenceFasta=GRCh38.fa \
  --runDir=manta_out

# 2. Run workflow with local execution
python manta_out/runWorkflow.py -m local -j 16

# Diploid SVs: manta_out/results/variants/diploidSV.vcf.gz
# Somatic SVs: manta_out/results/variants/somaticSV.vcf.gz
Key Flags: --tumorBam and --normalBam set paired cancer analysis; -m local -j 16 distributes local graph assembly across 16 threads.
✂️

Integrated Paired-End & Split-Read Analysis

Paired & Split SVs & Translocations

DELLY is an integrated structural variant prediction method that discovers deletions, tandem duplications, inversions, and translocations at single-nucleotide breakpoint resolution by combining paired-end read discordance and split reads.

# 1. Call SVs on tumor and normal BAMs
delly call -g GRCh38.fa -o delly_raw.bcf -x hg38.exclude.tsv \
  tumor.dedup.bam normal.dedup.bam

# 2. Filter somatic SVs against germline and blacklist
delly filter -f somatic -o delly_somatic.bcf -s samples.tsv delly_raw.bcf

# 3. Export to VCF
bcftools view delly_somatic.bcf > delly_somatic.vcf
Key Flags: -x hg38.exclude.tsv ignores telomeric and centromeric satellite repeats; delly filter -f somatic isolates high-confidence somatic variants.
📊

Probabilistic Multi-Evidence Structural Variant Calling

Probabilistic Smoove Automation

LUMPY provides a multi-evidence probabilistic framework integrating discordant paired-end reads, split reads, and depth metrics. Smoove wraps LUMPY with sambamba and SVtyper for automated, containerized cohort calling.

# 1. Run Smoove automated LUMPY pipeline
smoove call --outdir smoove_out/ \
  --name cohort_svs \
  --fasta GRCh38.fa \
  --genotype \
  sample1.dedup.bam sample2.dedup.bam

# 2. Joint cohort genotyping
smoove merge --name merged_cohort -f GRCh38.fa smoove_out/*.genotyped.vcf.gz
Key Flags: --genotype invokes SVtyper to assign homozygous/heterozygous genotypes; smoove merge joins multi-sample cohorts into a unified matrix.
🧩

Complex Rearrangement & Chromothripsis Breakpoint Assembly

Chromothripsis Graph Assembly

GRIDSS is a genomic rearrangement breakpoint caller that combines positional de Bruijn graph de novo assembly with split-read and paired-end evidence to resolve complex genomic rearrangements, gene fusions, and chromothripsis.

# 1. Run somatic tumor-normal GRIDSS breakpoint assembly
gridss -r GRCh38.fa \
  -o gridss_out.vcf.gz \
  -a gridss_assembly.bam \
  -t 16 \
  --jvmheap 30g \
  tumor.dedup.bam normal.dedup.bam

# 2. Extract somatic high-confidence breakends
gridss_somatic_filter \
  --input gridss_out.vcf.gz \
  --output gridss_somatic.vcf.gz
Key Flags: --jvmheap 30g allocates sufficient Java heap space for graph traversal; gridss_somatic_filter identifies true somatic breakends.
👃

The Long-Read Structural Variant Standard

Long-Read Benchmark Repeat Expansions

Sniffles2 is the benchmark long-read structural variant caller. It accurately resolves deletions, duplications, inversions, translocations, and nested insertions in complex repeats, including non-reference insertions and tandem repeat expansions.

# 1. Call SVs on PacBio HiFi or ONT BAM with repeat expansion profiling
sniffles \
  --input pacbio_aligned.bam \
  --vcf pacbio_svs.vcf.gz \
  --reference GRCh38.fa \
  --threads 16 \
  --tandem-repeats human_trf.bed \
  --minsupport 3

# 2. For multi-sample cohort joint calling, output SNF intermediate files:
# sniffles --input sample1.bam --snf sample1.snf
# sniffles --combine sample1.snf sample2.snf --vcf cohort.vcf.gz
Key Flags: --tandem-repeats human_trf.bed enables exact tandem repeat expansion profiling (Huntington, ALS loci); --minsupport 3 sets minimum supporting long reads.
⚡

Ultra-Fast Signature-Clustering Long-Read Caller

Signature Clustering High-Throughput

cuteSV utilizes a tailored signature-clustering algorithm to detect structural variations in third-generation sequencing data. It delivers top-tier F1 accuracy on HG002 benchmarks with low RAM consumption and fast runtimes.

# 1. Run cuteSV on Oxford Nanopore alignment
cuteSV ont_aligned.sorted.bam GRCh38.fa cutesv_out.vcf ./cutesv_work/ \
  --threads 16 \
  --min_support 3 \
  --min_size 50 \
  --max_size 100000 \
  --genotype

bgzip cutesv_out.vcf && tabix -p vcf cutesv_out.vcf.gz
Key Flags: --min_support 3 requires at least 3 supporting long reads; --min_size 50 focuses on canonical structural variants (>=50 bp); --genotype assigns diploid genotypes.
📉

Hybrid-Capture WES & Targeted Panel Copy Number

Exome & Panel CNVs Off-Target Profiling

CNVkit is a complete toolkit for inferring copy number alterations from targeted DNA sequencing (WES and cancer gene panels). It uses both on-target exonic reads and off-target non-specific reads to generate smooth, continuous coverage profiles.

# 1. Run batch CNVkit workflow with paired normal
cnvkit.py batch tumor.dedup.bam \
  --normal normal.dedup.bam \
  --targets exome_targets.bed \
  --fasta GRCh38.fa \
  --output-reference my_reference.cnn \
  --output-dir cnv_results/ \
  --diagram --scatter

# 2. Call discrete integer copy number states
cnvkit.py call cnv_results/tumor.cns -y -m threshold -o tumor.call.cns
Key Flags: --diagram generates a whole-genome ideogram showing gains and losses; --scatter produces bin-level log2 ratio scatter plots; call -m threshold rounds ratios to integer copy number.
📊

Tumor-Normal & Tumor-Only WGS/WES CNV/LOH Caller

Ploidy Assessment LOH & CNVs

Control-FREEC evaluates deep sequencing data to detect copy number alterations and loss of heterozygosity (LOH). It can run without a matched normal sample, automatically assessing baseline tumor ploidy and purity while normalizing for GC content and mappability.

# 1. Run Control-FREEC using configuration file
freec -conf freec_config.txt

# 2. Assess significance of identified CNV regions
cat << 'EOF' > evaluate_cnvs.R
library(rtracklayer)
# Freec p-value assignment and visual profile plotting
system("cat cnv_sample.bam_CNVs | assess_significance.R cnv_sample.bam_CNVs")
EOF
Rscript evaluate_cnvs.R
Key Flags: freec -conf accepts GC-profile and GEM mappability tracks; models aneuploidy and tumor heterogeneity automatically.
← Return to Home Hub
📦 Practice Datasets
🗺️ NGS Data Analysis Process & Workflow Architecture (High-Resolution)
⬇️ Download
NGS Analysis Process Graph Full View