Welcome to CosmoSIS.
CosmoSIS is a cosmological parameter estimation code. It is now at version 1.6
It is a framework for structuring cosmological parameter estimation in a way that eases re-usability, debugging, verifiability, and code sharing in the form of calculation modules.
It consolidates and connects together existing code for predicting cosmic observables, and makes mapping out experimental likelihoods with a range of different techniques much more accessible
CosmoSIS is described in Zuntz et al: http://arxiv.org/abs/1409.3409 - if you make use of it in your research, please cite that paper and include the URL of this repository in your acknowledgments. Thanks!
Sign up for the CosmoSIS announcements email list (for announcements by core team) by emailing firstname.lastname@example.org with the subject line and message text: subscribe cosmosis_messages
Sign up for the CosmoSIS users email list (for discussion among users) by emailing email@example.com with the subject line and message text: subscribe cosmosis_users
CosmoSIS needs a 64-bit operating system.
- Recommended: Automatic Installation on Scientific Linux / CentOS 6 and 7, and Ubuntu 14.04, 16.04 or 18.04 LTS
- Install on a Mac
- Install on Linux
- Automatic Installation on any OS using Docker (requires root)
- CosmoSIS at NERSC
Try some short demos
These demos illustrate basic cosmosis concepts in action.
These longer examples show realistic parameter constraint pipelines.
- Example A: Simple CosmoMC-like Metropolis-Hastings analysis for WMAP9
- Example B: Multinest analysis of CFHTLenS with intrinsic alignments
- Example C: Emcee analysis of an extreme mass cluster to constrain omega_m
- The DES Year 1 Likelihood
All the scientific code in CosmoSIS is organized into independent modules. CosmoSIS ships with a standard library of modules doing most standard cosmology calculations (stored in a separate repository), and if you want to build or modify a pipeline you can use them:
- Standard library modules that come with CosmoSIS
- Understanding modules
- Creating new modules
- Where to put your own modules
- Modifying CAMB - an example tutorial on merging a modified camb into CosmoSIS
A CosmoSIS run is specified with up two or three parameter files. The first two are required and the third (priors) is optional:
- Building your pipeline with the parameter file
- Setting input parameter ranges with the values file
- Adding priors with the priors file
[In development] The further postprocessing stage, to produce graphical plots of the results, may be specified entirely on the postprocess command-line, or preferably in a file:
CosmoSIS comes with a range of samplers suitable for different likelihoods spaces.
- test sampler Evaluate a single parameter set
- list sampler Re-run existing chain samples
- a-priori sampler [In development] Sample at points according to given distribution
- metropolis sampler Classic Metropolis-Hastings sampling
- importance sampler Importance sampling
- fisher sampler Fisher Matrices
- maxlike sampler Find the maximum likelihood using various methods in scipy
- gridmax sampler Naive grid maximum-posterior
- minuit sampler MPI-aware maxlike sampler from the ROOT package.
- emcee sampler Ensemble walker sampling
- kombine sampler Clustered KDE
- pmc sampler Adaptive Importance Sampling
- star sampler 1D slices in each dimension
## Helper tools
- Self-Updater Get a newer/older version of CosmoSIS
- Error reporter Create a full error report to help diagnose problems
- Module Creator Create a new project and collection of modules
- Module Downloader Download a module from an internet repository
- Repository checker Check for unsaved changes in all your module repositories
Running the programs