mirror of
https://bitbucket.org/cosmicvoids/vide_public.git
synced 2025-07-06 16:21:11 +00:00
Imported latest snapshot of cosmotoolbox
This commit is contained in:
parent
a53a757d5a
commit
e41c26a46c
12 changed files with 1497 additions and 0 deletions
74
external/cosmotool/src/cosmopower.hpp
vendored
Normal file
74
external/cosmotool/src/cosmopower.hpp
vendored
Normal file
|
@ -0,0 +1,74 @@
|
|||
#ifndef _COSMOPOWER_HPP
|
||||
#define _COSMOPOWER_HPP
|
||||
|
||||
namespace CosmoTool {
|
||||
|
||||
class CosmoPower
|
||||
{
|
||||
public:
|
||||
// PRIMARY VARIABLES
|
||||
double n;
|
||||
double K0;
|
||||
double V_LG_CMB;
|
||||
|
||||
double CMB_VECTOR[3];
|
||||
|
||||
double h;
|
||||
double SIGMA8;
|
||||
double OMEGA_B;
|
||||
double OMEGA_C;
|
||||
double omega_B;
|
||||
double omega_C;
|
||||
double Theta_27;
|
||||
|
||||
// DERIVED VARIABLES
|
||||
double OMEGA_0;
|
||||
double Omega;
|
||||
double beta;
|
||||
double OmegaEff;
|
||||
double Gamma0;
|
||||
double normPower;
|
||||
|
||||
enum CosmoFunction
|
||||
{
|
||||
POWER_EFSTATHIOU,
|
||||
HU_WIGGLES,
|
||||
HU_BARYON,
|
||||
OLD_POWERSPECTRUM,
|
||||
POWER_BARDEEN,
|
||||
POWER_SUGIYAMA,
|
||||
POWER_BDM,
|
||||
POWER_TEST
|
||||
};
|
||||
|
||||
CosmoPower();
|
||||
|
||||
void setFunction(CosmoFunction f);
|
||||
|
||||
void updateCosmology();
|
||||
void updatePhysicalCosmology();
|
||||
void normalize();
|
||||
void setNormalization(double A_K);
|
||||
|
||||
|
||||
double eval_theta_theta(double k);
|
||||
double power(double k);
|
||||
|
||||
double integrandNormalize(double k);
|
||||
private:
|
||||
double (CosmoPower::*eval)(double);
|
||||
|
||||
double powerEfstathiou(double k);
|
||||
double powerHuWiggles(double k);
|
||||
double powerHuBaryons(double k);
|
||||
double powerOld(double k);
|
||||
double powerBardeen(double k);
|
||||
double powerSugiyama(double k);
|
||||
double powerBDM(double k);
|
||||
double powerTest(double k);
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue