CosmoBolognaLib
Free Software C++/Python libraries for cosmological calculations
cbl::pairs::Pair1D Class Referenceabstract

The class Pair1D. More...

#include "Headers/Pair1D.h"

Inheritance diagram for cbl::pairs::Pair1D:
Collaboration diagram for cbl::pairs::Pair1D:

Public Member Functions

Constructors/destructors
 Pair1D ()
 default constructor
 
 Pair1D (const double binSize, const int nbins, const double shift, const CoordinateUnits angularUnits, std::function< double(double)> angularWeight=nullptr)
 constructor More...
 
virtual ~Pair1D ()=default
 default destructor
 
Member functions used to get the protected members
double scale (const int i) const override
 get the protected member Pair1D::m_scale[i] More...
 
std::vector< double > scale () const override
 get the protected member Pair1D::m_scale More...
 
double PP1D (const int i) const override
 get the protected member Pair1D::m_PP1D[i] More...
 
std::vector< double > PP1D () const override
 get the protected member Pair1D::m_PP1D More...
 
double PP1D_weighted (const int i) const override
 get the protected member Pair1D::m_PP1D_weighted[i] More...
 
std::vector< double > PP1D_weighted () const override
 get the protected member Pair1D::m_PP1D More...
 
double binSize_inv () const override
 get the protected member Pair1D::m_binSize_inv More...
 
int nbins () const override
 get the protected member Pair1D::m_nbins More...
 
double shift () const override
 get the protected member Pair1D::m_shift More...
 
Member functions used to set the protected members
void reset () override
 reset the pair counts More...
 
void set_scale (const int i, const double ss)
 set the protected member Pair1D::m_scale[i] More...
 
void set_PP1D (const int i, const double pp)
 set the protected member Pair1D::m_PP1D[i] More...
 
void set_PP1D_weighted (const int i, const double pp)
 set the protected member Pair1D::m_PP1D_weighted[i] More...
 
void add_data1D (const int i, const std::vector< double > data) override
 set the protected member by adding new data More...
 
void add_data1D (const int i, const std::shared_ptr< pairs::Pair > pair, const double ww=1.) override
 set the protected member by adding new data More...
 
Member functions used to handle pairs
virtual void Sum (const std::shared_ptr< Pair > pair, const double ww=1) override
 sum the number of binned pairs More...
 
- Public Member Functions inherited from cbl::pairs::Pair
Dim pairDim () const
 get the dimension of the pair vectors More...
 
PairType pairType () const
 get the pair type More...
 
PairInfo pairInfo () const
 get the pair information type More...
 
CoordinateUnits angularUnits ()
 get the angular units More...
 
FunctionDoubleDouble angularWeight ()
 get the m_angularWeight function More...
 
virtual double scale_mean (const int i) const
 get the member m_scale_mean[i] More...
 
virtual std::vector< double > scale_mean () const
 get the member std::vector<double> m_scale_mean More...
 
virtual double scale_S (const int i) const
 get the member m_scale_S[i] More...
 
virtual std::vector< double > scale_S () const
 get the member std::vector<double> m_scale_S More...
 
virtual double scale_sigma (const int i) const
 get the member m_scale_sigma[i] More...
 
virtual std::vector< double > scale_sigma () const
 get the member std::vector<double> m_scale_sigma More...
 
virtual double z_mean (const int i) const
 get the protected member Pair1D_extra::m_z_mean[i] More...
 
virtual std::vector< double > z_mean () const
 get the protected member Pair1D_extra::m_z_mean More...
 
virtual double z_S (const int i) const
 get the protected member Pair1D_extra::m_z_S[i] More...
 
virtual std::vector< double > z_S () const
 get the protected member Pair1D_extra::m_z_S More...
 
virtual double z_sigma (const int i) const
 get the protected member Pair1D_extra::m_z_sigma[i] More...
 
virtual std::vector< double > z_sigma () const
 get the protected member Pair1D_extra::m_z_sigma More...
 
virtual double scale_D1 (const int i) const
 get the member m_scale_D1[i] More...
 
virtual std::vector< double > scale_D1 () const
 get the member std::vector<double> m_scale_D1 More...
 
virtual double scale_D2 (const int i) const
 get the member m_scale_D2[i] More...
 
virtual std::vector< double > scale_D2 () const
 get the member std::vector<double> m_scale_D2 More...
 
virtual double scale_D1_mean (const int i, const int j) const
 get the protected member m_scale_D1[i][j] More...
 
