CCL
ccl_lsst_specs.h
Go to the documentation of this file.
1 
2 #ifdef __cplusplus
3 extern "C" {
4 #endif
5 
6 #pragma once
7 #include "ccl_core.h"
8 #include "math.h"
9 #include "gsl/gsl_integration.h"
10 #include "gsl/gsl_spline.h"
11 
17 typedef struct {
18  double (* your_pz_func)(double, double, void *, int*); /*< Function returns the likelihood of measuring a z_ph
19  * (first double) given a z_spec (second double), with a pointer to additonal arguments and a status flag.*/
20  void * your_pz_params; /*< Additional parameters to be passed into your_pz_func */
21 } user_pz_info;
22 
32 double ccl_specs_bias_clustering(ccl_cosmology * cosmo, double a, int * status);
33 
46 void ccl_specs_dNdz_tomog(double z, int dNdz_type, double bin_zmin, double bin_zmax, user_pz_info * user_info, double *tomoout, int *status);
47 
54 user_pz_info* ccl_specs_create_photoz_info(void * user_params, double(*user_pz_func)(double, double,void*,int*));
55 
62 
67 void ccl_specs_free_photoz_info(user_pz_info *my_photoz_info);
68 
74 
81 double ccl_specs_sigmaz_clustering(double z);
82 
89 double ccl_specs_sigmaz_sources(double z);
90 
91 // Specifying the dNdz
92 // lensing (Chang et al 2013)
93 #define DNDZ_WL_CONS 1 //k=0.5
94 #define DNDZ_WL_FID 2 //k=1
95 #define DNDZ_WL_OPT 3 //k=2
96 // Clustering
97 #define DNDZ_NC 4
98 
99 //LSST redshift range for lensing sources
100 #define Z_MIN_SOURCES 0.1
101 #define Z_MAX_SOURCES 3.0
102 
103 #ifdef __cplusplus
104 }
105 #endif
void * your_pz_params
Definition: ccl_lsst_specs.h:20
void ccl_specs_free_photoz_info(user_pz_info *my_photoz_info)
Definition: ccl_lsst_specs.c:163
Definition: ccl_lsst_specs.h:17
user_pz_info * ccl_specs_create_photoz_info(void *user_params, double(*user_pz_func)(double, double, void *, int *))
Definition: ccl_lsst_specs.c:115
user_pz_info * ccl_specs_create_gaussian_photoz_info(double sigma_z0)
Definition: ccl_lsst_specs.c:140
double ccl_specs_bias_clustering(ccl_cosmology *cosmo, double a, int *status)
Definition: ccl_lsst_specs.c:56
double ccl_specs_sigmaz_sources(double z)
Definition: ccl_lsst_specs.c:45
double ccl_specs_sigmaz_clustering(double z)
Definition: ccl_lsst_specs.c:35
void ccl_specs_free_photoz_info_gaussian(user_pz_info *my_photoz_info)
Definition: ccl_lsst_specs.c:153
Definition: ccl_core.h:123
void ccl_specs_dNdz_tomog(double z, int dNdz_type, double bin_zmin, double bin_zmax, user_pz_info *user_info, double *tomoout, int *status)
Definition: ccl_lsst_specs.c:258