6 #define BCM_TOLERANCE 1e-4 35 double Omega_v[1]={0.7};
36 double w_0[1] = {-1.0};
37 double w_a[1] = {0.0};
39 for(
int i=0;i<1;i++) {
40 data->Omega_v[i] = Omega_v[i];
41 data->w_0[i] = w_0[i];
42 data->w_a[i] = w_a[i];
43 data->Omega_k[i] = 1.0 - data->Omega_c - data->Omega_b - data->Omega_v[i];
53 while((fgets(ch,
sizeof(ch),f))!=NULL) {
63 char fname[256],str[1024];
70 data->
Neff, data->
m_nu, data-> mnu_type,
71 data->
w_0[i_model-1],data->
w_a[i_model-1],
72 data->
h,data->
A_s,data->
n_s,14,-1,-1,-1,NULL,NULL, &status);
81 data->
w_0[i_model-1],data->
w_a[i_model-1],
82 data->
h,data->
A_s,data->
n_s,-1,-1,-1,-1,NULL,NULL, &status);
89 sprintf(fname,
"./tests/benchmark/bcm/w_baryonspk_nl.dat");
92 fprintf(stderr,
"Error opening file %s\n",fname);
95 sprintf(fname2,
"./tests/benchmark/bcm/wo_baryonspk_nl.dat");
98 fprintf(stderr,
"Error opening file %s\n",fname2);
104 rtn = fgets(str, 1024, f);
105 rtn = fgets(str, 1024, f);
106 rtn = fgets(str, 1024, f);
107 rtn = fgets(str, 1024, f);
109 rtn = fgets(str, 1024, f2);
110 rtn = fgets(str, 1024, f2);
111 rtn = fgets(str, 1024, f2);
112 rtn = fgets(str, 1024, f2);
114 for(i=0;i<nk-4;i++) {
117 double psbar,psnobar,fbcm_bench,err;
118 double psbar_bench,psnobar_bench;
119 stat=fscanf(f,
"%le %le",&k_h,&psbar);
121 fprintf(stderr,
"Error reading file %s, line %d\n",fname,i+5);
124 stat=fscanf(f2,
"%*le %le",&psnobar);
126 fprintf(stderr,
"Error reading file %s, line %d\n",fname2,i+5);
133 err=fabs(psbar/psnobar/fbcm_bench-1);
140 err=fabs(psbar/psnobar/(psbar_bench/psnobar_bench)-1);
double ccl_nonlin_matter_power(ccl_cosmology *cosmo, double k, double a, int *status)
static int linecount(FILE *f)
#define CTEST_SETUP(sname)
#define CTEST_DATA(sname)
ccl_cosmology * ccl_cosmology_create(ccl_parameters params, ccl_configuration config)
double ccl_bcm_model_fka(ccl_cosmology *cosmo, double k, double a, int *status)
void ccl_cosmology_free(ccl_cosmology *cosmo)
#define ASSERT_DBL_NEAR_TOL(exp, real, tol)
baryons_power_spectrum_t baryons_power_spectrum_method
const ccl_configuration default_config
ccl_mnu_convention mnu_type
#define ASSERT_NOT_NULL(real)
static void compare_bcm(int i_model, struct bcm_data *data)
ccl_parameters ccl_parameters_create(double Omega_c, double Omega_b, double Omega_k, double Neff, double *mnu, ccl_mnu_convention mnu_type, double w0, double wa, double h, double norm_pk, double n_s, double bcm_log10Mc, double bcm_etab, double bcm_ks, int nz_mgrowth, double *zarr_mgrowth, double *dfarr_mgrowth, int *status)
#define CTEST2(sname, tname)