ug4
ug::StdIntegrand< TData, TWorldDim, TImpl > Class Template Reference

Abstract integrand interface (using CRTP) More...

#include <integrate.h>

+ Inheritance diagram for ug::StdIntegrand< TData, TWorldDim, TImpl >:

Public Types

typedef TData data_type
 data type More...
 
- Public Types inherited from ug::IIntegrand< TData, TWorldDim >
typedef TData data_type
 data type More...
 

Public Member Functions

virtual void values (TData vValue[], const MathVector< worldDim > vGlobIP[], GridObject *pElem, const MathVector< worldDim > vCornerCoords[], const MathVector< 1 > vLocIP[], const MathMatrix< 1, worldDim > vJT[], const size_t numIP)
 returns the values of the integrand for a bunch of ips More...
 
virtual void values (TData vValue[], const MathVector< worldDim > vGlobIP[], GridObject *pElem, const MathVector< worldDim > vCornerCoords[], const MathVector< 2 > vLocIP[], const MathMatrix< 2, worldDim > vJT[], const size_t numIP)
 returns the values of the integrand for a bunch of ips More...
 
virtual void values (TData vValue[], const MathVector< worldDim > vGlobIP[], GridObject *pElem, const MathVector< worldDim > vCornerCoords[], const MathVector< 3 > vLocIP[], const MathMatrix< 3, worldDim > vJT[], const size_t numIP)
 returns the values of the integrand for a bunch of ips More...
 
- Public Member Functions inherited from ug::IIntegrand< TData, TWorldDim >
virtual void set_subset (int si)
 sets the subset More...
 
int subset () const
 returns the subset More...
 
virtual ~IIntegrand ()
 

Static Public Attributes

static const int worldDim = TWorldDim
 world dimension More...
 
- Static Public Attributes inherited from ug::IIntegrand< TData, TWorldDim >
static const int worldDim = TWorldDim
 world dimension More...
 

Protected Member Functions

TImpl & getImpl ()
 access to implementation More...
 
const TImpl & getImpl () const
 const access to implementation More...
 

Additional Inherited Members

- Protected Attributes inherited from ug::IIntegrand< TData, TWorldDim >
int m_si
 subset More...
 

Detailed Description

template<typename TData, int TWorldDim, typename TImpl>
class ug::StdIntegrand< TData, TWorldDim, TImpl >

Abstract integrand interface (using CRTP)

Member Typedef Documentation

◆ data_type

template<typename TData , int TWorldDim, typename TImpl >
typedef TData ug::StdIntegrand< TData, TWorldDim, TImpl >::data_type

data type

Member Function Documentation

◆ getImpl() [1/2]

template<typename TData , int TWorldDim, typename TImpl >
TImpl& ug::StdIntegrand< TData, TWorldDim, TImpl >::getImpl ( )
inlineprotected

access to implementation

Referenced by ug::StdIntegrand< TData, TWorldDim, TImpl >::values().

◆ getImpl() [2/2]

template<typename TData , int TWorldDim, typename TImpl >
const TImpl& ug::StdIntegrand< TData, TWorldDim, TImpl >::getImpl ( ) const
inlineprotected

const access to implementation

◆ values() [1/3]

template<typename TData , int TWorldDim, typename TImpl >
virtual void ug::StdIntegrand< TData, TWorldDim, TImpl >::values ( TData  vValue[],
const MathVector< worldDim vGlobIP[],
GridObject pElem,
const MathVector< worldDim vCornerCoords[],
const MathVector< 1 >  vLocIP[],
const MathMatrix< 1, worldDim vJT[],
const size_t  numIP 
)
inlinevirtual

returns the values of the integrand for a bunch of ips

Parameters
vValue[out]the value of the integrand at the ips
vGlobIP[in]global integration point positions
pElem[in]the element to integrate
vCornerCoords[in]corner coordinates of the element
vLocIP[in]local integration point positions
vJT[in]jacobian transposed at integration point
numIP[in]number of integration points

Implements ug::IIntegrand< TData, TWorldDim >.

References ug::StdIntegrand< TData, TWorldDim, TImpl >::getImpl().

◆ values() [2/3]

template<typename TData , int TWorldDim, typename TImpl >
virtual void ug::StdIntegrand< TData, TWorldDim, TImpl >::values ( TData  vValue[],
const MathVector< worldDim vGlobIP[],
GridObject pElem,
const MathVector< worldDim vCornerCoords[],
const MathVector< 2 >  vLocIP[],
const MathMatrix< 2, worldDim vJT[],
const size_t  numIP 
)
inlinevirtual

returns the values of the integrand for a bunch of ips

Parameters
vValue[out]the value of the integrand at the ips
vGlobIP[in]global integration point positions
pElem[in]the element to integrate
vCornerCoords[in]corner coordinates of the element
vLocIP[in]local integration point positions
vJT[in]jacobian transposed at integration point
numIP[in]number of integration points

Implements ug::IIntegrand< TData, TWorldDim >.

References ug::StdIntegrand< TData, TWorldDim, TImpl >::getImpl().

◆ values() [3/3]

template<typename TData , int TWorldDim, typename TImpl >
virtual void ug::StdIntegrand< TData, TWorldDim, TImpl >::values ( TData  vValue[],
const MathVector< worldDim vGlobIP[],
GridObject pElem,
const MathVector< worldDim vCornerCoords[],
const MathVector< 3 >  vLocIP[],
const MathMatrix< 3, worldDim vJT[],
const size_t  numIP 
)
inlinevirtual

returns the values of the integrand for a bunch of ips

Parameters
vValue[out]the value of the integrand at the ips
vGlobIP[in]global integration point positions
pElem[in]the element to integrate
vCornerCoords[in]corner coordinates of the element
vLocIP[in]local integration point positions
vJT[in]jacobian transposed at integration point
numIP[in]number of integration points

Implements ug::IIntegrand< TData, TWorldDim >.

References ug::StdIntegrand< TData, TWorldDim, TImpl >::getImpl().

Member Data Documentation

◆ worldDim

template<typename TData , int TWorldDim, typename TImpl >
const int ug::StdIntegrand< TData, TWorldDim, TImpl >::worldDim = TWorldDim
static

world dimension


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