Patrick Valageas web page



Probability distribution function of the density


This is the Fortran 90 code used in the paper astro-ph/0403593 to compute the probability distribution function of the density (pdf). It is split in two modules:

  • Module "phizetaP.f90"
    This module computes the cumulant generating functions and the pdf P(\rho) where \rho=1+\delta is the overdensity in a spherical cell of physical radius R.
  • Module "dens.f90"
    This module computes the curve P(\rho) for a given redshift z and physical scale R. It uses the module "phizetaP.f90".


The main program, contained in the file "dens.f90", calls the subroutine "calPrho(z,R)" which computes P(\rho) from the model described in astro-ph/0403593 as well as the prediction from the lognormal approximation. The result is written in the file "PrhoR1z0.dat".

Before it computes P(\rho) for various values of \rho, the subroutine "calPrho(z,R)" calls "nspecRz(R,z)" which initializes several parameters for the redshift z and the physical scale R. The subroutine "nspecRz(R,z)", located near the beginning of the module "phizetaP.f90", needs three functions which must be supplied by the user:

  • "nsig(R,z)": gives the local slope "n" of the linear power-spectrum at the physical scale R. It is defined from the logarithmic slope at scale R of the linear variance \sigma^2.
  • "Xir(R,z)": gives the non-linear variance <\delta^2> at the physical scale R and redshift z.
  • "XirL(R,z)": gives the linear variance <\delta_L^2> at the physical scale R and redshift z (i.e. \sigma^2).

Then, the subroutine "calPrho(z,R)" computes P(\rho) for various values of \rho by calling the function "Prho(rho)" contained in the module "phizetaP.f90". In the files available for download the calls to the three functions "nsig(R,z),Xir(R,z),XirL(R,z)" are commented out so that the code computes P(\rho) for the case l=1,z=0 studied in the article astro-ph/0403593.

In case of problems, suggestions or comments, ..., you can send me an e-mail.

Back to main page

 

Retour en haut