Rythmos::InterpolatorBase< Scalar > Class Template Reference

Base strategy class for interpolation functionality. More...

#include <Rythmos_InterpolatorBase.hpp>

Inheritance diagram for Rythmos::InterpolatorBase< Scalar >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual bool supportsCloning () const
 Return if this interpolator supports cloning or not.
virtual Teuchos::RCP< InterpolatorBase<
Scalar > > 
cloneInterpolator () const
 Clone the interpoloator object if supported.
virtual void interpolate (const typename DataStore< Scalar >::DataStoreVector_t &data_in, const Array< Scalar > &t_values, typename DataStore< Scalar >::DataStoreVector_t *data_out) const =0
 Perform an interpolation.
virtual int order () const =0
 Return the order of the interpolation.

Detailed Description

template<class Scalar>
class Rythmos::InterpolatorBase< Scalar >

Base strategy class for interpolation functionality.

ToDo: Finish documentation!

Definition at line 44 of file Rythmos_InterpolatorBase.hpp.


Member Function Documentation

template<class Scalar>
bool Rythmos::InterpolatorBase< Scalar >::supportsCloning (  )  const [virtual]

Return if this interpolator supports cloning or not.

If returnVal==true, then cloneInterpolator() will clone *this object and return an non-null RCP.

The default implementation of this function simply returns false.

Reimplemented in Rythmos::LinearInterpolator< Scalar >.

Definition at line 128 of file Rythmos_InterpolatorBase.hpp.

template<class Scalar>
Teuchos::RCP< InterpolatorBase< Scalar > > Rythmos::InterpolatorBase< Scalar >::cloneInterpolator (  )  const [virtual]

Clone the interpoloator object if supported.

Postconditions:

[supportsCloning()==true] returnVal != Teuchos::null [supportsCloning()==false] returnVal == Teuchos::null

The default implementation returns Teuchos::null which is consistent with the default implementation of supportsCloning(). If this function is overridden in a base class to support cloning, then supportsCloning() must be overridden to return true.

Reimplemented in Rythmos::LinearInterpolator< Scalar >.

Definition at line 136 of file Rythmos_InterpolatorBase.hpp.

template<class Scalar>
virtual void Rythmos::InterpolatorBase< Scalar >::interpolate ( const typename DataStore< Scalar >::DataStoreVector_t &  data_in,
const Array< Scalar > &  t_values,
typename DataStore< Scalar >::DataStoreVector_t *  data_out 
) const [pure virtual]

Perform an interpolation.

This function must support passing node values back out directly, handling when only one node value is passed in, and dealing with xdot==Teuchosnull. There is no guarantee at this time that data_out will be in the same order as t_values.

Preconditions:

Postconditions:

Implemented in Rythmos::HermiteInterpolator< Scalar >, and Rythmos::LinearInterpolator< Scalar >.

template<class Scalar>
virtual int Rythmos::InterpolatorBase< Scalar >::order (  )  const [pure virtual]

Return the order of the interpolation.

2007/05/18: rabartl: ToDo: Define what "order" means.

Implemented in Rythmos::HermiteInterpolator< Scalar >, and Rythmos::LinearInterpolator< Scalar >.


The documentation for this class was generated from the following file:
Generated on Tue Oct 20 12:46:10 2009 for Rythmos - Transient Integration for Differential Equations by doxygen 1.4.7