-
Notifications
You must be signed in to change notification settings - Fork 0
Outputs
This document describes the outputs generated by PoODLE.
All paths described below are relative to the pipeline output directory specified with:
--outdir
Results are organized by species and cluster:
📁 <outdir>
├── 📁 <Species>
│ └── 📁 <cluster_id>
│ ├── 📁 snippy_run
│ │ ├── 📁 <sample>
│ │ │ ├── 📄 <sample>.aligned.fa
│ │ │ ├── 📄 <sample>.consensus.fa
│ │ │ ├── 📄 <sample>.consensus.subs.fa
│ │ │ ├── 📄 <sample>.csv
│ │ │ ├── 📄 <sample>.log
│ │ │ ├── 📄 <sample>.tab
│ │ │ ├── 📄 <sample>.txt
│ │ │ ├── 📄 <sample>.vcf
│ ├── 📁 snippy_core
│ │ ├── 📄 <Species>_<cluster_id>_clean.full.aln
│ │ ├── 📄 <Species>_<cluster_id>_dist.tsv
│ │ ├── 📄 <Species>_<cluster_id>.aln
│ │ ├── 📄 <Species>_<cluster_id>.full.aln
│ │ ├── 📄 <Species>_<cluster_id>.iqtree
│ │ ├── 📄 <Species>_<cluster_id>.nwk
│ │ ├── 📄 <Species>_<cluster_id>.tab
│ │ ├── 📄 <Species>_<cluster_id>.tre
│ │ ├── 📄 <Species>_<cluster_id>.txt
│ │ └── 📄 <Species>_<cluster_id>.vcf
│ ├── 📁 gubbins
│ │ ├── 📄 <Species>_<cluster_id>_gubbins_dist.tsv
│ │ ├── 📄 <Species>_<cluster_id>_gubbins.iqtree
│ │ ├── 📄 <Species>_<cluster_id>_gubbins.nwk
│ │ ├── 📄 <Species>_<cluster_id>_gubbins.iqtree
│ │ ├── 📄 <Species>_<cluster_id>_gubbins.tre
│ │ ├── 📄 <Species>_<cluster_id>_snp-sites.fna
│ │ ├── 📄 <Species>_<cluster_id>.branch_base_reconstruction.embl
│ │ ├── 📄 <Species>_<cluster_id>.filtered_plymorphic_sites.fasta
│ │ ├── 📄 <Species>_<cluster_id>.filtered_plymorphic_sites.phylip
│ │ ├── 📄 <Species>_<cluster_id>.final_tree.tre
│ │ ├── 📄 <Species>_<cluster_id>.node_labelled.final_tree.tre
│ │ ├── 📄 <Species>_<cluster_id>.per_branch_statistics.csv
│ │ ├── 📄 <Species>_<cluster_id>.recombination_predictions.embl
│ │ ├── 📄 <Species>_<cluster_id>.recombination_predictions.gff
│ │ └── 📄 <Species>_<cluster_id>.summary_of_snp_distribution.vcf
│ ├── 📁 panaroo
│ │ ├── 📄 <Species>_<cluster_id>_gene_presence_absence_dist.tsv
│ │ ├── 📄 <Species>_<cluster_id>_gene_presence_absence_roary.csv
│ │ ├── 📄 <Species>_<cluster_id>_gene_presence_absence.Rtab
│ │ └── 📄 <Species>_<cluster_id>_summary_statistics.txt
│ ├── 📁 mashtree
│ │ ├── 📄 <Species>_<cluster_id>.dnd
│ │ └── 📄 <Species>_<cluster_id>.tsv
│ ├── 📁 linkages
│ │ ├── 📄 <Species>_<cluster_id>_snippy_linkages.csv
│ │ └── 📄 <Species>_<cluster_id>_gubbins_linkages.csv
│ └── 📄 <Species>_<cluster_id>.html
└── 📁 pipeline_info
├── 📄 execution_report_<date_time>.html
├── 📄 execution_timeline_<date_time>.html
├── 📄 execution_trace_<date_time>.txt
├── 📄 pipeline_dag_<date_time>.html
├── 📄 samplesheet.valid.csv
└── 📄 software_versions.yml
PoODLE generates several output files to support surveillance and linkage interpretation.
File:
<Species>_<cluster_id>_<snippy|gubbins>_linkages.csv
This file classifies isolate pairs based on SNP distance thresholds commonly used in outbreak investigations.
| Column | Description |
|---|---|
sample |
Sample identifier |
species |
Species name |
cluster_id |
Cluster identifier |
ref_genome_fraction |
Percentage of reference genome covered |
ref_alignment_qc |
Alignment quality (PASS / WARN / FAIL) |
min_dist |
Minimum SNP distance |
strong_linkages |
0–10 SNPs |
intermediate_linkages |
11–40 SNPs |
lineage_level |
41–150 SNPs |
sample,species,cluster_id,ref_genome_fraction,ref_alignment_qc,min_dist,strong_linkages,intermediate_linkages,lineage_level
sample_1,Escherichia_coli,cluster_1,0.9918869199461934,PASS,8,sample_2 (8),sample_3 (11),None
sample_2,Escherichia_coli,cluster_1,0.9872359975132442,PASS,8,sample_1 (8),sample_3 (11),None
sample_3,Escherichia_coli,cluster_1,0.9636578173863068,PASS,11,None,"sample_1 (11), sample_2 (11)",NoneAlignment QC thresholds:
| Status | Reference coverage |
|---|---|
| PASS | ≥ 95% |
| WARN | 90–94.9% |
| FAIL | < 90% |
Warning
Low reference coverage may indicate:
- an incorrect or poorly matched reference genome
- mis-clustered samples
- distantly related isolates
- low sequencing depth or poor assembly quality
- reference-specific accessory sequence, such as MGEs, prophages, plasmid-derived regions, or genomic islands, that is absent from most samples and may artificially reduce reference coverage; check the pangenome profile, reference annotation, and expected genome size for the species
Important
Samples with FAIL alignment QC should be removed from the cluster before rerunning the analysis. To do this:
-
Remove the sample from the input sample sheet (e.g.
manifest.csv) -
Remove the sample snippy-results directory:
rm -rf <outdir>/<species>/<cluster_id>/snippy_run/<failed_sample>
-
Re-run PoODLE
Tip
If many samples show WARN or FAIL alignment QC, consider:
- selecting a different reference genome
- splitting the cluster into smaller sub-clusters
Using a reference genome from within the cluster is strongly recommended, as it helps maximize core genome size and improves SNP comparability.
File:
<Species>_<cluster_id>.html
The interactive report contains:
- phylogenetic trees
- SNP distance matrices
- pangenome heatmaps
- methods




