Bayeux
3.4.1
Core Foundation library for SuperNEMO
|
Tabulated function. More...
#include <bayeux/mygsl/tabulated_function.h>
Public Types | |
typedef std::map< double, double > | points_map_type |
Public Types inherited from mygsl::i_unary_function | |
enum | write_options_type { wo_none = 0, wo_data_index = 0x1, wo_skip_nan = 0x2, wo_skip_inf = 0x4, wo_skip_onzd = 0x8, wo_skip_odod = 0x10, wo_append = 0x20, wo_default = wo_none } |
Options for writing sampled function in an ASCII stream. More... | |
Public Types inherited from datatools::i_tree_dumpable | |
enum | ostream_type { OSTREAM_COUT = 1, OSTREAM_CERR = 2, OSTREAM_CLOG = 3 } |
Enumeration for standard output streams. More... | |
Public Member Functions | |
virtual bool | has_explicit_domain_of_definition () const |
Check if the function has an explicit domain of definition (default: false) More... | |
virtual bool | is_in_domain_of_definition (double x_) const |
Check if a value is in the domain of definition of the function (default: true) More... | |
tabulated_function (const std::string &interp_name_="") | |
Default constructor. More... | |
tabulated_function (const tabulated_function &tab_func_) | |
Copy constructor. More... | |
virtual | ~tabulated_function () |
Destructor. More... | |
tabulated_function & | operator= (const tabulated_function &tab_func_) |
Assignement. More... | |
bool | is_verbose () const |
Check verbosity flag. More... | |
void | set_verbose (bool v_=true) |
Set verbosity flag. More... | |
bool | is_valid (double x_) const |
Check validity. More... | |
const std::string & | interpolator_name () const |
Return the name of the interpolation algorithm (GSL) More... | |
const points_map_type & | points () const |
Return the collection of points. More... | |
bool | export_to_vectors (std::vector< double > &keys_, std::vector< double > &values_) const |
Export to vectors of doubles. More... | |
void | scale (double s_) |
Scale the function by a given factor. More... | |
size_t | size () const |
Return the size of the collection of points. More... | |
bool | is_table_locked () const |
Check the table lock flag. More... | |
void | lock_table (const std::string &interp_name_="") |
Lock the table using a given interpolation algorithm (GSL) More... | |
void | unlock_table () |
Unlock the table. More... | |
void | relock_table (const std::string &interp_name_="") |
Relock the table using a given interpolation algorithm (GSL) More... | |
void | add_point (double x_, double y_, bool lock_after_=false) |
Add a point to the collection. More... | |
double | x_min () const |
Return the minimum x value from the collection of points. More... | |
double | x_max () const |
Return the maximum x value from the collection of points. More... | |
void | load_from_file (const std::string &filename_, uint32_t options_=0) |
Load the collection of points from a file. More... | |
virtual void | tabfunc_load (std::istream &in_, void *context_=0) |
Load from an input stream. More... | |
virtual void | tabfunc_store (std::ostream &out_, void *context_=0) const |
Store to an output stream. More... | |
void | print_points (std::ostream &out_, const std::string &header_comment_="", const std::string &footer_comment_="") const |
Print points. More... | |
virtual bool | is_initialized () const |
Check initialization status. More... | |
virtual void | initialize (const datatools::properties &config_, const unary_function_dict_type &functors_) |
Initialization from a container of parameters and a dictionary of functors. More... | |
void | reset () |
Reset the functor. More... | |
virtual void | tree_dump (std::ostream &out_=std::clog, const std::string &title_="", const std::string &indent_="", bool inherit_=false) const |
Smart printing. More... | |
Public Member Functions inherited from mygsl::i_unary_function | |
i_unary_function (double epsilon_=0.0) | |
Constructor. More... | |
virtual | ~i_unary_function () |
Destructor. More... | |
virtual double | eval (double x_) const |
The function evaluation method. More... | |
double | evaluate (double x_) const |
The function evaluation method. More... | |
virtual double | eval_no_check (double x_) const |
The function evaluation method with any value check. More... | |
virtual double | get_non_zero_domain_min () const |
The minimum bound of the non-zero domain (default is minus infinity) More... | |
bool | has_non_zero_domain_min () const |
Check the minimum bound of the non-zero domain. More... | |
virtual double | get_non_zero_domain_max () const |
The maximum bound of the non-zero domain (default is plus infinity) More... | |
bool | has_non_zero_domain_max () const |
Check the maximum bound of the non-zero domain. More... | |
bool | is_in_non_zero_domain (double x_) const |
Check if a value is in the non-zero domain. More... | |
bool | is_in_zero_domain (double x_) const |
Check if a value is in the zero domain. More... | |
bool | has_zero_domain () const |
Check if the functor has an explicit zero domain. More... | |
double | operator() (double x_) const |
Standard C++ functor interface. More... | |
void | write_ascii (std::ostream &fout_, double min_, double max_, unsigned int nsamples_, int x_precision_=16, int fx_precision_=16, uint32_t options_=wo_default) const |
Write the (x,y=f(x)) value pairs in an ASCII stream : More... | |
void | write_ascii_with_units (std::ostream &fout_, double min_, double max_, unsigned int nsamples_, double x_unit_, double fx_unit_, int x_precision_=16, int fx_precision_=16, uint32_t options_=wo_default) const |
Write the (x,y=f(x)) value pairs in an ASCII stream : More... | |
void | write_ascii_file (const std::string &filename_, double min_, double max_, unsigned int nsamples_, int x_precision_=16, int fx_precision_=16, uint32_t options_=wo_default) const |
Write the (x,y=f(x)) value pairs in an ASCII file (typical Gnuplot input) : More... | |
void | write_ascii_file_with_units (const std::string &filename_, double min_, double max_, unsigned int nsamples_, const std::string &x_unit_label_, const std::string &fx_unit_label_, int x_precision_=16, int fx_precision_=16, uint32_t options_=wo_default) const |
Write the (x,y=f(x)) value pairs in an ASCII file (typical Gnuplot input) : More... | |
void | set_epsilon (double) |
Set the precision. More... | |
double | get_epsilon () const |
Return the precision. More... | |
void | initialize_simple () |
Simple initialization. More... | |
void | initialize_standalone (const datatools::properties &config_) |
Initialization from a container of parameters. More... | |
Public Member Functions inherited from datatools::i_tree_dumpable | |
i_tree_dumpable () | |
Constructor. More... | |
virtual | ~i_tree_dumpable () |
Destructor. More... | |
virtual void | print_tree (std::ostream &out_=std::clog, const boost::property_tree::ptree &options_=empty_options()) const |
Main new interface method for printing. More... | |
void | print_tree_json (std::ostream &out_=std::clog, const std::string &json_options_="") const |
Printing with jsonized options. More... | |
void | print_tree_json (std::ostream &out_=std::clog, const char *json_options_=nullptr) const |
Printing with jsonized options. More... | |
void | tree_dump_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="", const bool inherit_=false) const |
void | tree_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="") const |
void | smart_print_id (const int out_type_=OSTREAM_CLOG, const std::string &title_="", const std::string &indent_="") const |
Public Member Functions inherited from datatools::i_cloneable | |
virtual i_cloneable * | clone (void) const =0 |
virtual | ~i_cloneable () |
template<class CandidateType > | |
bool | is_cloneable (const CandidateType &candidate_) |
Static Public Member Functions | |
static const std::string & | linear_interp_name () |
static const std::string & | polynomial_interp_name () |
static const std::string & | cspline_interp_name () |
static const std::string & | cspline_periodic_interp_name () |
static const std::string & | akima_interp_name () |
static const std::string & | akima_periodic_interp_name () |
static const std::string & | steffen_interp_name () |
static const std::string & | default_interp_name () |
static const std::string & | default_interpolator_name () |
Return the name of the default interpolation algorithm (GSL) More... | |
static bool | interpolator_name_is_valid (const std::string &name_) |
Check the validity of the name of the interpolation algorithm (GSL) More... | |
Static Public Member Functions inherited from mygsl::i_unary_function | |
static double | g_function (double x_, void *functor_) |
A generic static function to feed the GSL gsl_function interface: More... | |
Static Public Member Functions inherited from datatools::i_tree_dumpable | |
static const boost::property_tree::ptree & | empty_options () |
static boost::property_tree::ptree | make_base_print_options (const std::string &title_, const std::string &indent_="", const bool inherit_=false) |
static std::ostream & | last_skip_tag (std::ostream &out_) |
static std::ostream & | skip_tag (std::ostream &out_) |
static std::ostream & | last_tag (std::ostream &out_) |
static std::ostream & | tag (std::ostream &out_) |
Static Public Member Functions inherited from datatools::i_cloneable | |
template<class Copyable > | |
static Copyable * | clone_it (const Copyable &a_copyable) |
Protected Member Functions | |
virtual double | _eval (double x_) const |
Evaluation. More... | |
Protected Member Functions inherited from mygsl::i_unary_function | |
void | _base_initialize (const datatools::properties &config_, const unary_function_dict_type &functors_) |
void | _base_reset () |
void | _compute_auto_epsilon () |
void | _set_defaults () |
Set defaults attributes. More... | |
Additional Inherited Members | |
Static Public Attributes inherited from mygsl::i_unary_function | |
static const double | DEFAULT_EPSILON |
Default error. More... | |
static const double | AUTO_EPSILON |
Value for automatic computation of the error. More... | |
Tabulated function.
typedef std::map<double,double> mygsl::tabulated_function::points_map_type |
mygsl::tabulated_function::tabulated_function | ( | const std::string & | interp_name_ = "" | ) |
Default constructor.
mygsl::tabulated_function::tabulated_function | ( | const tabulated_function & | tab_func_ | ) |
Copy constructor.
|
virtual |
Destructor.
|
protectedvirtual |
Evaluation.
Implements mygsl::i_unary_function.
void mygsl::tabulated_function::add_point | ( | double | x_, |
double | y_, | ||
bool | lock_after_ = false |
||
) |
Add a point to the collection.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
Return the name of the default interpolation algorithm (GSL)
bool mygsl::tabulated_function::export_to_vectors | ( | std::vector< double > & | keys_, |
std::vector< double > & | values_ | ||
) | const |
Export to vectors of doubles.
|
virtual |
Check if the function has an explicit domain of definition (default: false)
Reimplemented from mygsl::i_unary_function.
|
virtual |
Initialization from a container of parameters and a dictionary of functors.
Reimplemented from mygsl::i_unary_function.
const std::string& mygsl::tabulated_function::interpolator_name | ( | ) | const |
Return the name of the interpolation algorithm (GSL)
|
static |
Check the validity of the name of the interpolation algorithm (GSL)
|
virtual |
Check if a value is in the domain of definition of the function (default: true)
Reimplemented from mygsl::i_unary_function.
|
virtual |
Check initialization status.
Reimplemented from mygsl::i_unary_function.
bool mygsl::tabulated_function::is_table_locked | ( | ) | const |
Check the table lock flag.
bool mygsl::tabulated_function::is_valid | ( | double | x_ | ) | const |
Check validity.
bool mygsl::tabulated_function::is_verbose | ( | ) | const |
Check verbosity flag.
|
static |
void mygsl::tabulated_function::load_from_file | ( | const std::string & | filename_, |
uint32_t | options_ = 0 |
||
) |
Load the collection of points from a file.
void mygsl::tabulated_function::lock_table | ( | const std::string & | interp_name_ = "" | ) |
Lock the table using a given interpolation algorithm (GSL)
tabulated_function& mygsl::tabulated_function::operator= | ( | const tabulated_function & | tab_func_ | ) |
Assignement.
const points_map_type& mygsl::tabulated_function::points | ( | ) | const |
Return the collection of points.
|
static |
void mygsl::tabulated_function::print_points | ( | std::ostream & | out_, |
const std::string & | header_comment_ = "" , |
||
const std::string & | footer_comment_ = "" |
||
) | const |
Print points.
void mygsl::tabulated_function::relock_table | ( | const std::string & | interp_name_ = "" | ) |
Relock the table using a given interpolation algorithm (GSL)
|
virtual |
Reset the functor.
Reimplemented from mygsl::i_unary_function.
void mygsl::tabulated_function::scale | ( | double | s_ | ) |
Scale the function by a given factor.
void mygsl::tabulated_function::set_verbose | ( | bool | v_ = true | ) |
Set verbosity flag.
size_t mygsl::tabulated_function::size | ( | ) | const |
Return the size of the collection of points.
|
static |
|
virtual |
Load from an input stream.
|
virtual |
Store to an output stream.
|
virtual |
Smart printing.
Reimplemented from mygsl::i_unary_function.
void mygsl::tabulated_function::unlock_table | ( | ) |
Unlock the table.
double mygsl::tabulated_function::x_max | ( | ) | const |
Return the maximum x value from the collection of points.
double mygsl::tabulated_function::x_min | ( | ) | const |
Return the minimum x value from the collection of points.