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;
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 
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 
114  int nz_n,double *z_n,double *n,
115  int nz_b,double *z_b,double *b, int * status);
116 
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 
149  int nz_n,double *z_n,double *n, int * status);
150 
151 
158 
159 
169 double ccl_angular_cl(ccl_cosmology *cosmo,int l,CCL_ClTracer *clt1,CCL_ClTracer *clt2, int * status);
int has_magnification
Definition: ccl_cls.h:34
SplPar * spl_ba
Definition: ccl_cls.h:40
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
Definition: ccl_cls.h:28
double xf
Definition: ccl_cls.h:18
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_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
double chimax
Definition: ccl_cls.h:31
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
int has_intrinsic_alignment
Definition: ccl_cls.h:35
void ccl_cl_tracer_free(CCL_ClTracer *clt)
Definition: ccl_cls.c:459
SplPar * spl_sz
Definition: ccl_cls.h:38
gsl_interp_accel * intacc
Definition: ccl_cls.h:16
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
SplPar * spl_wM
Definition: ccl_cls.h:42
double ccl_angular_cl(ccl_cosmology *cosmo, int l, CCL_ClTracer *clt1, CCL_ClTracer *clt2, int *status)
Definition: ccl_cls.c:746
SplPar * spl_nz
Definition: ccl_cls.h:36
SplPar * spl_bz
Definition: ccl_cls.h:37
int tracer_type
Definition: ccl_cls.h:29
Definition: ccl_cls.h:15
gsl_spline * spline
Definition: ccl_cls.h:17
double prefac_lensing
Definition: ccl_cls.h:30
double chimin
Definition: ccl_cls.h:32
SplPar * spl_wL
Definition: ccl_cls.h:41
Definition: ccl_core.h:115
double yf
Definition: ccl_cls.h:19
SplPar * spl_rf
Definition: ccl_cls.h:39
int has_rsd
Definition: ccl_cls.h:33