35 #ifndef __MODELLINGTWOPOINTWED__
36 #define __MODELLINGTWOPOINTWED__
108 Modelling_TwoPointCorrelation_wedges (
const std::shared_ptr<cbl::measure::twopt::TwoPointCorrelation> twop,
const int nWedges=2,
const std::vector<std::vector<double>> mu_integral_limits={{0., 0.5}, {0.5, 1.}});
121 Modelling_TwoPointCorrelation_wedges (
const std::shared_ptr<data::Data> twop_dataset,
const int nWedges,
const std::vector<std::vector<double>> mu_integral_limits={{0., 0.5}, {0.5, 1.}});
151 virtual void write_model (
const std::string output_dir,
const std::string output_file,
const std::vector<double> xx,
const std::vector<double> parameter)
override;
163 void write_model_at_bestfit (
const std::string output_dir,
const std::string output_file,
const std::vector<double> xx)
override;
175 void write_model_from_chains (
const std::string output_dir,
const std::string output_file,
const std::vector<double> xx,
const int start=0,
const int thin=1)
override;
192 void set_fit_range (
const double xmin,
const double xmax,
const int nWedges=-1);
200 void set_fit_range (std::vector<std::vector<double>> fit_range);
258 void set_model_BAO (
const statistics::PriorDistribution alpha_perpendicular_prior={},
const statistics::PriorDistribution alpha_parallel_prior={},
const statistics::PriorDistribution Bperp_prior={},
const statistics::PriorDistribution Bpar_prior={},
const statistics::PriorDistribution Aperp0_prior={},
const statistics::PriorDistribution Apar0_prior={},
const statistics::PriorDistribution Aperp1_prior={},
const statistics::PriorDistribution Apar1_prior={},
const statistics::PriorDistribution Aperp2_prior={},
const statistics::PriorDistribution Apar2_prior={},
const bool compute_XiDM=
true,
const bool isRealSpace=
false);
306 void set_model_fullShape_DeWiggled (
const statistics::PriorDistribution alpha_perpendicular_prior={},
const statistics::PriorDistribution alpha_parallel_prior={},
const statistics::PriorDistribution SigmaNL_perpendicular_prior={},
const statistics::PriorDistribution SigmaNL_parallel_prior={},
const statistics::PriorDistribution fsigma8_prior={},
const statistics::PriorDistribution bsigma8_prior={},
const statistics::PriorDistribution SigmaS_prior={},
const bool compute_PkDM=
true);
350 void set_model_fullShape_ModeCoupling (
const statistics::PriorDistribution alpha_perpendicular_prior={},
const statistics::PriorDistribution alpha_parallel_prior={},
const statistics::PriorDistribution fsigma8_prior={},
const statistics::PriorDistribution bsigma8_prior={},
const statistics::PriorDistribution SigmaV_prior={},
const statistics::PriorDistribution AMC_prior={},
const bool compute_PkDM=
true);
499 void set_model_Scoccimarro_fitPezzotta (
const statistics::PriorDistribution fsigma8_prior={},
const statistics::PriorDistribution bsigma8_prior={},
const statistics::PriorDistribution sigmav_prior={},
const statistics::PriorDistribution kd_prior={},
const statistics::PriorDistribution kt_prior={},
const statistics::PriorDistribution alpha_perpendicular_prior={
cbl::glob::DistributionType::_Constant_, 1.},
const statistics::PriorDistribution alpha_parallel_prior={
cbl::glob::DistributionType::_Constant_, 1.},
const bool DFoG=
true,
const bool compute_PkDM=
true);
563 void set_model_Scoccimarro_fitBel (
const statistics::PriorDistribution fsigma8_prior={},
const statistics::PriorDistribution bsigma8_prior={},
const statistics::PriorDistribution sigmav_prior={},
const statistics::PriorDistribution kd_prior={},
const statistics::PriorDistribution bb_prior={},
const statistics::PriorDistribution a1_prior={},
const statistics::PriorDistribution a2_prior={},
const statistics::PriorDistribution a3_prior={},
const statistics::PriorDistribution alpha_perpendicular_prior={
cbl::glob::DistributionType::_Constant_, 1.},
const statistics::PriorDistribution alpha_parallel_prior={
cbl::glob::DistributionType::_Constant_, 1.},
const bool DFoG=
true,
const bool compute_PkDM=
true);
666 void set_model_eTNS (
const statistics::PriorDistribution fsigma8_prior={},
const statistics::PriorDistribution b1sigma8_prior={},
const statistics::PriorDistribution b2sigma8_prior={},
const statistics::PriorDistribution sigmav_prior={},
const statistics::PriorDistribution alpha_perpendicular_prior={
cbl::glob::DistributionType::_Constant_, 1.},
const statistics::PriorDistribution alpha_parallel_prior={
cbl::glob::DistributionType::_Constant_, 1.},
const statistics::PriorDistribution N_prior={
cbl::glob::DistributionType::_Constant_, 0.},
const bool DFoG=
true,
const bool compute_PkDM=
true);
The class Modelling_TwoPointCorrelation1D_monopole.
The class Modelling_TwoPointCorrelation1D_monopole.
The class Modelling_TwoPointCorrelation_wedges.
void set_model_BAO(const statistics::PriorDistribution alpha_perpendicular_prior={}, const statistics::PriorDistribution alpha_parallel_prior={}, const statistics::PriorDistribution Bperp_prior={}, const statistics::PriorDistribution Bpar_prior={}, const statistics::PriorDistribution Aperp0_prior={}, const statistics::PriorDistribution Apar0_prior={}, const statistics::PriorDistribution Aperp1_prior={}, const statistics::PriorDistribution Apar1_prior={}, const statistics::PriorDistribution Aperp2_prior={}, const statistics::PriorDistribution Apar2_prior={}, const bool compute_XiDM=true, const bool isRealSpace=false)
set the model to fit the wedges of the two-point correlation function, used for anisotropic BAO measu...
bool m_ModelIsSet
bolean to check if the model has been set
std::vector< bool > m_use_wedge
vector of booleans indicating the wedges to be modelled (m_use_wedge[i]=true -> the i-th wedge is mod...
virtual void write_model(const std::string output_dir, const std::string output_file, const std::vector< double > xx, const std::vector< double > parameter) override
write the model at xx, for the given parameters
void set_model_Scoccimarro(const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution bsigma8_prior={}, const statistics::PriorDistribution sigmav_prior={}, const statistics::PriorDistribution alpha_perpendicular_prior={cbl::glob::DistributionType::_Constant_, 1.}, const statistics::PriorDistribution alpha_parallel_prior={cbl::glob::DistributionType::_Constant_, 1.}, const bool DFoG=true, const bool compute_PkDM=true)
set the Scoccimarro model to fit the wedges of the two-point correlation function
int m_nWedges
number of measured wedges in the input dataset
void set_fiducial_PkDM()
set the fiducial model for the dark matter power spectrum
void set_model_Scoccimarro_fitPezzotta(const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution bsigma8_prior={}, const statistics::PriorDistribution sigmav_prior={}, const statistics::PriorDistribution kd_prior={}, const statistics::PriorDistribution kt_prior={}, const statistics::PriorDistribution alpha_perpendicular_prior={cbl::glob::DistributionType::_Constant_, 1.}, const statistics::PriorDistribution alpha_parallel_prior={cbl::glob::DistributionType::_Constant_, 1.}, const bool DFoG=true, const bool compute_PkDM=true)
set the Scoccimarro model to fit the wedges of the two-point correlation function
std::vector< std::vector< double > > m_mu_integral_limits
the integral limits used to measure the wedges
std::vector< int > m_wedges_order
vector containing the ordering of the data vector, which spcifies which wedge correponds to each data...
void set_model_dispersion(const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution bsigma8_prior={}, const statistics::PriorDistribution sigmav_prior={}, const statistics::PriorDistribution alpha_perpendicular_prior={cbl::glob::DistributionType::_Constant_, 1.}, const statistics::PriorDistribution alpha_parallel_prior={cbl::glob::DistributionType::_Constant_, 1.}, const bool DFoG=true, const bool compute_PkDM=true)
set the dispersion model to fit the wedges of the two-point correlation function
void set_model_fullShape_ModeCoupling(const statistics::PriorDistribution alpha_perpendicular_prior={}, const statistics::PriorDistribution alpha_parallel_prior={}, const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution bsigma8_prior={}, const statistics::PriorDistribution SigmaV_prior={}, const statistics::PriorDistribution AMC_prior={}, const bool compute_PkDM=true)
set the mode-coupling model to fit the full shape of the wedges of the two-point correlation function
void set_model_eTNS(const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution b1sigma8_prior={}, const statistics::PriorDistribution b2sigma8_prior={}, const statistics::PriorDistribution sigmav_prior={}, const statistics::PriorDistribution alpha_perpendicular_prior={cbl::glob::DistributionType::_Constant_, 1.}, const statistics::PriorDistribution alpha_parallel_prior={cbl::glob::DistributionType::_Constant_, 1.}, const statistics::PriorDistribution N_prior={cbl::glob::DistributionType::_Constant_, 0.}, const bool DFoG=true, const bool compute_PkDM=true)
set the eTNS model, i.e extended-TNS (Taruya, Nishimichi and Saito) model to fit the wedges of the tw...
void write_model_from_chains(const std::string output_dir, const std::string output_file, const std::vector< double > xx, const int start=0, const int thin=1) override
write the model at xx computing 16th, 50th and 84th percentiles from the chains
void set_model_TNS(const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution bsigma8_prior={}, const statistics::PriorDistribution sigmav_prior={}, const statistics::PriorDistribution alpha_perpendicular_prior={cbl::glob::DistributionType::_Constant_, 1.}, const statistics::PriorDistribution alpha_parallel_prior={cbl::glob::DistributionType::_Constant_, 1.}, const bool DFoG=true, const bool compute_PkDM=true)
set the TNS (Taruya, Nishimichi and Saito) model to fit the wedges of the two-point correlation funct...
void set_fit_range(const double xmin, const double xmax, const int nWedges=-1)
set the scale range used for the fit
double m_deltamu
the wedges aperture
virtual ~Modelling_TwoPointCorrelation_wedges()=default
default destructor
void set_model_fullShape_DeWiggled(const statistics::PriorDistribution alpha_perpendicular_prior={}, const statistics::PriorDistribution alpha_parallel_prior={}, const statistics::PriorDistribution SigmaNL_perpendicular_prior={}, const statistics::PriorDistribution SigmaNL_parallel_prior={}, const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution bsigma8_prior={}, const statistics::PriorDistribution SigmaS_prior={}, const bool compute_PkDM=true)
set the de-wiggled model to fit the full shape of the wedges of the two-point correlation function
void write_model_at_bestfit(const std::string output_dir, const std::string output_file, const std::vector< double > xx) override
Modelling_TwoPointCorrelation_wedges()=default
default constuctor
void set_model_Scoccimarro_fitBel(const statistics::PriorDistribution fsigma8_prior={}, const statistics::PriorDistribution bsigma8_prior={}, const statistics::PriorDistribution sigmav_prior={}, const statistics::PriorDistribution kd_prior={}, const statistics::PriorDistribution bb_prior={}, const statistics::PriorDistribution a1_prior={}, const statistics::PriorDistribution a2_prior={}, const statistics::PriorDistribution a3_prior={}, const statistics::PriorDistribution alpha_perpendicular_prior={cbl::glob::DistributionType::_Constant_, 1.}, const statistics::PriorDistribution alpha_parallel_prior={cbl::glob::DistributionType::_Constant_, 1.}, const bool DFoG=true, const bool compute_PkDM=true)
set the Scoccimarro model to fit the wedges of the two-point correlation function
void set_fiducial_xiDM()
set the fiducial model for the dark matter two-point correlation function and associated quantities
The class PriorDistribution.
@ _Constant_
Constant function.
The global namespace of the CosmoBolognaLib