dune-localfunctions  2.5.0
Public Types | Public Member Functions | List of all members
Dune::LocalInterpolationVirtualInterfaceBase< DomainType, RangeType > Class Template Referenceabstract

virtual base class for a local interpolation More...

#include <dune/localfunctions/common/virtualinterface.hh>

Inheritance diagram for Dune::LocalInterpolationVirtualInterfaceBase< DomainType, RangeType >:
Inheritance graph

Public Types

typedef Dune::VirtualFunction< DomainType, RangeType > FunctionType
 type of virtual function to interpolate More...
 
typedef RangeType::field_type CoefficientType
 type of the coefficient vector in the interpolate method More...
 

Public Member Functions

virtual ~LocalInterpolationVirtualInterfaceBase ()
 
virtual void interpolate (const FunctionType &f, std::vector< CoefficientType > &out) const =0
 determine coefficients interpolating a given function More...
 

Detailed Description

template<class DomainType, class RangeType>
class Dune::LocalInterpolationVirtualInterfaceBase< DomainType, RangeType >

virtual base class for a local interpolation

This class defines the interface using pure virtual methods. In applications you should use the derived class LocalInterpolationVirtualInterface that also contains a interpolate method where the function type is a template parameter.

This template method cannot be defined in the same class as the virtual method. Otherwise name resolution fails.

Member Typedef Documentation

◆ CoefficientType

template<class DomainType, class RangeType>
typedef RangeType::field_type Dune::LocalInterpolationVirtualInterfaceBase< DomainType, RangeType >::CoefficientType

type of the coefficient vector in the interpolate method

◆ FunctionType

template<class DomainType, class RangeType>
typedef Dune::VirtualFunction<DomainType, RangeType> Dune::LocalInterpolationVirtualInterfaceBase< DomainType, RangeType >::FunctionType

type of virtual function to interpolate

Constructor & Destructor Documentation

◆ ~LocalInterpolationVirtualInterfaceBase()

template<class DomainType, class RangeType>
virtual Dune::LocalInterpolationVirtualInterfaceBase< DomainType, RangeType >::~LocalInterpolationVirtualInterfaceBase ( )
inlinevirtual

Member Function Documentation

◆ interpolate()

template<class DomainType, class RangeType>
virtual void Dune::LocalInterpolationVirtualInterfaceBase< DomainType, RangeType >::interpolate ( const FunctionType f,
std::vector< CoefficientType > &  out 
) const
pure virtual

determine coefficients interpolating a given function

This is the pure virtual method taking a VirtualFunction.

Parameters
[in]fFunction instance used to interpolate.
[out]outResulting coefficients vector.

Implemented in Dune::LocalInterpolationVirtualInterface< DomainType, RangeType >, Dune::LocalInterpolationVirtualInterface< typename T::DomainType, typename T::RangeType >, Dune::LocalInterpolationVirtualImp< DomainType, RangeType, Imp >, and Dune::LocalInterpolationVirtualImp< typename T::DomainType, typename T::RangeType, typename Imp::Traits::LocalInterpolationType >.


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