Cosmological Perturbation Theory

The links below provide a tar-ball and README file for Copter, a C++ class library written by Jordan Carlson to compute predictions for different cosmological perturbation theory schemes. The name Copter loosely stands for cosmological perturbation theory. Specifically, Copter includes code for computing statistical observables in the large-scale structure of matter using various forms of perturbation theory, including linear theory, standard perturbation theory, renormalized perturbation theory, and many others.

A description of the methods and some results can be found in Carlson, White & Padmanabhan [Phys. Rev. D80(2009)043531, arxiv:0905:0479] and we ask that a reference to this paper be given if you use this package in a publication.

Copter has been extended to include neutrinos and dynamical dark energy models arxiv:1309.5872 and the code is available here.

A C++ code which computes convolution Lagrangian perturbation theory can be found here.

Once unpacked the code should compile with the standard:

./configure --prefix=
make install
on any Unix machine. Copter is written in C++, and you'll need a relatively modern C++ compiler (e.g. g++). Copter makes use of the GNU Scientific Library (GSL), which you will need to have installed somewhere on your system. It also makes use of parts of the Boost C++ library, but the relevant header files are included with Copter (in the src/boost directory), so you do not need to install it yourself. If you want to build the Python bindings you'll also need a recent version of SWIG (usually located at /usr/bin/swig), the Python development headers (usually found in /usr/include/pythonM.N), and Numpy development headers (usually found in /usr/include/numpy). The provided configure script should find the relevant files automatically.

There is only minimal documentation at present. The additional program rpt2.cpp, also linked below, gives an idea of how to use the code. After installing Copter, you would compile this program with something like:

g++ -I/include -L/lib -lcopter  rpt2.cpp  -o rpt2

The library reads cosmology data either from your current directory or from installdir/share/Copter/. If you want to run the codes with your own cosmology you'll need to create your own .ini file and transfer function file (hopefully you can deduce the format from the pre-installed examples).

If you have any feedback or suggestions for improvement, please contact Jordan Carlson.

This package was developed with partial support from the NSF.

NameSize (kB)Last modified
copter-0.8.0.tar.gz 9702009/05/19
copter-0.8.5.tar.gz 10072011/03/03
copter-0.8.7.tar.gz 9442012/01/25
README 32009/05/19
rpt2.cpp 22009/05/13

Return to Martin's home page

Last modified Tue Sep 4 10:27:41 2012