diff --git a/docs/overview.md b/docs/overview.md old mode 100644 new mode 100755 index 14d71e4..b0ba0c5 --- a/docs/overview.md +++ b/docs/overview.md @@ -1,13 +1,13 @@ # Overview -MIDAS is an integrated pipeline that leverages >30,000 reference genomes to estimate bacterial species abundance and strain-level genomic variation, including gene content and SNPs, from shotgun metagnomes. Given a metagenome, MIDAS produces the following: +MIDAS is an integrated pipeline that leverages >30,000 reference genomes to estimate bacterial species abundance and strain-level genomic variation, including gene content and SNPs, from shotgun metagenomes. Given a metagenome, MIDAS produces the following: * Species relative abundance profile * Nucleotide variants in abundant species (e.g. >10x depth) * Gene copy number variants in abundant species (e.g. >5x depth) ## How it works - + Reference database: MIDAS relies on a reference database that contains 31,007 bacterial genomes. These genomes were hierarchically clustered into 5,952 species groups based on the sequence similarity between genomes at 30 universal genes. For each species, we extracted three genomic features: 15 universal-single-copy genes, a representative genome, and a pan-genome [...read more](ref_db.md). @@ -24,15 +24,15 @@ MIDAS is an integrated pipeline that leverages >30,000 reference genomes to esti Before going through the trouble of installing and running the program, it's worth considering these things: 1. MIDAS requires at least one sequenced genome to quantify the abundance or population genomics of a species. Most species from the human microbiome meet this critereon, but species from other communities may not. For poorly characterized communities, try [building your own reference database](build_db.md). -2. MIDAS does NOT estimate the abundance of strains. It simply identifies species abundance and strain-level genomic variants (SNPs and CNVs). -3. Strain-level phylogenetic trees are based on consensus alleles. This means that there will be only one leaf per species per sample. These trees are accurate when within-sample intra-species heterogentity is low (i.e. one dominant strain) but may not be accurate when there is a mixture of two or more common strains. You can use SNPs to quantify the level of within-sample heterogeneity. -4. The pan-genomes of many species are imcomplete. If you're concerned about this, try [building your own reference database](build_db.md). +2. MIDAS does NOT estimate the abundance of strains. It simply identifies species abundance and strain-level genomic variants (SNPs and CNVs). +3. Strain-level phylogenetic trees are based on consensus alleles. This means that there will be only one leaf per species per sample. These trees are accurate when within-sample intra-species heterogeneity is low (i.e. one dominant strain) but may not be accurate when there is a mixture of two or more common strains. You can use SNPs to quantify the level of within-sample heterogeneity. +4. The pan-genomes of many species are incomplete. If you're concerned about this, try [building your own reference database](build_db.md). 5. The default MIDAS database is 17Gb and requires 34Gb of free space to decompress ## Examples -Comparative genomics of Bacteroides ovatus strains across host microbiomes +Comparative genomics of Bacteroides ovatus strains across host microbiomes A) Presence or absence of genes in the Bacteroides ovatus pangenome across human faecal metagenomes. Column colors indicate whether a gene is core (blue; occurs in >95% of samples), auxiliary (red; occurs in 1-95% of samples ), or absent (green; occurs in < 1% of samples). B) Gene set enrichment analysis identifies functions overrepresented in the core genome, auxiliary genome, and genes that only occur in reference genomes. ## Next step -[Install or update software](docs/install.md) +[Install or update software](install.md) diff --git a/test/test_midas.py b/test/test_midas.py index 807399c..cc728ef 100755 --- a/test/test_midas.py +++ b/test/test_midas.py @@ -6,6 +6,7 @@ import subprocess import sys from distutils.version import StrictVersion +from multiprocessing import cpu_count def run(command): """ run shell command & return unix exit code """ @@ -147,7 +148,7 @@ class _15_BuildDB(unittest.TestCase): def test_class(self): command = 'tar -zxvf genomes.tar.gz' err, code = run(command) - command = 'build_midas_db.py genomes genomes.mapfile db --threads 10' + command = 'build_midas_db.py genomes genomes.mapfile db --threads ' + str(cpu_count()) err, code = run(command) self.assertTrue(code==0, msg=err)