
This course provides comprehensive training in genome sequencing, assembly, annotation, and variant analysis. Students process real NGS data through a complete pipeline — from raw FASTQ files to annotated variants — using industry-standard tools. The course covers both prokaryotic and eukaryotic genomes, as well as comparative genomics approaches.
1. Explain sequencing-by-synthesis (Illumina), long-read technologies (PacBio, Oxford Nanopore), and their data characteristics.
2. Perform quality control on FASTQ files and apply adapter trimming with Trimmomatic.
3. Align reads to a reference genome using BWA-MEM2 and process alignments with Samtools.
4. Call SNPs and indels using GATK HaplotypeCaller following GATK best practices.
5. Assemble a prokaryotic genome de novo with SPAdes and annotate it with Prokka.
• Sequencing-by-synthesis: cluster generation, bridge amplification, reversible terminators, base calling.
• Long-read technologies: PacBio SMRT (zero-mode waveguides), Oxford Nanopore (ionic current through pores), error characteristics.
• FASTQ format: sequence + quality per base (Phred score, ASCII encoding); paired-end vs. single-end.
• SAM/BAM format: header, read name, FLAG bits, CIGAR string, mapping quality; sorted/indexed BAM.
• VCF format: CHROM, POS, ID, REF, ALT, QUAL, FILTER, INFO, FORMAT, genotype fields.
• FastQC metrics: per-base quality, GC content distribution, adapter contamination, duplicate rate.
• Trimmomatic: ILLUMINACLIP, SLIDINGWINDOW, LEADING, TRAILING, MINLEN parameters.
• BWA-MEM2: Burrows-Wheeler Aligner algorithm; read groups; alignment statistics.
• Samtools: view, sort, index, flagstat, depth, mpileup operations.
• Picard: MarkDuplicates; CollectAlignmentSummaryMetrics.
• GATK HaplotypeCaller: local de novo assembly of haplotypes in active regions; PairHMM likelihood model.
• GVCF mode for joint calling: multiple samples; CombineGVCFs → GenotypeGVCFs.
• Variant filtering: hard filtering vs. VQSR (Variant Quality Score Recalibration); FILTER field meanings.
• Variant annotation: ANNOVAR, SnpEff — functional consequence, population frequency (gnomAD), clinical significance (ClinVar).
• De novo assembly strategies: de Bruijn graph (SPAdes, Velvet), overlap-layout-consensus (Canu), hybrid assembly (Unicycler).
• Assembly QC: QUAST metrics (N50, L50, number of contigs, misassemblies); BUSCO completeness.
• Prokaryotic genome annotation: Prokka pipeline — tRNA (Aragorn), rRNA (RNAmmer), CDS (Prodigal), gene naming (BLAST against UniProt).
• Comparative genomics: Roary (pangenome), Mauve (whole-genome alignment), OrthoFinder (orthologue detection).
• IGV (Integrative Genomics Viewer): loading BAM, VCF, BED, GTF tracks; navigating variants; snapshot export.
• Genome browsers: UCSC, Ensembl — track hubs, custom annotations.
• Synteny analysis: MCScan, SynMap — visualising collinear blocks between genomes.
• Pangenome concepts: core genome, accessory genome, unique genes; Roary pan_genome_results interpretation.
🔬 Hands-On Lab: Complete NGS Variant Calling Pipeline
Step 1: Download sample Illumina paired-end FASTQ files (use subset of NA12878 from GIAB): wget -O sample_R1.fastq.gz [URL]
Step 2: Run FastQC: fastqc sample_R1.fastq.gz sample_R2.fastq.gz -o qc_results/
Step 3: Trim adapters: trimmomatic PE sample_R1.fastq.gz sample_R2.fastq.gz R1_trimmed.fastq.gz R1_unpaired.fastq.gz R2_trimmed.fastq.gz R2_unpaired.fastq.gz ILLUMINACLIP:TruSeq3-PE.fa:2:30:10 SLIDINGWINDOW:4:20 MINLEN:36
Step 4: Align to hg38: bwa mem -R "@RG\tID:sample\tSM:sample\tPL:ILLUMINA" hg38.fa R1_trimmed.fastq.gz R2_trimmed.fastq.gz | samtools sort -o sample.sorted.bam; samtools index sample.sorted.bam
Step 5: Mark duplicates: gatk MarkDuplicates -I sample.sorted.bam -O sample.md.bam -M metrics.txt
Step 6: Call variants: gatk HaplotypeCaller -R hg38.fa -I sample.md.bam -O variants.g.vcf.gz -ERC GVCF
Step 7: Genotype: gatk GenotypeGVCFs -R hg38.fa -V variants.g.vcf.gz -O final.vcf.gz
Step 8: Visualise in IGV — find 3 SNPs and 1 indel in the region, explain each CIGAR string