ug4
ug::L2Integrand< TGridFunction > Class Template Reference

Grid function as L2 integrand. More...

#include <integrate.h>

+ Inheritance diagram for ug::L2Integrand< TGridFunction >:

Public Types

typedef UserData< number, worldDimweight_type
 
- Public Types inherited from ug::StdIntegrand< number, TGridFunction::dim, L2Integrand< TGridFunction > >
typedef number data_type
 data type More...
 
- Public Types inherited from ug::IIntegrand< TData, TWorldDim >
typedef TData data_type
 data type More...
 

Public Member Functions

template<int elemDim>
void evaluate (number vValue[], const MathVector< worldDim > vGlobIP[], GridObject *pElem, const MathVector< worldDim > vCornerCoords[], const MathVector< elemDim > vLocIP[], const MathMatrix< elemDim, worldDim > vJT[], const size_t numIP)
 returns the values of the integrand for a bunch of ips More...
 
 L2Integrand (TGridFunction &spGridFct, size_t cmp)
 CTOR. More...
 
 L2Integrand (TGridFunction &spGridFct, size_t cmp, ConstSmartPtr< weight_type > spWeight)
 
virtual void set_subset (int si)
 sets subset More...
 
virtual ~L2Integrand ()
 DTOR. More...
 
- Public Member Functions inherited from ug::StdIntegrand< number, TGridFunction::dim, L2Integrand< TGridFunction > >
virtual void values (number vValue[], const MathVector< worldDim > vGlobIP[], GridObject *pElem, const MathVector< worldDim > vCornerCoords[], const MathVector< 1 > vLocIP[], const MathMatrix< 1, worldDim > vJT[], const size_t numIP)
 
virtual void values (number vValue[], const MathVector< worldDim > vGlobIP[], GridObject *pElem, const MathVector< worldDim > vCornerCoords[], const MathVector< 2 > vLocIP[], const MathMatrix< 2, worldDim > vJT[], const size_t numIP)
 
virtual void values (number vValue[], const MathVector< worldDim > vGlobIP[], GridObject *pElem, const MathVector< worldDim > vCornerCoords[], const MathVector< 3 > vLocIP[], const MathMatrix< 3, worldDim > vJT[], const size_t numIP)
 
- Public Member Functions inherited from ug::IIntegrand< TData, TWorldDim >
int subset () const
 returns the subset More...
 
virtual ~IIntegrand ()
 
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)=0
 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)=0
 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)=0
 returns the values of the integrand for a bunch of ips More...
 

Static Public Attributes

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

Protected Attributes

ScalarGridFunctionData< TGridFunction > m_scalarData
 
ConstSmartPtr< weight_typem_spWeight
 scalar weight (optional, default is 1.0) More...
 
- Protected Attributes inherited from ug::IIntegrand< TData, TWorldDim >
int m_si
 subset More...
 

Additional Inherited Members

- Protected Member Functions inherited from ug::StdIntegrand< number, TGridFunction::dim, L2Integrand< TGridFunction > >
L2Integrand< TGridFunction > & getImpl ()
 access to implementation More...
 
const L2Integrand< TGridFunction > & getImpl () const
 const access to implementation More...
 

Detailed Description

template<typename TGridFunction>
class ug::L2Integrand< TGridFunction >

Grid function as L2 integrand.

Member Typedef Documentation

◆ weight_type

template<typename TGridFunction >
typedef UserData<number, worldDim> ug::L2Integrand< TGridFunction >::weight_type

Constructor & Destructor Documentation

◆ L2Integrand() [1/2]

template<typename TGridFunction >
ug::L2Integrand< TGridFunction >::L2Integrand ( TGridFunction &  spGridFct,
size_t  cmp 
)
inline

CTOR.

◆ L2Integrand() [2/2]

template<typename TGridFunction >
ug::L2Integrand< TGridFunction >::L2Integrand ( TGridFunction &  spGridFct,
size_t  cmp,
ConstSmartPtr< weight_type spWeight 
)
inline

◆ ~L2Integrand()

template<typename TGridFunction >
virtual ug::L2Integrand< TGridFunction >::~L2Integrand ( )
inlinevirtual

DTOR.

Member Function Documentation

◆ evaluate()

template<typename TGridFunction >
template<int elemDim>
void ug::L2Integrand< TGridFunction >::evaluate ( number  vValue[],
const MathVector< worldDim vGlobIP[],
GridObject pElem,
const MathVector< worldDim vCornerCoords[],
const MathVector< elemDim >  vLocIP[],
const MathMatrix< elemDim, worldDim vJT[],
const size_t  numIP 
)
inline

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

References ug::DoFRef(), ug::L2Integrand< TGridFunction >::m_scalarData, ug::L2Integrand< TGridFunction >::m_spWeight, ug::LocalDoFSet::num_sh(), ug::GridObject::reference_object_id(), ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::shape(), ug::IIntegrand< TData, TWorldDim >::subset(), UG_ASSERT, UG_CATCH_THROW, UG_THROW, and ConstSmartPtr< T, FreePolicy >::valid().

◆ set_subset()

template<typename TGridFunction >
virtual void ug::L2Integrand< TGridFunction >::set_subset ( int  si)
inlinevirtual

Member Data Documentation

◆ m_scalarData

template<typename TGridFunction >
ScalarGridFunctionData<TGridFunction> ug::L2Integrand< TGridFunction >::m_scalarData
protected

◆ m_spWeight

template<typename TGridFunction >
ConstSmartPtr<weight_type> ug::L2Integrand< TGridFunction >::m_spWeight
protected

scalar weight (optional, default is 1.0)

Referenced by ug::L2Integrand< TGridFunction >::evaluate().

◆ worldDim

template<typename TGridFunction >
const int ug::L2Integrand< TGridFunction >::worldDim = TGridFunction::dim
static

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