A lightweight Python binding of the CMB Boltzmann code CLASS, with an emphasis on the routines that are important for large-scale structure calculations. The main modules of the CLASS code are exposed to the user via a Cython wrapper.
Installation instructions, examples, and API reference are availabe on ReadTheDocs: http://classylss.readthedocs.io/.
The package is lightweight and the only dependencies are:
- numpy
- cython
The CLASS code will automatically be downloaded and compiled, and is thus, not an external dependency for the user. However, the user will need a valid C compiler to compile the CLASS code. The version of CLASS compiled by the code is stored in the variable classylss.class_version
.
The package can be installed as part of the Anaconda package manager using
conda install -c bccp classylss
The package can also be installed via the pip command
pip install classylss
The package can be also be downloaded from github using
git clone https://github.com/nickhand/classylss.git
cd classylss
If CLASS
is not built succesfully, the user
can edit the default configuration variables in depends/class.cfg
, which are used
when building the CLASS
library.
To verify that the installation has succeeded, run:
import classylss
See the tests of the code in classylss/tests/
for examples of using each of the main CLASS modules.
Additional features of the CLASS code that are not yet implemented can be exposed via the Cython wrapper relatively easily. We encourage users to open up a GitHub issue with any feature requests.