virtual std::vector< std::vector< double > > scale_D1_mean () const
 get the protected member m_scale_D1 More...
 
virtual double scale_D2_mean (const int i, const int j) const
 get the protected member m_scale_D2[i][j] More...
 
virtual std::vector< std::vector< double > > scale_D2_mean () const
 get the protected member m_scale_D2 More...
 
virtual double scale_D1_S (const int i, const int j) const
 get the member m_scale_D1_S[i][j] More...
 
virtual std::vector< std::vector< double > > scale_D1_S () const
 get the member std::vector<double> m_scale_D1 More...
 
virtual double scale_D2_S (const int i, const int j) const
 get the member m_scale_D2[i][j] More...
 
virtual std::vector< std::vector< double > > scale_D2_S () const
 get the member std::vector<double> m_scale_D2 More...
 
virtual double scale_D1_sigma (const int i, const int j) const
 get the member m_scale_D1_sigma[i][j] More...
 
virtual std::vector< std::vector< double > > scale_D1_sigma () const
 get the member std::vector<double> m_scale_D1 More...
 
virtual double scale_D2_sigma (const int i, const int j) const
 get the member m_scale_D2[i][j] More...
 
virtual std::vector< std::vector< double > > scale_D2_sigma () const
 get the member std::vector<double> m_scale_D2 More...
 
virtual double z_mean (const int i, const int j) const
 get the protected member m_z_mean[i][j] More...
 
virtual std::vector< std::vector< double > > z_mean2D () const
 get the protected member m_z_mean More...
 
virtual double z_S (const int i, const int j) const
 get the member m_z_sigma[i][j] More...
 
virtual double z_sigma (const int i, const int j) const
 get the member m_z_sigma[i][j] More...
 
virtual std::vector< std::vector< double > > z_sigma2D () const
 get the member std::vector<double> m_z_sigma More...
 
virtual double PP2D (const int i, const int j) const
 get the member m_PP2D[i][j] More...
 
virtual std::vector< std::vector< double > > PP2D () const
 get the member std::vector<std::vector<double>> m_PP2D More...
 
virtual double PP2D_weighted (const int i, const int j) const
 get the member m_PP2D_weighted[i][j] More...
 
virtual std::vector< std::vector< double > > PP2D_weighted () const
 get the member std::vector<std::vector<double>> m_PP2D_weighted More...
 
virtual double binSize_inv_D1 () const
 get the member m_binSize_inv_D1 More...
 
virtual int nbins_D1 () const
 get the member m_nbins_D1 More...
 
virtual double shift_D1 () const
 get the member m_shift_D1 More...
 
virtual double binSize_inv_D2 () const
 get the member m_binSize_inv_D2 More...
 
virtual int nbins_D2 () const
 get the member m_nbins_D2 More...
 
virtual double shift_D2 () const
 get the member m_shift_D2 More...
 
virtual double sMin () const
 get the minimum separation More...
 
virtual double sMax () const
 get the the minimum separation More...
 
virtual double sMin_D1 () const
 get the minimum separation in the first dimension More...
 
virtual double sMax_D1 () const
 get the the minimum separation in the first dimension More...
 
virtual double sMin_D2 () const
 get the minimum separation in the second dimension More...
 
virtual double sMax_D2 () const
 get the the minimum separation in the second dimension More...
 
virtual void set_PP2D (const int i, const int j, const double pp)
 set the member m_PP2D[i][j] More...
 
virtual void set_PP2D_weighted (const int i, const int j, const double pp)
 set the member m_PP2D_weighted[i][j] More...
 
virtual void add_data2D (const int i, const int j, const std::vector< double > data)
 set the protected members by adding new 2D data More...
 
virtual void add_data2D (const int i, const int j, const std::shared_ptr< pairs::Pair > pair, const double ww=1.)
 set the protected members by adding new 2D data More...
 
virtual void get (const std::shared_ptr< catalogue::Object > obj1, const std::shared_ptr< catalogue::Object > obj2, int &kk, double &wkk)
 get the pair index and weight More...
 
virtual void get (const std::shared_ptr< catalogue::Object > obj1, const std::shared_ptr< catalogue::Object > obj2, int &kk, double &cosmu, double &wkk)
 get the pair index and weight More...
 
virtual void get (const std::shared_ptr< catalogue::Object > obj1, const std::shared_ptr< catalogue::Object > obj2, int &ir, int &jr, double &ww)
 get the pair index and weight More...
 
virtual void set (const int kk, const double wkk, const double weight=1)
 set the pair vector More...
 
