BEM++  2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Types | Public Member Functions | Private Attributes | List of all members
Fiber::LinearScalarShapesetBarycentric< ValueType > Class Template Reference
Inheritance diagram for Fiber::LinearScalarShapesetBarycentric< ValueType >:
Fiber::Basis< ValueType > Fiber::Shapeset< ValueType >

Public Types

enum  BasisType { TYPE1, TYPE2 }
 
typedef Basis< ValueType >
::CoordinateType 
CoordinateType
 
- Public Types inherited from Fiber::Shapeset< ValueType >
typedef ScalarTraits
< ValueType >::RealType 
CoordinateType
 

Public Member Functions

 LinearScalarShapesetBarycentric (BasisType type)
 
virtual int size () const
 Return the number of shape functions.
 
virtual int order () const
 Return the maximum polynomial order of shape functions.
 
virtual void evaluate (size_t what, const arma::Mat< CoordinateType > &points, LocalDofIndex localDofIndex, BasisData< ValueType > &data) const
 Evaluate the shape functions making up this shapeset and/or their derivatives at specified points. More...
 
virtual std::pair< const char
*, int > 
clCodeString (bool isTestBasis) const
 Returns an OpenCL code snippet for shape function evaluation. More...
 

Private Attributes

Fiber::PiecewiseLinearContinuousScalarBasis
< 3, ValueType > 
linearBasis
 
BasisType m_type
 

Member Function Documentation

template<typename ValueType >
virtual std::pair<const char*,int> Fiber::LinearScalarShapesetBarycentric< ValueType >::clCodeString ( bool  isTestShapeset) const
inlinevirtual

Returns an OpenCL code snippet for shape function evaluation.

Note
The code snippet must provide device function devBasisEval

Reimplemented from Fiber::Shapeset< ValueType >.

template<typename ValueType >
virtual void Fiber::LinearScalarShapesetBarycentric< ValueType >::evaluate ( size_t  what,
const arma::Mat< CoordinateType > &  points,
LocalDofIndex  localDofIndex,
BasisData< ValueType > &  data 
) const
inlinevirtual

Evaluate the shape functions making up this shapeset and/or their derivatives at specified points.

Parameters
[in]whatBitwise combination of zero or more flags defined as members of the BasisDataType enum. Specifies what shall be evaluated: the values of the shape functions, their derivatives, both, or none.
[in]pointsA 2D array whose (i, j) element is the ith coordinate of the jth point at which the shape functions and/or their derivatives shall be evaluated.
[in]localDofIndex.If set to ALL_DOFS, all the shape functions from the shapeset shall be evaluated; otherwise only the localDofIndex'th function shall be evaluated.
[out]basisDataReceives evaluation results.

If what contains the flag VALUES, on output basisData.values(i, k, l) shall contain the value of the ith component of the kth evaluated shape function at the lth point.

If what contains the flag DERIVATIVES, on output basisData.derivatives(i, j, k, l) shall contain the derivative in direction j of the ith component of the kth evaluated shape function at the lth point.

Implements Fiber::Shapeset< ValueType >.

References Fiber::BasisData< ValueType >::derivatives, Fiber::LinearScalarShapeset< elementVertexCount, ValueType >::evaluate(), and Fiber::BasisData< ValueType >::values.


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