48 void cbl::modelling::angularpk::Modelling_PowerSpectrum_angular::set_data_model(
const cbl::cosmology::Cosmology cosmology,
const double z_min,
const double z_max,
const std::string method_Pk,
const bool NL,
const int norm,
const double k_min,
const double k_max, std::vector<double> dN_par,
const double fsky, std::vector<double> ll, std::vector<std::vector<double>> mixing_matrix,
const bool interpolate_power_spectrum)
50 m_data_model = make_shared<STR_data_model>(STR_data_model());
52 m_data_model->cosmology = make_shared<cosmology::Cosmology>(cosmology);
53 m_data_model->z_min=z_min;
54 m_data_model->z_max=z_max;
55 m_data_model->method_Pk = method_Pk;
56 m_data_model->NL = NL;
57 m_data_model->norm = norm;
58 m_data_model->k_min = k_min;
59 m_data_model->k_max = k_max;
60 m_data_model->dN_par=dN_par;
61 m_data_model->fsky=fsky;
63 m_data_model->mixing_matrix=mixing_matrix;
64 m_data_model->interpolate_power_spectrum=interpolate_power_spectrum;
67 double s8=m_data_model->cosmology->sigma8_Pk(method_Pk, 0.,
false,
"test", NL, k_min, k_max);
68 m_data_model->cosmology->set_sigma8(s8);
76 void cbl::modelling::angularpk::Modelling_PowerSpectrum_angular::set_data_model_cross(
const cbl::cosmology::Cosmology cosmology,
const double z_min,
const double z_max,
const std::string method_Pk,
const bool NL,
const int norm,
const double k_min,
const double k_max, std::vector<double> dN_par,
const double fsky, std::vector<double> ll, std::vector<std::vector<double>> mixing_matrix,
const bool interpolate_power_spectrum,
const double z_min_bin2,
const double z_max_bin2, std::vector<double> dN_par_bin2)
78 m_data_model = make_shared<STR_data_model>(STR_data_model());
80 m_data_model->cosmology = make_shared<cosmology::Cosmology>(cosmology);
81 m_data_model->z_min=z_min;
82 m_data_model->z_max=z_max;
83 m_data_model->method_Pk = method_Pk;
84 m_data_model->NL = NL;
85 m_data_model->norm = norm;
86 m_data_model->k_min = k_min;
87 m_data_model->k_max = k_max;
88 m_data_model->dN_par=dN_par;
89 m_data_model->fsky=fsky;
91 m_data_model->mixing_matrix=mixing_matrix;
92 m_data_model->interpolate_power_spectrum=interpolate_power_spectrum;
93 m_data_model->z_min_bin2=z_min_bin2;
94 m_data_model->z_max_bin2=z_max_bin2;
95 m_data_model->dN_par_bin2=dN_par_bin2;
98 double s8=m_data_model->cosmology->sigma8_Pk(method_Pk, 0.,
false,
"test", NL, k_min, k_max);
99 m_data_model->cosmology->set_sigma8(s8);
110 m_data_model->Cpar = cosmo_param;
113 const int nparameters = cosmo_param.size()+5;
115 vector<statistics::ParameterType> parameterType (nparameters-4, statistics::ParameterType::_Base_);
121 vector<string> parameterName(nparameters);
122 vector<statistics::PriorDistribution> priors(nparameters-3);
125 for (
size_t i=0; i<cosmo_param.size(); i++){
127 priors[i] = cosmo_prior[i];
131 priors[nparameters-5] = bias_prior;
132 parameterName[nparameters-5] =
"bias";
133 priors[nparameters-4] = offset_slope_prior;
134 parameterName[nparameters-4] =
"offset";
135 parameterName[nparameters-3] =
"slope";
136 parameterName[nparameters-2] =
"S8";
137 parameterName[nparameters-1] =
"Baryonic fraction";
154 m_data_model->Cpar = cosmo_param;
156 const int nparameters = cosmo_param.size()+3;
158 vector<statistics::ParameterType> parameterType (nparameters-2, statistics::ParameterType::_Base_);
161 vector<string> parameterName(nparameters);
162 vector<statistics::PriorDistribution> priors(nparameters-2);
165 for (
size_t i=0; i<cosmo_param.size(); i++){
167 priors[i] = cosmo_prior[i];
170 priors[nparameters-3] = bias_prior;
171 parameterName[nparameters-3] =
"bias";
172 parameterName[nparameters-2] =
"S8";
173 parameterName[nparameters-1] =
"Baryonic fraction";
190 m_data_model->Cpar = cosmo_param;
192 const int nparameters = cosmo_param.size()+4;
194 vector<statistics::ParameterType> parameterType (nparameters-2, statistics::ParameterType::_Base_);
197 vector<string> parameterName(nparameters);
198 vector<statistics::PriorDistribution> priors(nparameters-2);
201 for (
size_t i=0; i<cosmo_param.size(); i++){
203 priors[i] = cosmo_prior[i];
206 priors[nparameters-4] = bias_prior_bin1;
207 parameterName[nparameters-4] =
"bias_bin1";
208 priors[nparameters-3] = bias_prior_bin2;
209 parameterName[nparameters-3] =
"bias_bin2";
210 parameterName[nparameters-2] =
"S8";
211 parameterName[nparameters-1] =
"Baryonic fraction";
std::vector< double > Cl_limber(const std::vector< double > l, const std::shared_ptr< void > inputs, std::vector< double > ¶meter)
the model for the angular power spectrum
The class Modelling_PowerSpectrum_angular.
void set_data_model_cross(const cbl::cosmology::Cosmology cosmology, const double z_min=0., const double z_max=10., const std::string method_Pk="CAMB", const bool NL=false, const int norm=-1, const double k_min=0.001, const double k_max=5., const std::vector< double > dN_par={}, const double fsky=1., std::vector< double > ll={}, std::vector< std::vector< double >> mixing_matrix={}, const bool interpolate_power_spectrum=false, const double z_min_bin2=-1., const double z_max_bin2=-1., const std::vector< double > dN_par_bin2={})
Set the data used to construct models of the angular power spectrum.
void set_model_limber_cross(const std::vector< cbl::cosmology::CosmologicalParameter > cosmo_param, const std::vector< statistics::PriorDistribution > cosmo_prior, const statistics::PriorDistribution bias_prior_bin1, const statistics::PriorDistribution bias_prior_bin2)
set the model to fit the cross correlation angular power spectrum
void set_data_model(const cbl::cosmology::Cosmology cosmology, const double z_min=0., const double z_max=10., const std::string method_Pk="CAMB", const bool NL=false, const int norm=-1, const double k_min=0.001, const double k_max=5., const std::vector< double > dN_par={}, const double fsky=1., std::vector< double > ll={}, std::vector< std::vector< double >> mixing_matrix={}, const bool interpolate_power_spectrum=false)
Set the data used to construct models of the angular power spectrum.
void set_model_limber(const std::vector< cbl::cosmology::CosmologicalParameter > cosmo_param, const std::vector< statistics::PriorDistribution > cosmo_prior, const statistics::PriorDistribution bias_prior)
set the model to fit the angular power spectrum
The class PriorDistribution.
std::string CosmologicalParameter_name(const CosmologicalParameter parameter)
name of the cosmological parameter
@ _Derived_
derived parameter
@ _Correlated_
correlated parameters
The global namespace of the CosmoBolognaLib