Installation
CCL can be installed from pip
, conda
, or directly from source.
It is configured to install most of its requirements automatically. However, if
you want to use CCL with Boltzmann codes like CLASS
or CAMB
, carry out
perturbation theory calculations with FAST-PT
or velocileptors
, or make
use some of the emulators implemented, you will need to make sure these packages
are installed as well. A list of all current alternative dependencies can be
found here.
See the instructions for Getting a Boltzmann Code, Getting PT packages, and
Getting emulators below.
CCL works on Linux or Mac OS. Windows installation is not supported.
Once installed, you can take CCL for a spin by following the Quickstart instructions.
With conda
Installing CCL with conda
will also install a copy of pycamb
, the
Python
wrapper for CAMB
in your environment.
$ conda install -c conda-forge pyccl
With pip
The PyPi installation will actually build a new copy of CCL from source as
the code is installed. In order to do this, you will need CMake
installed
on your system. See the instructions below for Getting CMake.
Once you have CMake
, simply run:
$ pip install pyccl
Google Colab
To install pyccl
on https://colab.research.google.com then one way is the following
!pip install -q condacolab
import condacolab
condacolab.install()
!mamba install pyccl
Getting a Boltzmann Code
In order to use CCL with a Boltzmann code, you will need the Python
wrappers
for either CLASS
or CAMB
.
CLASS
In order to use CCL with CLASS
, you need to install the CLASS
Python
wrapper classy
. See their instructions
here.
Note that you may need to edit the Makefile
in the CLASS
repo to work
with your system. Please report any installation issues to the CLASS
developers
on their issues tracker.
CAMB
If you are working in a conda
environment, then CAMB
is available via
$ conda install -c conda-forge camb
An installation with pip
should work as well. See the CAMB
repo for more details. Note that if you installed CCL with conda
, camb
should already be in your environment.
ISiTGR
In order to use CCL with ISiTGR
, you need to install the ISiTGR
Python
wrapper isitgr
with:
$ pip install isitgr [–user]
See further instructions here.
If you are working in a conda
environment, then ISiTGR
is also available via
$ conda install -c conda-forge isitgr
Note that if you installed CCL with conda
, isitgr
should already be in your environment.
Getting PT packages
Getting FAST-PT
To use FAST-PT
with CCL, you can install it with:
$ pip install fast-pt
Note the hyphen in the package name! You can also get it directly from the FAST-PT repo.
Getting velocileptors
To use velocileptors
with CCL, you can install it with:
$ python3 -m pip install -v git+https://github.com/sfschen/velocileptors
See full instructions in the velocileptors
github repo.
Getting emulators
The following emulators with external dependencies are currently supported in CCL.
BACCO emu
Source code. Installation:
$ python3 -m pip install baccoemu
MiraTitan mass function emulator
Source code. Installation:
$ python3 -m pip install MiraTitanHMFemulator
Getting CMake
The pip
installation of CCL requires that CMake
is installed on your
system. CMake
is available from package managers like apt-get
and
homebrew
. You need version 3.2 or higher.
Ubuntu
$ sudo apt-get install cmake
OS X
On MacOS X you can either install with a DMG from this page or with a package manager such as homebrew, MacPorts, or Fink.
For instance with homebrew
, you can run
$ brew install cmake
Known Installation Issues
For some Mac OSX versions, the standard
C
headers are not in the usual spot, resulting in an error offatal error: 'stdio.h' file not found
. This can be resolved with the command:$ sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
which will install all the required headers into
/usr/include
.On Mac OSX 10.15 or greater, this patch is no longer included. Instead, you can manually add the location of required headers to your CPATH by running the following, or adding to your
.bash_profile
:$ export CPATH="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include"
Newer versions of Xcode do not automatically have the required command line tools installed. This can be done from the command line:
$ sudo xcode-select --install $ sudo xcodebuild -license
Uninstalling CCL
CCL
can be uninstalled using the uninstallation functionality of the
package manager (i.e., conda
or pip
) you used to install it. When in doubt,
first try with conda
and then try with pip
. In either case, the command is
$ [conda|pip] uninstall pyccl