CCL: /home/chisarie/Documents/lsst_ccl/CCL/include/ccl_cls.h Source File

CCL

ccl_cls.h
Go to the documentation of this file.
1
3 #pragma once
4
5 #include "ccl_core.h"
6 #include "gsl/gsl_spline.h"
7
8 #define CL_TRACER_NC 1 //Tracer type 1: number counts
9 #define CL_TRACER_WL 2 //Tracer type 2: weak lensing
10
15 typedef struct {
16 gsl_interp_accel *intacc; //GSL spline
17 gsl_spline *spline;
18 double x0,xf; //Interpolation limits
19 double y0,yf; //Constant values to use beyond interpolation limit
20 } SplPar;
21
28 typedef struct {
29 int tracer_type; //Type (see above)
30 double prefac_lensing; //3*O_M*H_0^2/2
31 double chimax; //Limits in chi where we care about this tracer
32 double chimin;
33 int has_rsd;
34 int has_magnification;
35 int has_intrinsic_alignment;
36 SplPar *spl_nz; //Spline for normalized N(z)
37 SplPar *spl_bz; //Spline for linear bias
38 SplPar *spl_sz; //Spline for magnification bias
39 SplPar *spl_rf; //Spline for red fraction
40 SplPar *spl_ba; //Spline for alignment bias
41 SplPar *spl_wL; //Spline for lensing kernel
42 SplPar *spl_wM; //Spline for magnification
43 } CCL_ClTracer;
44
68 CCL_ClTracer *ccl_cl_tracer_new(ccl_cosmology *cosmo,int tracer_type,
69 int has_rsd,int has_magnification,int has_intrinsic_alignment,
70 int nz_n,double *z_n,double *n,
71 int nz_b,double *z_b,double *b,
72 int nz_s,double *z_s,double *s,
73 int nz_ba,double *z_ba,double *ba,
74 int nz_rf,double *z_rf,double *rf, int * status);
75
94 CCL_ClTracer *ccl_cl_tracer_number_counts_new(ccl_cosmology *cosmo,
95 int has_rsd,int has_magnification,
96 int nz_n,double *z_n,double *n,
97 int nz_b,double *z_b,double *b,
98 int nz_s,double *z_s,double *s, int * status);
99
100
113 CCL_ClTracer *ccl_cl_tracer_number_counts_simple_new(ccl_cosmology *cosmo,
114 int nz_n,double *z_n,double *n,
115 int nz_b,double *z_b,double *b, int * status);
116
133 CCL_ClTracer *ccl_cl_tracer_lensing_new(ccl_cosmology *cosmo,
134 int has_alignment,
135 int nz_n,double *z_n,double *n,
136 int nz_ba,double *z_ba,double *ba,
137 int nz_rf,double *z_rf,double *rf, int * status);
138
148 CCL_ClTracer *ccl_cl_tracer_lensing_simple_new(ccl_cosmology *cosmo,
149 int nz_n,double *z_n,double *n, int * status);
150
151
157 void ccl_cl_tracer_free(CCL_ClTracer *clt);
158
159
169 double ccl_angular_cl(ccl_cosmology *cosmo,int l,CCL_ClTracer *clt1,CCL_ClTracer *clt2, int * status);
CCL_ClTracer::has_magnification
int has_magnification
Definition: ccl_cls.h:34
CCL_ClTracer::spl_ba
SplPar * spl_ba
Definition: ccl_cls.h:40
ccl_cl_tracer_lensing_new
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:499
CCL_ClTracer
Definition: ccl_cls.h:28
SplPar::xf
double xf
Definition: ccl_cls.h:18
ccl_cl_tracer_number_counts_simple_new
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:490
ccl_cl_tracer_new
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, int *status)
Definition: ccl_cls.c:444
CCL_ClTracer::chimax
double chimax
Definition: ccl_cls.h:31
ccl_cl_tracer_number_counts_new
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:479
ccl_core.h
CCL_ClTracer::has_intrinsic_alignment
int has_intrinsic_alignment
Definition: ccl_cls.h:35
ccl_cl_tracer_free
void ccl_cl_tracer_free(CCL_ClTracer *clt)
Definition: ccl_cls.c:459
CCL_ClTracer::spl_sz
SplPar * spl_sz
Definition: ccl_cls.h:38
SplPar::intacc
gsl_interp_accel * intacc
Definition: ccl_cls.h:16
ccl_cl_tracer_lensing_simple_new
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:510
CCL_ClTracer::spl_wM
SplPar * spl_wM
Definition: ccl_cls.h:42
ccl_angular_cl
double ccl_angular_cl(ccl_cosmology *cosmo, int l, CCL_ClTracer *clt1, CCL_ClTracer *clt2, int *status)
Definition: ccl_cls.c:746
CCL_ClTracer::spl_nz
SplPar * spl_nz
Definition: ccl_cls.h:36
CCL_ClTracer::spl_bz
SplPar * spl_bz
Definition: ccl_cls.h:37
CCL_ClTracer::tracer_type
int tracer_type
Definition: ccl_cls.h:29
SplPar
Definition: ccl_cls.h:15
SplPar::spline
gsl_spline * spline
Definition: ccl_cls.h:17
CCL_ClTracer::prefac_lensing
double prefac_lensing
Definition: ccl_cls.h:30
CCL_ClTracer::chimin
double chimin
Definition: ccl_cls.h:32
CCL_ClTracer::spl_wL
SplPar * spl_wL
Definition: ccl_cls.h:41
ccl_cosmology
Definition: ccl_core.h:115
SplPar::yf
double yf
Definition: ccl_cls.h:19
CCL_ClTracer::spl_rf
SplPar * spl_rf
Definition: ccl_cls.h:39
CCL_ClTracer::has_rsd
int has_rsd
Definition: ccl_cls.h:33