Tempus Version of the Day
Time Integration
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Tempus::Interpolator< Scalar > Class Template Referenceabstract

Base strategy class for interpolation functionality. More...

#include <Tempus_Interpolator.hpp>

Inheritance diagram for Tempus::Interpolator< Scalar >:
Tempus::InterpolatorLagrange< Scalar >

Public Member Functions

virtual void setNodes (const Teuchos::RCP< const std::vector< Teuchos::RCP< SolutionState< Scalar > > > > &nodes)=0
 Store pointer to interpolation nodes.
 
virtual void interpolate (const Scalar &t, SolutionState< Scalar > *state_out) const =0
 Perform an interpolation.
 
virtual int order () const =0
 Return the order of the interpolation.
 

Detailed Description

template<class Scalar>
class Tempus::Interpolator< Scalar >

Base strategy class for interpolation functionality.

Definition at line 30 of file Tempus_Interpolator.hpp.

Member Function Documentation

◆ setNodes()

template<class Scalar >
virtual void Tempus::Interpolator< Scalar >::setNodes ( const Teuchos::RCP< const std::vector< Teuchos::RCP< SolutionState< Scalar > > > > &  nodes)
pure virtual

Store pointer to interpolation nodes.

This function represent a persisting relationship between the interpolation nodes and the interpolator. For simple interpolators like linear and Hermite, this is not needed, but for interpolators like cubic splines where there is some computational work in assembling the interpolant, this is important.

Preconditions:

  • nodes must have unique time values and be sorted in ascending time order

Postconditions:

  • If this function is called twice and nodes is a different pointer than was previously called, then it is possible that the interpolant will be recomputed when interpolate is next called.

Implemented in Tempus::InterpolatorLagrange< Scalar >.

◆ interpolate()

template<class Scalar >
virtual void Tempus::Interpolator< Scalar >::interpolate ( const Scalar &  t,
SolutionState< Scalar > *  state_out 
) const
pure virtual

Perform an interpolation.

Implemented in Tempus::InterpolatorLagrange< Scalar >.

◆ order()

template<class Scalar >
virtual int Tempus::Interpolator< Scalar >::order ( ) const
pure virtual

Return the order of the interpolation.

Implemented in Tempus::InterpolatorLagrange< Scalar >.


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