(A)We need to have COSMOMC installed. This requires installation of WMAP-3year likelihood code (we need to use WMAP) which in turn requires installation of cfitsio, atlas, mkl and lapack. There is a very detailed description in COSMOMC Readme File.
(B) Once you have Cosmomc installed, there are a few routines you will have to change/add:
| Adding routines | Contain function | Description |
| iswdata.f90 | ReadISWDataset(isw_filename) | ReadISWDataset(isw_filename) reads in the ISW datafiles (they are in the ../data/ directory). |
| iswdata.f90 | IswLnLike() | IswLnLike() calculates the -Ln(likelihood) of ISW and also calls the redshift distribution code (aka bdndz_code) that not only produces the redshift distribution but also the weak lensing likelihood. |
| iswdata.f90 | bdndz_code | The bdndz_code is called from IswLnLike() routine to output not only the redshift distribution but also the weak lensing likelihood. Further information can be found in the README file in the downloadable package |
| lrg_pk.f90 | lrg_growl(CMB,z) | lrg_growl(CMB,z) calculates the growth function |
| lrg_pk.f90 | LRG_ComputePkData(Pk,eval) | LRG_ComputePkData(Pk,eval) calculates the 3D matter powerspectrum, but we use the function MatterPowerAt() in cmbtypes.f90 from CAMB instead. |
| lrg_2dCl.f90 | lrg_compute2dCl_Limber() | lrg_compute2dCl_Limber() calculates the linear ISW prediction with the limber approximation. |
| Change routines | in function | Line added/changed further description in README file in the downloadable package |
| calclike.f90 | GetLogLikePost(CMB, Info, inCls, HasCls) | Add "if (Use_ISW) GetLogLikePost = GetLogLikePost + IswLnLike(CMB,Info)" |
| calclike.f90 | GetLogLikePost(CMB, Info, inCls, HasCls) | Change from " if (Use_CMB .or. Use_LSS ) then" to " if (Use_CMB .or. Use_LSS .or. Use_ISW) then" |
| driver.F90 | SolveCosmology | Add " Use_ISW = Ini_Read_Logical('use_ISW',.true.) " after "Use_CMB = Ini_Read_Logical('use_CMB',.true.) " |
| driver.F90 | SolveCosmology | Add " if (Use_ISW) then call ReadISWDataset(isw_filename) endif" |
The output of the likelihood code is the ISW and Weak Lensing Likelihood combined. This combined likelihood is completely integrated into the total likelihood (or technically -Ln(Likelihood), depending on the datasets you decide to include in params.ini file) calculated in the integrated COSMOMC package.
Code Compilation
There are two compilations that should be done: compiling bdndz_code and the integrated COSMOMC code.
There are sample Makefiles in each of the directories (i.e. ./bdndz_code/ and ./source/). Please change "/u/shirley" to the appropriate home directory and choose appropriate compilers depending on the platform and availability of software packages.
Please cite the following papers if you use these codes: ISW paper and Weak lensing paper .
Please e-mail questions or details of any bugs to Shirley Ho.