Rosetta
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...
 
numeric::Real get_lb_function_slope () const
 get the lower bound slope More...
 
numeric::Real get_ub_function_slope () const
 get the upper bound slope More...
 
numeric::Real get_lb_function_intercept () const
 get the lower bound intercept More...
 
numeric::Real get_ub_function_intercept () const
 get the upper bound intercept 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

◆ ~Interpolator()

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

Automatically generated virtual destructor for class deriving directly from VirtualBase.

Auto-generated virtual destructor

◆ Interpolator()

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

Member Function Documentation

◆ clone()

virtual InterpolatorOP numeric::interpolation::spline::Interpolator::clone ( ) const
pure virtual

◆ compute_lb_function_solution()

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_, lb_slope_, x, and predPRE::y.

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

◆ compute_ub_function_solution()

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_, ub_slope_, x, and predPRE::y.

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

◆ deserialize()

void numeric::interpolation::spline::Interpolator::deserialize ( utility::json_spirit::mObject  data)
virtual

◆ get_lb_function_cutoff()

numeric::Real numeric::interpolation::spline::Interpolator::get_lb_function_cutoff ( ) const

◆ get_lb_function_intercept()

numeric::Real numeric::interpolation::spline::Interpolator::get_lb_function_intercept ( ) const

get the lower bound intercept

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References lb_intercept_.

◆ get_lb_function_slope()

numeric::Real numeric::interpolation::spline::Interpolator::get_lb_function_slope ( ) const

get the lower bound slope

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References lb_slope_.

◆ get_ub_function_cutoff()

numeric::Real numeric::interpolation::spline::Interpolator::get_ub_function_cutoff ( ) const

◆ get_ub_function_intercept()

numeric::Real numeric::interpolation::spline::Interpolator::get_ub_function_intercept ( ) const

get the upper bound intercept

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References ub_intercept_.

◆ get_ub_function_slope()

numeric::Real numeric::interpolation::spline::Interpolator::get_ub_function_slope ( ) const

get the upper bound slope

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

References ub_slope_.

◆ has_lb_function()

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::CompoundInterpolator::interpolate(), and numeric::interpolation::spline::SimpleInterpolator::interpolate().

◆ has_ub_function()

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::CompoundInterpolator::interpolate(), and numeric::interpolation::spline::SimpleInterpolator::interpolate().

◆ interpolate()

virtual void numeric::interpolation::spline::Interpolator::interpolate ( numeric::Real  x,
numeric::Real y,
numeric::Real dy 
) const
pure virtual

◆ operator==()

bool numeric::interpolation::spline::Interpolator::operator== ( Interpolator const &  other) const
virtual

◆ same_type_as_me()

bool numeric::interpolation::spline::Interpolator::same_type_as_me ( Interpolator const &  other) const
virtual

◆ serialize()

utility::json_spirit::Value numeric::interpolation::spline::Interpolator::serialize ( ) const
virtual

◆ set_lb_function()

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_.

◆ set_ub_function()

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

◆ has_lb_function_

bool numeric::interpolation::spline::Interpolator::has_lb_function_
private

◆ has_ub_function_

bool numeric::interpolation::spline::Interpolator::has_ub_function_
private

◆ lb_cutoff_

numeric::Real numeric::interpolation::spline::Interpolator::lb_cutoff_
private

◆ lb_intercept_

numeric::Real numeric::interpolation::spline::Interpolator::lb_intercept_
private

◆ lb_slope_

numeric::Real numeric::interpolation::spline::Interpolator::lb_slope_
private

◆ ub_cutoff_

numeric::Real numeric::interpolation::spline::Interpolator::ub_cutoff_
private

◆ ub_intercept_

numeric::Real numeric::interpolation::spline::Interpolator::ub_intercept_
private

◆ ub_slope_

numeric::Real numeric::interpolation::spline::Interpolator::ub_slope_
private

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