Bayesian Diversity Estimation Software
This web page contains links to the source code of the diversity estimation software used in Quince, Curtis and Sloan "Sample sizes and sequencing effort required to explore diverse microbial communities". This code can be used for academic purposes only and any publications resulting from applications of this software should cite the above article. If you found this software useful or would like some help installing or using it please e-mail me: Chris Quince.
Click the following link to download a zip file containing data files and source code:
The software currently only runs on Linux computers with a recent version of the Gnu Science Library installed. To install the software:
- Move the downloaded file to where you want to create the programs and type "unzip DiversityEstimates.zip". This will unpack the source code into a Directory tree.
- Move to the Lib directory by typing "cd DiversityEstimates/Lib" and create the common library with command "make". You may need to change the compiler flags in the makefile. In particular remove the flag "-m64" on 32 bit machines.
- Move to each of the four program directories (MetroLogNormal, MetroIG, MetroLogStudent, MetroSichel) with the command "cd ../$ProgramDirectory" and type make (after changing the makefile compiler flags). This will generate the four executables.
- Each executable (MetroLogNormal, MetroIG, MetroLogStudent, MetroSichel) fits a different abundance distribution (Log-normal, inverse Gaussian, log-Student's t, Sichel) respectively.
- The directory data contains the sample abundance distributions fitted in the article.
- Typing the executable name, e.g. "MetroIG" gives a list of command line arguments.
- First run the executable on a sample without MCMC sampling. This will perform a maximum likelihood fit using the Simplex algorithm. For instance for the GOS data type "./MetroIG -in GOS.sample -out GOS".
- Then run a short trial MCMC run of 1000 iterations with guessed std. dev.s for the proposal distributions say about 10% of the parameter values e.g. "./MetroIG -in GOS.sample -out GOS -s 1000 -sigmaA 0.05 -sigmaB 0.3 -sigmaS 200".
- Adjust the std. dev.s untill the acceptance ratios are about 0.5. Then perform a longer run of say 250,000 iterations: "./MetroIG -in GOS.sample -out GOS -s 250000 -sigmaA 0.01 -sigmaB 0.1 -sigmaS 100"
- Three data files with posterior samples for three different sets of parameter values will be generated, in the above case "GOS_0.sample", "GOS_1.sample", "GOS_2.sample".