CAMB: Matter Power Spectrum of Bump-like Dark Energy models

Use of Cobaya. camb, CLASS, cosmomc, compilers, etc.
Post Reply
gongbo zhao
Posts: 73
Joined: January 04 2005
Affiliation: NAOC
Contact:

CAMB: Matter Power Spectrum of Bump-like Dark Energy models

Post by gongbo zhao » March 14 2007

Dear all,
I modified CAMB and ran it to calculate P(k) for Bump-like dark energy models. This modification is simlpy extending CAMB to calculate dynamical dark energy models. However, when w(z) evolves rapidly at low redshift, P(k)
gives wrong results. P(k) oscillates rapidly at small k. I have tried to use high precision option in params.ini, say, set accuracy_boost=3. This resolves the problem to some extent, yet cannot solve it completely.
I tracked the code and found this numerical error may probably stem from dverk. I rise the precision, say, set tol1=tol1/300, but cannot solve the problem completely.
Has anyone worked on such models? Is it a simple method to calculate P(k) of some extreme models accurately? Thanks very much.

Cheers,
Gong-Bo

PS. Bump-like dark energy models are those models whose equation of state evolves rapidly and showed some bumps and digs in w(z). For details, see astro-ph/0605366. In this paper the bump occurs at higher redshift so there's no such problems.

Features in Dark Energy Equation of State and Modulations in the Hubble Diagram.
Published in Phys.Rev.D74:083521,2006.
e-Print Archive: astro-ph/0605366

Zhiqi Huang
Posts: 12
Joined: April 22 2006
Affiliation: Sun Yat-Sen University
Contact:

CAMB: Matter Power Spectrum of Bump-like Dark Energy models

Post by Zhiqi Huang » March 23 2007

Did you include the dark energy perturbation? If yes, did you add the w' term?

I am running cosmomc for time-varying w models, too. But I didn't see anything wrong.

There is a tiny BUG in the following function, which I already emailed to Antony.

Code: Select all

!!===== codes from cosmomc: cmbtypes.f90 ==============
   function MatterPowerAt_Z(T,kh,z)
     !get matter power spectrum at z at kh = k/h by interpolation from 
stored values

     real, intent(in) :: kh
     Type(CosmoTheory) T
     real MatterPowerAt_Z
     real x, d, z, y, dz, mup, mdn
     real matter_power_dlnz
     integer i, iz

     matter_power_dlnz = log(matter_power_maxz+1) / 
(matter_power_lnzsteps -1 + 1e-13)
     y = log(1.+ z) / matter_power_dlnz

     if (z > matter_power_maxz ) then
        write (*,*) ' z out of bounds in MatterPowerAt_Z (',z,')'
        stop
     end if
     x = log(kh/matter_power_minkh) / matter_power_dlnkh
     if &#40;x < 0 .or. x >= num_matter_power-1&#41; then
        write &#40;*,*&#41; ' k/h out of bounds in MatterPowerAt_Z &#40;',kh,'&#41;'
        stop
     end if

     iz = int&#40;y&#41;
!!=============== start debug ===========
!! should add the following codes
      if&#40;iz.eq.matter_power_lnsteps-1&#41; iz=iz-1
!! because if z is very close or equal to matter_power_maxz, then
!!       iz=int&#40;y&#41;=matter_power_lnsteps-1,
!!       iz+2 is an index that out of range, the routine will
!!  read some unpredicted numbers from the memory!
!!=============== end debug ========
     dz = y - iz

     i = int&#40;x&#41;
     d = x - i

     mup = log&#40;T%matter_power&#40;i+1,iz+2&#41;&#41;*&#40;1-d&#41; + 
log&#40;T%matter_power&#40;i+2,iz+2&#41;&#41;*d
     mdn = log&#40;T%matter_power&#40;i+1,iz+1&#41;&#41;*&#40;1-d&#41; + 
log&#40;T%matter_power&#40;i+2,iz+1&#41;&#41;*d

     MatterPowerAt_Z = exp&#40;mdn*&#40;1-dz&#41; + mup*dz&#41;

   end function MatterPowerAt_Z
[/code]

gongbo zhao
Posts: 73
Joined: January 04 2005
Affiliation: NAOC
Contact:

CAMB: Matter Power Spectrum of Bump-like Dark Energy models

Post by gongbo zhao » March 26 2007

Sure, I included DE perturbation and added w' terms correspondingly.
Thanks for your info.


Cheers,
Gong-Bo Zhao

Post Reply