Class implements the Steffen interpolation. More...

#include <steffenInterpolation.hpp>

Inheritance diagram for julian::SteffenInterpolation:
julian::Interpolation

Public Member Functions

virtual double operator() (const std::vector< double > &, const std::vector< double > &, const double &) const
 Performs interpolation. More...
 
virtual SteffenInterpolationclone () const
 Virtual copy constructor. More...
 
virtual std::string info () const
 Name of a class. More...
 
virtual unsigned int getMinSize () const
 return the minimum number of points required by the interpolation More...
 
- Public Member Functions inherited from julian::Interpolation
 Interpolation ()
 Constructor. More...
 
virtual ~Interpolation ()
 Destructor. More...
 

Private Member Functions

template<class Archive >
void serialize (Archive &, const unsigned int)
 interface used by Boost serialization library More...
 

Friends

class boost::serialization::access
 

Detailed Description

Class implements the Steffen interpolation.

Steffen’s method guarantees the monotonicity of the interpolating function between the given data points. Therefore, minima and maxima can only occur exactly at the data points, and there can never be spurious oscillations between data points. The interpolated function is piecewise cubic in each interval. The resulting curve and its first derivative are guaranteed to be continuous, but the second derivative may be discontinuous.

steffen_interpolation.png

For detailed description see [39]

Remarks
Class uses Steffen interpolation algorithm implemented in GSL
Examples:
interpolationExample.cpp.

Member Function Documentation

SteffenInterpolation * julian::SteffenInterpolation::clone ( ) const
virtual

Virtual copy constructor.

Method is an implementation of virtual copy constructor.

Implements julian::Interpolation.

unsigned int julian::SteffenInterpolation::getMinSize ( ) const
virtual

return the minimum number of points required by the interpolation

Implements julian::Interpolation.

std::string julian::SteffenInterpolation::info ( ) const
virtual

Name of a class.

Method returns string that containing information about class.

Implements julian::Interpolation.

double julian::SteffenInterpolation::operator() ( const std::vector< double > &  x,
const std::vector< double > &  y,
const double &  x_int 
) const
virtual

Performs interpolation.

Implements julian::Interpolation.

template<class Archive >
void julian::SteffenInterpolation::serialize ( Archive &  ,
const unsigned  int 
)
inlineprivate

interface used by Boost serialization library


The documentation for this class was generated from the following files:
  • C:/Unix/home/OEM/jULIAN/src/mathematics/interpolation/steffenInterpolation.hpp
  • C:/Unix/home/OEM/jULIAN/src/mathematics/interpolation/steffenInterpolation.cpp