CCL
ccl_cls.h
Go to the documentation of this file.
1 
2 #ifdef __cplusplus
3 extern "C" {
4 #endif
5 
6 #pragma once
7 
8 #include "ccl_core.h"
9 #include "ccl_utils.h"
10 
11 #define CL_TRACER_NC 1 //Tracer type 1: number counts
12 #define CL_TRACER_WL 2 //Tracer type 2: weak lensing
13 #define CL_TRACER_CL 3 //Tracer type 2: CMB lensing
14 
21 typedef struct {
22  int tracer_type; //Type (see above)
23  double prefac_lensing; //3*O_M*H_0^2/2
24  double chimax; //Limits in chi where we care about this tracer
25  double chimin;
26  double chi_source; //Comoving distance to the source (for CMB lensing)
27  int has_rsd;
30  SplPar *spl_nz; //Spline for normalized N(z)
31  SplPar *spl_bz; //Spline for linear bias
32  SplPar *spl_sz; //Spline for magnification bias
33  SplPar *spl_rf; //Spline for red fraction
34  SplPar *spl_ba; //Spline for alignment bias
35  SplPar *spl_wL; //Spline for lensing kernel
36  SplPar *spl_wM; //Spline for magnification
37 } CCL_ClTracer;
38 
65 CCL_ClTracer *ccl_cl_tracer_new(ccl_cosmology *cosmo,int tracer_type,
66  int has_rsd,int has_magnification,int has_intrinsic_alignment,
67  int nz_n,double *z_n,double *n,
68  int nz_b,double *z_b,double *b,
69  int nz_s,double *z_s,double *s,
70  int nz_ba,double *z_ba,double *ba,
71  int nz_rf,double *z_rf,double *rf,
72  double z_source,int * status);
73 
93  int has_rsd,int has_magnification,
94  int nz_n,double *z_n,double *n,
95  int nz_b,double *z_b,double *b,
96  int nz_s,double *z_s,double *s, int * status);
97 
98 
112  int nz_n,double *z_n,double *n,
113  int nz_b,double *z_b,double *b, int * status);
114 
132  int has_alignment,
133  int nz_n,double *z_n,double *n,
134  int nz_ba,double *z_ba,double *ba,
135  int nz_rf,double *z_rf,double *rf, int * status);
136 
147  int nz_n,double *z_n,double *n, int * status);
148 
149 
157 CCL_ClTracer *ccl_cl_tracer_cmblens_new(ccl_cosmology *cosmo,double z_source,int *status);
158 
165 
166 
176 double ccl_angular_cl(ccl_cosmology *cosmo,int l,CCL_ClTracer *clt1,CCL_ClTracer *clt2, int * status);
177 
178 #ifdef __cplusplus
179 }
180 #endif
int has_magnification
Definition: ccl_cls.h:28
SplPar * spl_ba
Definition: ccl_cls.h:34
CCL_ClTracer * ccl_cl_tracer_lensing_new(ccl_cosmology *cosmo, int has_alignment, int nz_n, double *z_n, double *n, int nz_ba, double *z_ba, double *ba, int nz_rf, double *z_rf, double *rf, int *status)
Definition: ccl_cls.c:465
Definition: ccl_cls.h:21
CCL_ClTracer * ccl_cl_tracer_number_counts_simple_new(ccl_cosmology *cosmo, int nz_n, double *z_n, double *n, int nz_b, double *z_b, double *b, int *status)
Definition: ccl_cls.c:456
CCL_ClTracer * ccl_cl_tracer_new(ccl_cosmology *cosmo, int tracer_type, int has_rsd, int has_magnification, int has_intrinsic_alignment, int nz_n, double *z_n, double *n, int nz_b, double *z_b, double *b, int nz_s, double *z_s, double *s, int nz_ba, double *z_ba, double *ba, int nz_rf, double *z_rf, double *rf, double z_source, int *status)
Definition: ccl_cls.c:399
double chimax
Definition: ccl_cls.h:24
CCL_ClTracer * ccl_cl_tracer_number_counts_new(ccl_cosmology *cosmo, int has_rsd, int has_magnification, int nz_n, double *z_n, double *n, int nz_b, double *z_b, double *b, int nz_s, double *z_s, double *s, int *status)
Definition: ccl_cls.c:445
CCL_ClTracer * ccl_cl_tracer_cmblens_new(ccl_cosmology *cosmo, double z_source, int *status)
Definition: ccl_cls.c:437
double chi_source
Definition: ccl_cls.h:26
int has_intrinsic_alignment
Definition: ccl_cls.h:29
void ccl_cl_tracer_free(CCL_ClTracer *clt)
Definition: ccl_cls.c:415
SplPar * spl_sz
Definition: ccl_cls.h:32
CCL_ClTracer * ccl_cl_tracer_lensing_simple_new(ccl_cosmology *cosmo, int nz_n, double *z_n, double *n, int *status)
Definition: ccl_cls.c:476
SplPar * spl_wM
Definition: ccl_cls.h:36
double ccl_angular_cl(ccl_cosmology *cosmo, int l, CCL_ClTracer *clt1, CCL_ClTracer *clt2, int *status)
Definition: ccl_cls.c:728
SplPar * spl_nz
Definition: ccl_cls.h:30
SplPar * spl_bz
Definition: ccl_cls.h:31
int tracer_type
Definition: ccl_cls.h:22
Definition: ccl_utils.h:32
double prefac_lensing
Definition: ccl_cls.h:23
double chimin
Definition: ccl_cls.h:25
SplPar * spl_wL
Definition: ccl_cls.h:35
Definition: ccl_core.h:123
SplPar * spl_rf
Definition: ccl_cls.h:33
int has_rsd
Definition: ccl_cls.h:27