Module to include COSMOS 3D weak lensing data in CosmoMC

Installing the new modules in your version of CosmoMC
Further modifications for simultaneously using weak lensing and Lyman-α data
Referring to this code

Constraints on cosmological parameters from this Cosmo-MC module


This page describes the installation of the modules WeakLen (file 'WeakLen.f90') and Angular (file 'AngularCorr.f90'), written by Julien Lesgourgues (LAPTH, Annecy), to be used with the public MCMC code CosmoMC by Sarah Bridle and Antony Lewis.

The modules WeakLen and Angular extend CosmoMC to incorporate weak lensing (cosmic shear) data into the analysis. The modules were written for the paper "A combined analysis of Lyman-α forest, 3D Weak Lensing and WMAP year three data" by Lesgourgues et al., JCAP 11 (2007) 8. They are designed and optimized for the HST COSMOS data released in "COSMOS: 3D weak lensing and the growth of structure" by Massey et al., ApJS 172 (2007) 239. The COSMOS data is included. However, the modules could also be easily adapted to other weak lensing data.

If it is a while since the papers were published, it might be worth checking with the authors for any subsequent updates to code or lensing data.


Download cosmos.tar.gz. If you expand it inside your cosmomc/ directory via "tar -zxvf cosmos.tar.gz" you will get the files


You may be asked whether you want to overwrite the existing file source/WeakLen.f90. In the current distribution of CosmoMC (October 2006), this existing file is essentially empty: you can safely overwrite it. We have not included documentation for the fortan code, but the files contain embedded explanatory comments.

Installing the new modules in your version of CosmoMC

If you have CosmoMC installed (we refer here to the version of October 2006), you have to make a few simple modifications in order to make it compatible with the two new source files source/WeakLen.f90 and source/AngularCorr.f90:

You are done! In principle you should be able to compile as usual ( cd camb, make clean, make all, cd ../source, make clean, make cosmomc, cd ..) and run with ./cosmomc params.ini. If you start in chatty mode (Feedback = 2) the new module will output some useful information if use_WeakLen = T.

Further modifications for simultaneously using weak lensing and Lyman-α data

When using weak lensing data (use_WeakLen = T) it is crucial to include non-linear corrections by setting also nonlinear_pk = T. However, some other data sets require nonlinear_pk to be set to F. This is the case for current Lyman-alpha data modules, which provide constraints on the linear power spectrum (non linear corrections are accounted for earlier during the analysis pipeline of Lyman-alpha raw data). This raises a contradiction which is not difficult to solve. Our solution is to duplicate various subroutines in camb/module.f90 and source/cmbtypes.f90in order to define two independent functions:
function MatterPowerAt(T,kh) ! non-linear matter power spectrum
function MatterPowerLinearAt(T,kh) ! linear matter power spectrum
Once this is done, the trick is simply to call MatterPowerLinearAt(T,kh) in the Lyman-alpha module(s), and MatterPowerAt(T,kh) in the other modules (weak lensing and galaxy power spectrum). In order to see the list of necessary changes, you can:

Reference to this code — publishing

If you use the code and publish results, please refer to having used this code and cite the paper JCAP 11 (2007) 8.

Last updated by Richard Massey on 2nd May 2008.

Valid HTML 4.01!

Valid CSS!