Dune-Fufem 2.11-git
Loading...
Searching...
No Matches
DeformationFunction< GridView, CoefficientVectorType > Class Template Reference

Function that computes the deformed position from a given host gridview. This can be used inside of GeometryGrid. More...

#include <dune/fufem/functions/deformationfunction.hh>

Inheritance diagram for DeformationFunction< GridView, CoefficientVectorType >:
Inheritance graph

Public Types

typedef Base::RangeVector RangeVector
 
typedef This Interface
 
typedef Impl Implementation
 

Public Member Functions

 DeformationFunction (const GridView &gridView)
 
 DeformationFunction (const GridView &gridView, const CoefficientVectorType &deformation)
 
virtual ~DeformationFunction ()
 
virtual void setGridView (const GridView &gridView)
 
void setDeformation (const CoefficientVectorType &deformation)
 Change the deformation vector.
 
virtual void evaluate (const typename GridView::template Codim< dim >::Entity &hostVertex, unsigned int corner, Dune::FieldVector< ctype, dim > &y) const
 Evaluate function at a host vertex (corner param is redundant but prescribed by the interface...)
 
virtual void evaluate (const typename GridView::template Codim< 0 >::Entity &hostEntity, unsigned int corner, typename Base::RangeVector &y) const
 Evaluate function at a corner of a host entity.
 
void adapt ()
 Adapt to changes in the host grid.
 
const CoefficientVectorType & getDeformation ()
 
void evaluate (const HostEntity &hostEntity, unsigned int corner, RangeVector &y) const
 

Static Public Attributes

static const unsigned int dimRange
 

Protected Member Functions

const ImplementationasImp () const
 
ImplementationasImp ()
 

Protected Attributes

std::unique_ptr< GridView > gridView_
 The gridview of the undeformed grid.
 
CoefficientVectorType deformation_
 The coefficient vector of the displacements of the vertices of the gridview.
 

Detailed Description

template<class GridView, class CoefficientVectorType>
class DeformationFunction< GridView, CoefficientVectorType >

Function that computes the deformed position from a given host gridview. This can be used inside of GeometryGrid.

This function only works correctly if the evaluate function is only called for elements of the given GridView.

Template Parameters
GridView- The grid view of the undeformed grid.
CoefficientVectorType- The type the vertex coefficients are stored in.
Deprecated:
This class is deprecated and will be removed after 2.11. Use Dune::Fufen::Experimental::DeformationFunction instead.

Member Typedef Documentation

◆ RangeVector

template<class GridView , class CoefficientVectorType >
typedef Base::RangeVector DeformationFunction< GridView, CoefficientVectorType >::RangeVector

Constructor & Destructor Documentation

◆ DeformationFunction() [1/2]

template<class GridView , class CoefficientVectorType >
DeformationFunction< GridView, CoefficientVectorType >::DeformationFunction ( const GridView &  gridView)
inline

◆ DeformationFunction() [2/2]

template<class GridView , class CoefficientVectorType >
DeformationFunction< GridView, CoefficientVectorType >::DeformationFunction ( const GridView &  gridView,
const CoefficientVectorType &  deformation 
)
inline

◆ ~DeformationFunction()

template<class GridView , class CoefficientVectorType >
virtual DeformationFunction< GridView, CoefficientVectorType >::~DeformationFunction ( )
inlinevirtual

Member Function Documentation

◆ adapt()

template<class GridView , class CoefficientVectorType >
void DeformationFunction< GridView, CoefficientVectorType >::adapt ( )
inline

Adapt to changes in the host grid.

◆ evaluate() [1/2]

template<class GridView , class CoefficientVectorType >
virtual void DeformationFunction< GridView, CoefficientVectorType >::evaluate ( const typename GridView::template Codim< 0 >::Entity hostEntity,
unsigned int  corner,
typename Base::RangeVector y 
) const
inlinevirtual

Evaluate function at a corner of a host entity.

Reimplemented in DeformationHierarchyFunction< GridView, CoefficientVectorType >.

◆ evaluate() [2/2]

template<class GridView , class CoefficientVectorType >
virtual void DeformationFunction< GridView, CoefficientVectorType >::evaluate ( const typename GridView::template Codim< dim >::Entity hostVertex,
unsigned int  corner,
Dune::FieldVector< ctype, dim > &  y 
) const
inlinevirtual

Evaluate function at a host vertex (corner param is redundant but prescribed by the interface...)

◆ getDeformation()

template<class GridView , class CoefficientVectorType >
const CoefficientVectorType & DeformationFunction< GridView, CoefficientVectorType >::getDeformation ( )
inline

◆ setDeformation()

template<class GridView , class CoefficientVectorType >
void DeformationFunction< GridView, CoefficientVectorType >::setDeformation ( const CoefficientVectorType &  deformation)
inline

Change the deformation vector.

◆ setGridView()

template<class GridView , class CoefficientVectorType >
virtual void DeformationFunction< GridView, CoefficientVectorType >::setGridView ( const GridView &  gridView)
inlinevirtual

Member Data Documentation

◆ deformation_

template<class GridView , class CoefficientVectorType >
CoefficientVectorType DeformationFunction< GridView, CoefficientVectorType >::deformation_
protected

The coefficient vector of the displacements of the vertices of the gridview.

◆ gridView_

template<class GridView , class CoefficientVectorType >
std::unique_ptr<GridView> DeformationFunction< GridView, CoefficientVectorType >::gridView_
protected

The gridview of the undeformed grid.


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