85 {
return {
"comoving_theta",
"comoving_side",
"comoving_costheta",
"multipoles_direct"}; }
94 {
return castFromValue<TripletType>(tripletPTypeIndex); }
111 inline std::vector<TripletType>
TripletTypeCast (
const std::vector<int> tripletPTypeIndeces)
112 {
return castFromValues<TripletType>(tripletPTypeIndeces); }
120 inline std::vector<TripletType>
TripletTypeCast (
const std::vector<std::string> tripletPTypeNames)
121 {
return castFromNames<TripletType>(tripletPTypeNames,
TripletTypeNames()); }
214 virtual double scale (
const int i)
const
215 { (void)i;
cbl::ErrorCBL(
"",
"scale",
"Triplet.h");
return 0; }
221 virtual std::vector<double>
scale ()
const
222 {
cbl::ErrorCBL(
"",
"scale",
"Triplet.h"); std::vector<double> vv;
return vv; }
230 virtual double TT1D (
const int i)
const { (void)i;
cbl::ErrorCBL(
"",
"TT1D",
"Triplet.h");
return 0; }
238 virtual std::vector<double>
TT1D ()
const {
cbl::ErrorCBL(
"",
"TT1D",
"Triplet.h"); std::vector<double> vv;
return vv; }
251 virtual std::vector<double>
scale_D1 ()
const {
cbl::ErrorCBL(
"",
"scale_D1",
"Triplet.h"); std::vector<double> vv;
return vv; }
264 virtual std::vector<double>
scale_D2 ()
const {
cbl::ErrorCBL(
"",
"scale_D2",
"Triplet.h"); std::vector<double> vv;
return vv; }
272 virtual double TT2D (
const int i,
const int j)
const { (void)i; (void)j;
cbl::ErrorCBL(
"",
"TT2D",
"Triplet.h");
return 0; }
278 virtual std::vector<std::vector<double> >
TT2D ()
const {
cbl::ErrorCBL(
"",
"TT2D",
"Triplet.h"); std::vector<std::vector<double> > vv;
return vv; }
431 virtual void set_TT1D (
const int i,
const double tt)
432 { (void)i; (void)tt;
cbl::ErrorCBL(
"",
"set_TT1D",
"Triplet.h"); }
440 virtual void add_TT1D (
const int i,
const double tt)
441 { (void)i; (void)tt;
cbl::ErrorCBL(
"",
"add_TT1D",
"Triplet.h"); }
466 virtual void set_triplet (
const int klin,
const double ww=1.) = 0;
476 virtual void put (
const double r12,
const double r13,
const double r23,
const double ww=1.) = 0;
485 virtual void put (
const std::shared_ptr<catalogue::Object> obj1,
const std::shared_ptr<catalogue::Object> obj2,
const std::shared_ptr<catalogue::Object> obj3) = 0;
492 virtual void Sum (
const std::shared_ptr<Triplet> tt,
const double ww=1.) = 0;
Dim m_tripletDim
the dimension of the triplet vectors
virtual double r12_D1() const
get the protected member Triplet1D::m_r12_D1
virtual double r12_D2() const
get the protected member Triplet1D::m_r12_D1
virtual double r12() const
get the private member m_r12
virtual double r13_binSize_D2() const
get the protected member Triplet1D::m_r13_binSize_D2
virtual double r13_D1() const
get the protected member Triplet1D::m_r13_D1
virtual void set_TT1D(const int i, const double tt)
set the member m_TT1D[i]
virtual double binSize_D1() const
get the protected member Triplet1D::m_binSize_D1
virtual std::vector< double > TT1D() const
get the private member m_TT1D
TripletType tripletType() const
get the triplet type
virtual double r12_binSize_D2() const
get the protected member Triplet1D::m_r12_binSize_D1
virtual std::vector< double > scale_D1() const
get the protected member m_scale_D1
virtual double scale_D1(const int i) const
get the protected member m_scale_D1[i]
virtual void set_triplet(const int klin, const double ww=1.)=0
update the triplet
virtual double r13_D2() const
get the protected member Triplet1D::m_r13_D2
virtual double r12_binSize() const
get the private member m_r12
virtual void Sum(const std::shared_ptr< Triplet > tt, const double ww=1.)=0
sum the number of triplets
virtual double scale_D2(const int i) const
get the protected member m_scale_D2[i]
virtual void add_TT1D(const int i, const double tt)
set the protected member Triplet1D::m_TT1D[i] adding the number of triplets
TripletType m_tripletType
triplet type
virtual double r13_binSize_D1() const
get the protected member Triplet1D::m_r13_binSize_D1
virtual double TT2D(const int i, const int j) const
get the protected member m_TT2D[i]
Dim tripletDim() const
get the dimension of the triplet vectors
virtual double binSize_D2() const
get the protected member Triplet1D::m_binSize_D2
virtual std::vector< double > scale_D2() const
get the protected member m_scale_D2
virtual int nbins_D2() const
get the protected member Triplet1D::m_nbins_D2
virtual void set_parameters()=0
set the binning parameters
virtual double scale(const int i) const
get the protected member m_scale[i]
virtual void get_triplet(const double r12, const double r13, const double r23, int &klin)=0
estimate the distance between two objects and update the triplet vectors accordingly
virtual int nbins() const
get the private member m_nbins
virtual double r12_binSize_D1() const
get the protected member Triplet1D::m_r12_binSize_D1
virtual double binSize() const
get the private member m_binSize
virtual void put(const std::shared_ptr< catalogue::Object > obj1, const std::shared_ptr< catalogue::Object > obj2, const std::shared_ptr< catalogue::Object > obj3)=0
estimate the distance between three objects and update the triplet vectors accordingly
virtual double TT1D(const int i) const
get the private member m_TT1D[i]
static std::shared_ptr< Triplet > Create(const TripletType type, const double r12, const double r12_binSize, const double r13, const double r13_binSize, const int nbins)
static factory used to construct triplets of any type
virtual double r13_binSize() const
get the private member m_side_u
virtual std::vector< std::vector< double > > TT2D() const
get the protected member m_TT2D
virtual int nbins_D1() const
get the protected member Triplet1D::m_nbins_D1
virtual std::vector< double > scale() const
get the protected member m_scale
virtual ~Triplet()
default destructor
virtual void put(const double r12, const double r13, const double r23, const double ww=1.)=0
estimate the distance between two objects and update the triplet vectors accordingly
virtual double r13() const
get the private member m_side_u
TripletType TripletTypeCast(const int tripletPTypeIndex)
cast an enum of type TripletType from its index
std::vector< std::string > TripletTypeNames()
return a vector containing the TripletType names
TripletType
the triplet type
@ _comoving_side_
1D triplet in comoving coordinates and linear bins
@ _comoving_costheta_
1D triplet in comoving coordinates and linear bins of the cosine of theta
@ _comoving_theta_
1D triplet in comoving coordinates and angular bins
@ _multipoles_direct_
multipoles of the triplets
The global namespace of the CosmoBolognaLib
int ErrorCBL(const std::string msg, const std::string functionCBL, const std::string fileCBL, const cbl::glob::ExitCode exitCode=cbl::glob::ExitCode::_error_)
throw an exception: it is used for handling exceptions inside the CosmoBolognaLib
Dim
the dimension, used e.g. for pair and triplet vectors