virtual void set (const double cosmu, const int kk, const double wkk, const double weight=1)
 set the pair vector More...
 
virtual void set (const int ir, const int jr, const double ww, const double weight=1)
 set the pair vector More...
 
virtual void put (const std::shared_ptr< catalogue::Object > obj1, const std::shared_ptr< catalogue::Object > obj2)=0
 estimate the distance between two objects and update the pair vector accordingly More...
 
 Pair ()=default
 default constuctor
 
virtual ~Pair ()=default
 default destructor
 

Protected Member Functions

Member functions used to set the binning parameters (customized in all the derived classes)
virtual void m_set_parameters_nbins ()=0
 set the binning parameters given the number of bins
 
virtual void m_set_parameters_binSize ()=0
 set the binning parameters given the bin size
 

Protected Attributes

std::vector< double > m_scale
 the binned scales
 
std::vector< double > m_PP1D
 the number of binned pairs
 
std::vector< double > m_PP1D_weighted
 the number of binned weighted pairs
 
binning parameters
double m_binSize_inv
 the inverse of the bin size
 
int m_nbins
 number of bins
 
double m_shift
 radial shift used to centre the output bins
 
- Protected Attributes inherited from cbl::pairs::Pair
Dim m_pairDim
 pair dimension
 
PairType m_pairType
 pair type
 
PairInfo m_pairInfo
 pair info
 
CoordinateUnits m_angularUnits
 angular units
 
FunctionDoubleDouble m_angularWeight
 angular weight function
 

Additional Inherited Members

- Static Public Member Functions inherited from cbl::pairs::Pair
static std::shared_ptr< PairCreate (const PairType type, const PairInfo info, const double Min, const double Max, const int nbins, const double shift, const CoordinateUnits angularUnits=CoordinateUnits::_radians_, FunctionDoubleDouble angularWeight=nullptr)
 static factory used to construct pairs of any type More...
 
static std::shared_ptr< PairCreate (const PairType type, const PairInfo info, const double Min, const double Max, const double binSize, const double shift, const CoordinateUnits angularUnits=CoordinateUnits::_radians_, FunctionDoubleDouble angularWeight=nullptr)
 static factory used to construct pairs of any type More...
 
static std::shared_ptr< PairCreate (const PairType type, const PairInfo info, const double Min_D1, const double Max_D1, const int nbins_D1, const double shift_D1, const double Min_D2, const double Max_D2, const int nbins_D2, const double shift_D2, const CoordinateUnits angularUnits=CoordinateUnits::_radians_, FunctionDoubleDouble angularWeight=nullptr)
 static factory used to construct pairs of any type More...
 
static std::shared_ptr< PairCreate (const PairType type, const PairInfo info, const double Min_D1, const double Max_D1, const double binSize_D1, const double shift_D1, const double Min_D2, const double Max_D2, const double binSize_D2, const double shift_D2, const CoordinateUnits angularUnits=CoordinateUnits::_radians_, FunctionDoubleDouble angularWeight=nullptr)
 static factory used to construct pairs of any type More...
 

Detailed Description

The class Pair1D.

This class is used to handle objects of type Pair1D .

Definition at line 56 of file Pair1D.h.

Constructor & Destructor Documentation

◆ Pair1D()

cbl::pairs::Pair1D::Pair1D ( const double  binSize,
const int  nbins,
const double  shift,
const CoordinateUnits  angularUnits,
std::function< double(double)>  angularWeight = nullptr 
)
inline

constructor

Parameters
binSizebin size
nbinsnumber of bins
shiftradial shift used to centre the output bins
angularUnitsangular units
angularWeightangular weight function

Definition at line 127 of file Pair1D.h.

Member Function Documentation

◆ add_data1D() [1/2]

void cbl::pairs::Pair1D::add_data1D ( const int  i,
const std::shared_ptr< pairs::Pair pair,
const double  ww = 1. 
)
overridevirtual

set the protected member by adding new data

Parameters
ithe bin index
pairpair pointer to an object of class Pair
wwa multiplicative factor used for bootstrap

Reimplemented from cbl::pairs::Pair.

Reimplemented in cbl::pairs::Pair1D_extra.

Definition at line 611 of file Pair1D.cpp.

◆ add_data1D() [2/2]

void cbl::pairs::Pair1D::add_data1D ( const int  i,
const std::vector< double >  data 
)
overridevirtual

set the protected member by adding new data

Parameters
ithe bin index
datathe number of pairs in the bin

Reimplemented from cbl::pairs::Pair.

Reimplemented in cbl::pairs::Pair1D_extra.