Detailed tool outputs are stored in subdirectories.
Snippy is used for rapid bacterial variant calling and core genome alignment. The outputs include variant annotations, alignments, and detailed reports for each sample.
Directory:
snippy_run/<sample>/
Files
| File | Description |
|---|---|
<sample>.aligned.fa |
Reference alignment |
<sample>.consensus.fa |
Sample consensus sequence |
<sample>.consensus.subs.fa |
Substitutions-only consensus sequence |
<sample>.csv |
Detailed variant table |
<sample>.log |
Snippy execution log |
<sample>.tab |
Variant summary |
<sample>.txt |
Additional information or logs. |
<sample>.vcf |
Variant calls |
These files summarize the core genome alignment and phylogenetic analysis for each cluster. The results include SNP distances, reference-based alignments, and tree files for visualization and downstream analyses.
Directory:
snippy_core/
Files
| File | Description |
|---|---|
<Species>_<cluster_id>_clean.full.aln |
Cleaned full genome alignment. |
<Species>_<cluster_id>_constant-sites.txt |
Number of ACGT (used to adjust tree branch length). |
<Species>_<cluster_id>_dist.tsv |
SNP distance matrix |
<Species>_<cluster_id>.aln |
Core SNP alignment |
<Species>_<cluster_id>_full.aln |
Full genome alignment |
<Species>_<cluster_id>.iqtree |
Detailed IQ-TREE output file containing model parameters, likelihood scores, and phylogenetic statistics. |
<Species>_<cluster_id>.nwk |
Phylogenetic tree in Newick format |
<Species>_<cluster_id>.tab |
Summary of core genome variants |
<Species>_<cluster_id>.tre |
Midpoint rooted tree in Newick format (reference tip dropped) |
<Species>_<cluster_id>.txt |
Summary of core genome aligntment |
<Species>_<cluster_id>.vcf |
Core genome variants |
Outputs from recombination filtering and phylogenetic reconstruction, including:
- recombination predictions
- filtered polymorphic sites
- recombination-corrected phylogenetic trees
- branch statistics
Directory:
gubbins/
Files
| File | Description |
|---|---|
<Species>_<cluster_id>_gubbins_dist.tsv |
Pairwise SNP distance matrix between isolates after recombination filtering. |
<Species>_<cluster_id>_gubbins.iqtree |
Detailed IQ-TREE output file containing model parameters, likelihood scores, and phylogenetic statistics. |
<Species>_<cluster_id>_gubbins.nwk |
Phylogenetic tree in Newick format generated with iqtree2 |
<Species>_<cluster_id>_gubbins.tre |
Midpoint rooted tree file (reference tip dropped) |
<Species>_<cluster_id>_snp-sites.fna |
Alignment of SNP sites extracted from filtered polymoprphic sites |
<Species>_<cluster_id>.branch_base_reconstruction.embl |
EMBL-format file containing reconstructed ancestral sequences along tree branches. |
<Species>_<cluster_id>.filtered_polymorphic_sites.fasta |
FASTA alignment of polymorphic sites after filtering recombination regions. |
<Species>_<cluster_id>.filtered_polymorphic_sites.phylip |
Same filtered polymorphic alignment in PHYLIP format for phylogenetic analyses. |
<Species>_<cluster_id>.final_tree.tre |
Final recombination-corrected phylogenetic tree generated by gubbins. |
<Species>_<cluster_id>.node_labelled.final_tree.tre |
Final tree with internal nodes labeled (useful for mapping mutations or events). |
<Species>_<cluster_id>.per_branch_statistics.csv |
CSV file summarizing recombination and mutation statistics for each branch. |
<Species>_<cluster_id>.recombination_predictions.embl |
EMBL-format annotations of predicted recombination regions. |
<Species>_<cluster_id>.recombination_predictions.gff |
GFF file describing recombination regions with genomic coordinates. |
<Species>_<cluster_id>.summary_of_snp_distribution.vcf |
VCF file summarizing SNP positions and their distribution across samples. |
Panaroo performs pan-genome analysis. The output includes gene presence-absence matrices, distance matrices, and summary statistics.
Directory:
panaroo/
Files
| File | Description |
|---|---|
<Species>_<cluster_id>_gene_presence_absence_roary.csv |
Gene presence/absence table with descriptions |
<Species>_<cluster_id>_gene_presence_absence.Rtab |
Gene presence/absence table (binary) |
<Species>_<cluster_id>_gene_presence_dist.tsv |
Gene distance matrix |
<Species>_<cluster_id>_summary_statistics.txt |
Pangenome statistics |
Mashtree calculates Mash distances and generates whole genome distance trees.
Directory:
mashtree/
Files
| File | Description |
|---|---|
<Species>_<cluster_id>.dnd |
Mash-based distance tree |
<Species>_<cluster_id>.tsv |
Mash distance matrix |
Directory:
pipeline_info/
This directory contains Nextflow execution reports.
Files
| File | Description |
|---|---|
execution_report.html |
Pipeline execution summary |
execution_timeline.html |
Task timeline |
execution_trace.txt |
Detailed resource usage |
pipeline_dag.svg |
Workflow graph |
software_versions.yml |
Software versions used |
These files are useful for reproducibility and troubleshooting.