33 #ifndef __LOGNORMALF__
34 #define __LOGNORMALF__
67 std::vector<std::shared_ptr<catalogue::Catalogue>>
m_data;
70 std::vector<std::shared_ptr<catalogue::Catalogue>>
m_random;
163 std::vector<std::vector<std::shared_ptr<catalogue::Catalogue>>>
m_LNCat;
201 void m_set_fields (
const bool use_random,
const bool doRSD);
268 void m_extract_points_lognormal_field (
const double nObjects,
const bool doRSD,
const std::vector<double> redshift,
const std::vector<double>
bias,
const std::shared_ptr<data::Field3D> visibility,
const std::string file_out);
286 LogNormalFull (
const cosmology::Cosmology cosmology,
const double redshift_min=0.,
const double redshift_max=10.,
const int n_redshift_bins=500,
const std::string author=
"CAMB");
303 LogNormalFull (
const double rmin,
const double xMin,
const double xMax,
const double yMin,
const double yMax,
const double zMin,
const double zMax,
const cosmology::Cosmology cosmology,
const double redshift_min=0.,
const double redshift_max=10.,
const int n_redshift_bins=500,
const std::string author=
"CAMB");
316 LogNormalFull (
const double rmin,
const std::vector<std::shared_ptr<catalogue::Catalogue>> random,
const double pad,
const cosmology::Cosmology cosmology,
const double redshift_min=0.,
const double redshift_max=10.,
const int n_redshift_bins=500,
const std::string author=
"CAMB");
331 void set_cosmo_function (
const cosmology::Cosmology cosmology,
const double redshift_min=0.,
const double redshift_max=10.,
const int n_redshift_bins=500,
const std::string author=
"CAMB");
343 void set_grid_parameters (
const double rmin,
const double xMin,
const double xMax,
const double yMin,
const double yMax,
const double zMin,
const double zMax);
351 void set_grid_parameters (
const double rmin,
const std::vector<std::shared_ptr<catalogue::Catalogue>> random,
const double pad);
385 void generate_lognormal (
const int start,
const int stop,
const bool doRSD,
const double smoothing_radius,
const std::vector<double> nObjects,
const std::vector<std::vector<double>> redshift,
const std::vector<std::vector<double> >
bias,
const std::string dir,
const std::string filename,
const int seed,
const bool set_fields=
true,
const bool use_random=
true);
int m_nx
the number of cells along x-axis
std::shared_ptr< data::Field3D > m_rsd_displacement
vector containing pointers to the LogNormal realizations
int m_nzF
the number of cells along z-axis, Fourier space
double m_yMax
the maximum y-value
int m_nCells_eff
the effective cell numbers
std::vector< std::vector< std::shared_ptr< catalogue::Catalogue > > > m_LNCat
vector containing pointers to the LogNormal realizations
std::string m_author
std::string containing the author of the model power spectrum (i.e. the Boltzmann solver)
double m_zMax
the maximum z-value
bool m_NL
false compute the linear power spectrum; true compute the non-linear power spectrum
void m_set_grid_parameters()
set the grid parameters
double m_xMin
the minimum x-value
void m_extract_points_lognormal_field(const double nObjects, const bool doRSD, const std::vector< double > redshift, const std::vector< double > bias, const std::shared_ptr< data::Field3D > visibility, const std::string file_out)
extract points from lognormal density fields
double m_sigma2G
density field variance
std::shared_ptr< glob::FuncGrid > m_func_pk
interpolator for
std::shared_ptr< cosmology::Cosmology > m_cosmology
pointer to the fiducial cosmology
void m_set_fields(const bool use_random, const bool doRSD)
set the fields
int m_nz
the number of cells along z-axis
std::shared_ptr< data::Field3D > m_visibility
vector containing pointers to the LogNormal realizations
std::vector< std::shared_ptr< glob::FuncGrid > > m_func_bias
interpolator for
double m_zMin
the minimum z-value
bool m_use_visibility
1 use the visibility mask, 0 don't use the visibility mask
std::shared_ptr< data::Field3D > m_density
vector containing pointers to the LogNormal realizations
void set_cosmo_function(const cosmology::Cosmology cosmology, const double redshift_min=0., const double redshift_max=10., const int n_redshift_bins=500, const std::string author="CAMB")
set cosmological functions
std::shared_ptr< data::Field3D > m_potential
vector containing pointers to the LogNormal realizations
std::shared_ptr< glob::FuncGrid > m_func_growth_factor
interpolator for
std::shared_ptr< data::Field3D > m_densityG
vector containing pointers to the LogNormal realizations
std::shared_ptr< data::Field3D > m_displacement
vector containing pointers to the LogNormal realizations
void m_set_visibility_from_random_RSD()
set the visibility for redshift space mocks
std::vector< std::shared_ptr< catalogue::Catalogue > > m_random
pointer to the random catalogues
void m_reset_fields(const bool use_random, const bool doRSD)
reset the fields
~LogNormalFull()=default
default destructor
int m_nLN
the number of log-normal realizations to produce/read
void m_set_radial_velocity()
set the radial velocity field
double m_yMin
the minimum y-value
void m_set_visibility_from_random()
set the visibility from random catalogue
std::default_random_engine m_generator
generator for random numbers
double m_rsmooth
smoothing radius
std::shared_ptr< data::Field3D > m_clustering_signal
the clustering signal
std::vector< std::shared_ptr< data::Field3D > > m_visibility_random
vector containing pointers to the LogNormal realizations
void generate_lognormal(const int start, const int stop, const bool doRSD, const double smoothing_radius, const std::vector< double > nObjects, const std::vector< std::vector< double >> redshift, const std::vector< std::vector< double > > bias, const std::string dir, const std::string filename, const int seed, const bool set_fields=true, const bool use_random=true)
generate lognormal realizations
std::shared_ptr< data::Field3D > m_velocity
vector containing pointers to the LogNormal realizations
std::shared_ptr< glob::FuncGrid > m_func_redshift
interpolator for
LogNormalFull()=default
default constructor
std::shared_ptr< glob::FuncGrid > m_func_growth_rate
interpolator for
void m_set_density_field(const double smoothing_radius)
set the density field
std::shared_ptr< data::Field3D > m_los_velocity
vector containing pointers to the LogNormal realizations
double m_xMax
the maximum x-value
std::vector< std::shared_ptr< catalogue::Catalogue > > m_data
pointer to the input datasets
std::shared_ptr< glob::FuncGrid > m_func_DC
interpolator for
void m_set_potential()
set the gravitational potential field
int m_ny
the number of cells along y-axis
double m_rmin
approximate cell size of the density field
void m_set_visibility()
set the visibility
std::shared_ptr< glob::FuncGrid > m_func_HH
interpolator for
void set_grid_parameters(const double rmin, const double xMin, const double xMax, const double yMin, const double yMax, const double zMin, const double zMax)
set grid parameters
void m_set_clustering_signal()
set the target dark matter clustering signal
double bias(const double Mmin, const double sigmalgM, const double M0, const double M1, const double alpha, const std::shared_ptr< void > inputs)
the mean galaxy bias
The global namespace of the CosmoBolognaLib