![]() |
CosmoBolognaLib
Free Software C++/Python libraries for cosmological calculations
|
#include <Data1D.h>
Public Member Functions | |
Constructors/destructors | |
Data1D () | |
default constructor | |
Data1D (const std::string input_file, const int skip_nlines=0, const std::vector< int > column={1}, const std::vector< int > column_data={}, const std::vector< int > column_errors={}, const std::vector< int > column_edges={}) | |
constructor which reads the data from file More... | |
Data1D (const std::vector< double > x, const std::vector< double > data, const double val=-1, const std::vector< double > bin_edges_x={}) | |
constructor which gets the data from input vectors More... | |
Data1D (const std::vector< double > x, const std::vector< double > data, const std::vector< double > error, const double val=-1, const std::vector< double > bin_edges_x={}) | |
constructor which gets both the data and the errors from input vectors More... | |
Data1D (const std::vector< double > x, const std::vector< double > data, const std::vector< std::vector< double >> covariance, const double val=-1, const std::vector< double > bin_edges_x={}) | |
constructor which gets both the data and the covariance matrix from input vectors More... | |
virtual | ~Data1D ()=default |
default destructor | |
std::shared_ptr< Data > | as_factory () |
static factory used to construct objects of class Data1D More... | |
Member functions used to get the private members | |
int | xsize () const |
get the number of points along x More... | |
double | xx (const int i) const override |
get the value of x at the i-th bin More... | |
std::vector< double > | xx () const override |
get the x std::vector More... | |
std::vector< std::vector< double > > | IndipendentVariable (const int i=-1, const int j=-1) const override |
get the independet variable, to be used in model computation More... | |
void | get_data (std::vector< double > &data) const override |
get data for Data1D More... | |
void | get_error (std::vector< double > &error) const override |
get standard deviation for Data1D More... | |
Member functions used to set the private members | |
void | set_xx (const std::vector< double > x) |
set interval variable m_x More... | |
void | set_edges_xx (const std::vector< double > edges) override |
set interval variable m_edges_xx More... | |
Member functions for Input/Output | |
void | read (const std::string input_file, const int skip_nlines=0, const std::vector< int > column={1}, const std::vector< int > column_data={}, const std::vector< int > column_errors={}, const std::vector< int > column_edges={}) override |
read the data More... | |
virtual void | Print (const int precision=4) const override |
print the data on screen More... | |
void | write (const std::string dir, const std::string file, const std::string header, const int prec=4, const int ww=8, const int rank=0) const override |
write the data More... | |
void | write_covariance (const std::string dir, const std::string file, const int precision=10) const override |
write the covariance More... | |
Member functions for data cut | |
std::shared_ptr< Data > | cut (const double xmin, const double xmax) const override |
cut the data More... | |
std::shared_ptr< Data > | cut (const std::vector< bool > mask) const |
cut the data, for Data1D More... | |
![]() | |
double | correlation (const int i, const int j) const |
get the value of the data correlation at index i,j More... | |
std::vector< std::vector< double > > | correlation () const |
get the value of the data correlation at index i,j More... | |
double | inverse_covariance (const int i, const int j) const |
get the value of data inverse_covariance at index i,j More... | |
std::vector< std::vector< double > > | inverse_covariance () const |
get the m_inverse_covariance std::vector More... | |
void | reset (const int ndata) |
reset data object with new empty arrays large enough to store ndata data More... | |
virtual void | invert_covariance (const double prec, const int Nres) |
invert the covariance matrix More... | |
virtual double | xx (const int i, const int j) const |
get value of x at position i,j, for Data1D_collection More... | |
virtual double | yy (const int i) const |
get value of y at index i, for Data2D More... | |
virtual std::vector< double > | yy () const |
get the y std::vector More... | |
virtual double | data (const int i, const int j) const |
get data at index i,j for Data1D_collection, Data2D More... | |
virtual DataType | dataType () const |
get the data type More... | |
virtual int | ndata () const |
the total number of data More... | |
virtual double | data (const int i) const |
get data at index i More... | |
virtual std::vector< double > | data () const |
get data More... | |
virtual double | error (const int i) const |
get value of data standard deviation at index i More... | |
virtual std::vector< double > | error () const |
get standard deviation More... | |
virtual double | covariance (const int i, const int j) const |
get the value of the data covariance at index i,j More... | |
virtual std::vector< std::vector< double > > | covariance () const |
get the m_covariance vector More... | |
virtual double | edges_xx (const int i) const |
get value of x variable bin edge at index i More... | |
virtual std::vector< double > | edges_xx () const |
get x variable bin edges More... | |
virtual double | edges_yy (const int i) const |
get value of y variable bin edge at index i More... | |
virtual std::vector< double > | edges_yy () const |
get y variable bin edges More... | |
virtual void | get_data (std::vector< std::vector< double >> &data) const |
get data for Data1D_collection, Data2D More... | |
virtual double | error (const int i, const int j) const |
get value of f(x) error at index i,j for Data1D_collection, Data2D More... | |
virtual void | get_error (std::vector< std::vector< double >> &error) const |
get standard deviation for Data1D_Collection, Data2D More... | |
virtual double | extra_info (const int i, const int j) const |
return the value of the extra information at index i,j More... | |
virtual std::vector< std::vector< double > > | extra_info () const |
return the m_exta_info std::vector More... | |
virtual void | set_yy (const std::vector< double > y) |
set interval variable m_y, for Data2D More... | |
virtual void | set_xx (const int i, const std::vector< double > x) |
set interval variable m_x in the i-th dataset, for Data1D_collection More... | |
virtual void | set_xx (const std::vector< std::vector< double >> x) |
set interval variable m_x, for Data1D_collection More... | |
virtual void | set_edges_yy (const std::vector< double > edges) |
set interval variable m_edges_yy More... | |
virtual void | set_data (const std::vector< std::vector< double >> data) |
set interval variable m_data, for Data1D_collection, Data2D More... | |
virtual void | set_extra_info (const std::vector< std::vector< double >> extra_info) |
set interval variable m_error_fx More... | |
void | set_data (const std::vector< double > data) |
set interval variable data More... | |
void | set_error (const std::vector< double > error) |
set interval variable m_error_fx More... | |
void | set_error (const std::vector< std::vector< double >> covariance) |
set interval variable m_error_fx More... | |
void | set_covariance (const std::string filename, const int cov_col=2, const int skipped_lines=0) |
set the interval variable m_covariance, reading from an input file More... | |
void | set_covariance (const double value, const int i, const int j) |
set interval the variable m_covariance More... | |
void | set_covariance (const std::vector< std::vector< double >> covariance) |
set interval the variable m_covariance More... | |
void | set_covariance (const std::vector< double > error) |
set interval the variable m_covariance More... | |
virtual int | ndata (const int i) const |
function that returns number of data for one dataset, for Data1D_collection More... | |
virtual int | ndataset () const |
function that returns total number of datasets More... | |
virtual int | xsize (const int i) const |
get the number of points along x More... | |
virtual int | ysize () const |
get the number of points along y More... | |
virtual void | read (const std::vector< std::string > input_file, const int skip_nlines=0, const std::vector< int > column={0}, const std::vector< int > column_data={}, const std::vector< int > column_errors={}, const std::vector< int > column_edges={}) |
read the data from a set of input files More... | |
virtual void | write (const std::string dir, const std::string file, const std::string header, const bool full, const int prec=10, const int ww=8, const int rank=0) const |
write the data More... | |
virtual void | write (const std::string dir, const std::vector< std::string > files, const std::string header, const int prec=10, const int ww=8, const int rank=0) const |
write the data More... | |
void | cut (const std::vector< bool > mask, std::vector< double > &data, std::vector< double > &error, std::vector< std::vector< double >> &covariance_matrix) const |
cut the dataset using a mask More... | |
virtual std::shared_ptr< Data > | cut (const double xmin, const double xmax, const double ymin, const double ymax) const |
cut the data, for Data2D More... | |
virtual std::shared_ptr< Data > | cut (const int dataset, const double xmin, const double xmax) const |
cut the data, for Data1D_collection More... | |
virtual std::shared_ptr< Data > | cut (const std::vector< double > xmin, const std::vector< double > xmax) const |
cut the data, for Data1D_collection type More... | |
Data ()=default | |
default constructor | |
Data (const DataType dataType) | |
constructor which sets only the data type More... | |
Data (const DataType dataType, const int ndata) | |
constructor which sets both the data type and the number of data More... | |
Data (const DataType dataType, const std::vector< double > data) | |
constructor which gets the data from an input vector More... | |
Data (const DataType dataType, const std::vector< double > data, const std::vector< double > error) | |
constructor which gets both the data and the errors from input vectors More... | |
Data (const DataType dataType, const std::vector< double > data, const std::vector< std::vector< double >> covariance) | |
constructor which gets both the data and the covariance matrix from input vectors More... | |
virtual | ~Data ()=default |
default destructor | |
Protected Attributes | |
int | m_xsize |
number of points along x | |
Data input | |
std::vector< double > | m_x |
ordered x axis points | |
![]() | |
DataType | m_dataType |
type of data | |
int | m_ndata |
number of data | |
std::vector< double > | m_data |
data values | |
std::vector< double > | m_error |
standard deviations | |
std::vector< double > | m_edges_xx |
bin edges for the x variable | |
std::vector< double > | m_edges_yy |
bin edges for the y variable | |
std::vector< std::vector< double > > | m_covariance |
covariance matrix | |
std::vector< std::vector< double > > | m_inverse_covariance |
inverse covariance matrix | |
Additional Inherited Members | |
![]() | |
static std::shared_ptr< Data > | Create (const DataType dataType) |
static factory used to construct objects of class Data1D More... | |
![]() | |
void | set_dataType (const DataType dataType) |
set the data type More... | |
The class Data1D.
"Headers/Data1D.h"
This is the base class used to manage 1D data
|
inline |
constructor which reads the data from file
input_file | the input data file |
skip_nlines | the header lines to be skipped |
column | vector containing the column of x values in the input file; if it is not provided, the first column will be used by default |
column_data | the column of data values in the input file; the size of column_data is the number of data to be read (e.g. the size should be 3 in the case of the 3 multipole moments of the two-point correlation function); if the size of column_data is larger than 1, more than 1 data vectors are read and then added one after the other in a single data object; if column_data is not provided, the first column after the column of x values will be used by default, assuming that only 1 data vector has to be read |
column_errors | the column of error values in the input file; the size of column_error must be equal to the size of column_data; if the size of column_error is larger than 1, more than 1 error vectors are read and then added one after the other in a single data object; if column_random is not provided, the second column after the column of x values will be used by default, assuming that only 1 random vector has to be read; if the input file has only 2 columns, the errors will be set to 1 |
column_edges | vector containing the columns of x bin edge values in the input file; if it is not provided, the third and four columns after the column of x values will be used; if these columns do no exist the edges are not read |
|
inline |
|
inline |
constructor which gets both the data and the errors from input vectors
x | vector containing the x values |
data | vector containing the data |
error | vector containing the errors |
val | unused variable, only used to distinguish the different constructors of the class |
bin_edges_x | the x variable bin edges |
|
inline |
constructor which gets both the data and the covariance matrix from input vectors
x | vector containing the x values |
data | vector containing the data |
covariance | matrix containing the covariance |
val | unused variable, only used to distinguish the different constructors of the class |
bin_edges_x | the x variable bin edges |
|
virtual |
static factory used to construct objects of class Data1D
Reimplemented from cbl::data::Data.
Reimplemented in cbl::data::Data1D_extra.
Definition at line 260 of file Data1D.cpp.
|
overridevirtual |
cut the data
xmin | minumum value for the independent variable x |
xmax | maximum value for the independent variable x |
Reimplemented from cbl::data::Data.
Reimplemented in cbl::data::Data1D_extra.
Definition at line 246 of file Data1D.cpp.
|
virtual |
cut the data, for Data1D
[in] | mask | vector containing values to be masked |
Reimplemented from cbl::data::Data.
Reimplemented in cbl::data::Data1D_extra.
Definition at line 215 of file Data1D.cpp.
|
inlineoverridevirtual |
get data for Data1D
[out] | data | vector containing the dataset |
Reimplemented from cbl::data::Data.
|
inlineoverridevirtual |
get standard deviation for Data1D
[out] | error | vector containing the standard deviation |
Reimplemented from cbl::data::Data.
|
inlineoverridevirtual |
get the independet variable, to be used in model computation
i | index of the extra_info containing the independent variable |
j | index of the extra_info containing the independent variable, not used |
Reimplemented from cbl::data::Data.
Reimplemented in cbl::data::Data1D_extra.
|
overridevirtual |
print the data on screen
precision | the float precision |
Reimplemented from cbl::data::Data.
Reimplemented in cbl::data::Data1D_extra.
Definition at line 154 of file Data1D.cpp.
|
overridevirtual |
read the data
input_file | input data file |
skip_nlines | the header lines to be skipped |
column | vector containing the column of x values in the input file; if it is not provided, the first column will be used by default |
column_data | the column of data values in the input file; the size of column_data is the number of data to be read (e.g. the size should be 3 in the case of the 3 multipole moments of the two-point correlation function); if the size of column_data is larger than 1, more than 1 data vectors are read and then added one after the other in a single data object; if column_data is not provided, the first column after the column of x values will be used by default, assuming that only 1 data vector has to be read |
column_errors | the column of error values in the input file; the size of column_error must be equal to the size of column_data; if the size of column_error is larger than 1, more than 1 error vectors are read and then added one after the other in a single data object; if column_random is not provided, the second column after the column of x values will be used by default, assuming that only 1 random vector has to be read; if the input file has only 2 columns, the errors will be set to 1 |
column_edges | vector containing the columns of x bin edge values in the input file; if it is not provided, the third and four columns after the column of x values will be used; if these columns do no exist the edges are not read |
Reimplemented from cbl::data::Data.
Reimplemented in cbl::data::Data1D_extra.
Definition at line 56 of file Data1D.cpp.
|
inlineoverridevirtual |
set interval variable m_edges_xx
edges | std::vector containing the x bin edges |
Reimplemented from cbl::data::Data.
|
virtual |
set interval variable m_x
x | vector containing x points |
Reimplemented from cbl::data::Data.
Definition at line 45 of file Data1D.cpp.
|
overridevirtual |
write the data
dir | output directory |
file | output file |
header | text with the variable names to be written at the first line of the output file |
prec | the float precision |
ww | number of characters to be used as field width |
rank | cpu index (for MPI usage) |
Reimplemented from cbl::data::Data.
Reimplemented in cbl::data::Data1D_extra.
Definition at line 165 of file Data1D.cpp.
|
overridevirtual |
write the covariance
dir | the output directory |
file | the output file |
precision | the float precision |
Reimplemented from cbl::data::Data.
Definition at line 190 of file Data1D.cpp.
|
inlinevirtual |
get the number of points along x
Reimplemented from cbl::data::Data.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
get the value of x at the i-th bin
i | index |
Reimplemented from cbl::data::Data.