Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
numeric::interpolation::spline::Interpolator Class Referenceabstract

#include <Interpolator.hh>

Inheritance diagram for numeric::interpolation::spline::Interpolator:
Inheritance graph
[legend]

Public Member Functions

 ~Interpolator () override
 Automatically generated virtual destructor for class deriving directly from VirtualBase. More...
 
 Interpolator ()
 
virtual InterpolatorOP clone () const =0
 
virtual void interpolate (numeric::Real x, numeric::Real &y, numeric::Real &dy) const =0
 
void set_lb_function (numeric::Real const &lb, numeric::Real const &slope, numeric::Real const &intercept)
 set a linear function describing the behavior of the interpolator after a given lower bound. This lower bound can be distinct from the lb of the spline More...
 
void set_ub_function (numeric::Real const &ub, numeric::Real const &slope, numeric::Real const &intercept)
 set a linear function describing the behavior of the interpolator after a given upper bound. This upper bound can be distinct from the ub of the spline More...
 
bool has_lb_function () const
 return true if the interpolator has a defined lower bound function More...
 
bool has_ub_function () const
 return false if the interpolator has a defined upper bound function More...
 
numeric::Real get_lb_function_cutoff () const
 get the lower bound cutoff More...
 
numeric::Real get_ub_function_cutoff () const
 get the upper bound cutoff More...
 
void compute_lb_function_solution (numeric::Real x, numeric::Real &y) const
 compute the y value of the lower bound function given an x value More...
 
void compute_ub_function_solution (numeric::Real x, numeric::Real &y) const
 compute the y value of the lower bound function given an x value More...
 
virtual utility::json_spirit::Value serialize () const
 serialize the Interpolator to a json_spirit object More...
 
virtual void deserialize (utility::json_spirit::mObject data)
 deserialize a json_spirit object to a Interpolator More...
 
virtual bool operator== (Interpolator const &other) const
 
virtual bool same_type_as_me (Interpolator const &other) const
 
- Public Member Functions inherited from utility::VirtualBase
 VirtualBase ()=default
 Default constructor. More...
 
virtual ~VirtualBase ()=default
 The virtual destructor is one of the main reasons for the VirtualBase class. More...
 
 VirtualBase (VirtualBase const &)=default
 
 VirtualBase (VirtualBase &&)=default
 
VirtualBaseoperator= (VirtualBase const &)=default
 
VirtualBaseoperator= (VirtualBase &&)=default
 

Private Attributes

bool has_lb_function_
 
bool has_ub_function_
 
numeric::Real lb_cutoff_
 
numeric::Real ub_cutoff_
 
numeric::Real lb_slope_
 
numeric::Real ub_slope_
 
numeric::Real lb_intercept_
 
numeric::Real ub_intercept_
 

Constructor & Destructor Documentation

numeric::interpolation::spline::Interpolator::~Interpolator ( )
overridedefault

Automatically generated virtual destructor for class deriving directly from VirtualBase.

Auto-generated virtual destructor

numeric::interpolation::spline::Interpolator::Interpolator ( )

Member Function Documentation

virtual InterpolatorOP numeric::interpolation::spline::Interpolator::clone ( ) const
pure virtual
void numeric::interpolation::spline::Interpolator::compute_lb_function_solution ( numeric::Real  x,
numeric::Real y 
) const

compute the y value of the lower bound function given an x value

References lb_intercept_, and lb_slope_.

Referenced by numeric::interpolation::spline::SimpleInterpolator::interpolate(), and numeric::interpolation::spline::CompoundInterpolator::interpolate().

void numeric::interpolation::spline::Interpolator::compute_ub_function_solution ( numeric::Real  x,
numeric::Real y 
) const

compute the y value of the lower bound function given an x value

References ub_intercept_, and ub_slope_.

Referenced by numeric::interpolation::spline::SimpleInterpolator::interpolate(), and numeric::interpolation::spline::CompoundInterpolator::interpolate().

void numeric::interpolation::spline::Interpolator::deserialize ( utility::json_spirit::mObject  data)
virtual
Real numeric::interpolation::spline::Interpolator::get_lb_function_cutoff ( ) const
Real numeric::interpolation::spline::Interpolator::get_ub_function_cutoff ( ) const
bool numeric::interpolation::spline::Interpolator::has_lb_function ( ) const

return true if the interpolator has a defined lower bound function

References has_lb_function_.

Referenced by numeric::interpolation::spline::SimpleInterpolator::interpolate(), and numeric::interpolation::spline::CompoundInterpolator::interpolate().

bool numeric::interpolation::spline::Interpolator::has_ub_function ( ) const

return false if the interpolator has a defined upper bound function

References has_ub_function_.

Referenced by numeric::interpolation::spline::SimpleInterpolator::interpolate(), and numeric::interpolation::spline::CompoundInterpolator::interpolate().

virtual void numeric::interpolation::spline::Interpolator::interpolate ( numeric::Real  x,
numeric::Real y,
numeric::Real dy 
) const
pure virtual
bool numeric::interpolation::spline::Interpolator::operator== ( Interpolator const &  other) const
virtual
bool numeric::interpolation::spline::Interpolator::same_type_as_me ( Interpolator const &  other) const
virtual
utility::json_spirit::Value numeric::interpolation::spline::Interpolator::serialize ( ) const
virtual
void numeric::interpolation::spline::Interpolator::set_lb_function ( numeric::Real const &  lb,
numeric::Real const &  slope,
numeric::Real const &  intercept 
)

set a linear function describing the behavior of the interpolator after a given lower bound. This lower bound can be distinct from the lb of the spline

References has_lb_function_, lb_cutoff_, lb_intercept_, and lb_slope_.

void numeric::interpolation::spline::Interpolator::set_ub_function ( numeric::Real const &  ub,
numeric::Real const &  slope,
numeric::Real const &  intercept 
)

set a linear function describing the behavior of the interpolator after a given upper bound. This upper bound can be distinct from the ub of the spline

References has_ub_function_, ub_cutoff_, ub_intercept_, and ub_slope_.

Member Data Documentation

bool numeric::interpolation::spline::Interpolator::has_lb_function_
private
bool numeric::interpolation::spline::Interpolator::has_ub_function_
private
numeric::Real numeric::interpolation::spline::Interpolator::lb_cutoff_
private
numeric::Real numeric::interpolation::spline::Interpolator::lb_intercept_
private
numeric::Real numeric::interpolation::spline::Interpolator::lb_slope_
private
numeric::Real numeric::interpolation::spline::Interpolator::ub_cutoff_
private
numeric::Real numeric::interpolation::spline::Interpolator::ub_intercept_
private
numeric::Real numeric::interpolation::spline::Interpolator::ub_slope_
private

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