Definition at line 601 of file Pair1D.cpp.

◆ binSize_inv()

double cbl::pairs::Pair1D::binSize_inv ( ) const
inlineoverridevirtual

get the protected member Pair1D::m_binSize_inv

Returns
the inverse of the bin size

Reimplemented from cbl::pairs::Pair.

Definition at line 195 of file Pair1D.h.

◆ nbins()

int cbl::pairs::Pair1D::nbins ( ) const
inlineoverridevirtual

get the protected member Pair1D::m_nbins

Returns
the number of bins

Reimplemented from cbl::pairs::Pair.

Definition at line 201 of file Pair1D.h.

◆ PP1D() [1/2]

std::vector<double> cbl::pairs::Pair1D::PP1D ( ) const
inlineoverridevirtual

get the protected member Pair1D::m_PP1D

Returns
the vector containing the binned number of pairs

Reimplemented from cbl::pairs::Pair.

Definition at line 175 of file Pair1D.h.

◆ PP1D() [2/2]

double cbl::pairs::Pair1D::PP1D ( const int  i) const
inlineoverridevirtual

get the protected member Pair1D::m_PP1D[i]

Parameters
ithe bin index
Returns
the number of pairs in the i-th bin

Reimplemented from cbl::pairs::Pair.

Definition at line 169 of file Pair1D.h.

◆ PP1D_weighted() [1/2]

std::vector<double> cbl::pairs::Pair1D::PP1D_weighted ( ) const
inlineoverridevirtual

get the protected member Pair1D::m_PP1D

Returns
the vector containing the binned number of weighted pairs

Reimplemented from cbl::pairs::Pair.

Definition at line 189 of file Pair1D.h.

◆ PP1D_weighted() [2/2]

double cbl::pairs::Pair1D::PP1D_weighted ( const int  i) const
inlineoverridevirtual

get the protected member Pair1D::m_PP1D_weighted[i]

Parameters
ithe bin index
Returns
the number of weighted pairs in the i-th bin

Reimplemented from cbl::pairs::Pair.

Definition at line 182 of file Pair1D.h.

◆ reset()

void cbl::pairs::Pair1D::reset ( )
overridevirtual

reset the pair counts

set to 0 the m_PP1D and m_PP1D_weighted vector elements

Implements cbl::pairs::Pair.

Definition at line 46 of file Pair1D.cpp.

◆ scale() [1/2]

std::vector<double> cbl::pairs::Pair1D::scale ( ) const
inlineoverridevirtual

get the protected member Pair1D::m_scale

Returns
the vector containing the binned scales

Reimplemented from cbl::pairs::Pair.

Definition at line 162 of file Pair1D.h.

◆ scale() [2/2]

double cbl::pairs::Pair1D::scale ( const int  i) const
inlineoverridevirtual

get the protected member Pair1D::m_scale[i]

Parameters
ithe bin index
Returns
the i-th binned scale

Reimplemented from cbl::pairs::Pair.

Definition at line 156 of file Pair1D.h.

◆ set_PP1D()

void cbl::pairs::Pair1D::set_PP1D ( const int  i,
const double  pp 
)
inlinevirtual

set the protected member Pair1D::m_PP1D[i]

Parameters
ithe bin index
ppthe number of pairs in the bin

Reimplemented from cbl::pairs::Pair.

Definition at line 241 of file Pair1D.h.

◆ set_PP1D_weighted()

void cbl::pairs::Pair1D::set_PP1D_weighted ( const int  i,
const double  pp 
)
inlinevirtual

set the protected member Pair1D::m_PP1D_weighted[i]

Parameters
ithe bin index
ppthe number of weighted pairs in the bin

Reimplemented from cbl::pairs::Pair.

Definition at line 249 of file Pair1D.h.

◆ set_scale()

void cbl::pairs::Pair1D::set_scale ( const int  i,
const double  ss 
)
inline

set the protected member Pair1D::m_scale[i]

Parameters
ithe bin index
ssthe scale value

Definition at line 233 of file Pair1D.h.

◆ shift()

double cbl::pairs::Pair1D::shift ( ) const
inlineoverridevirtual

get the protected member Pair1D::m_shift

Returns
the radial shift used to centre the output bins

Reimplemented from cbl::pairs::Pair.

Definition at line 207 of file Pair1D.h.

◆ Sum()

void cbl::pairs::Pair1D::Sum ( const std::shared_ptr< Pair pair,
const double  ww = 1 
)
overridevirtual

The documentation for this class was generated from the following files: