ug4
|
Integrand for the distance of two grid functions - evaluated in the H1 norm. More...
#include <integrate.h>
Public Member Functions | |
template<int elemDim> | |
void | evaluate (number vValue[], const MathVector< worldDim > vFineGlobIP[], GridObject *pFineElem, const MathVector< worldDim > vCornerCoords[], const MathVector< elemDim > vFineLocIP[], const MathMatrix< elemDim, worldDim > vJT[], const size_t numIP) |
returns the values of the integrand for a bunch of ips More... | |
H1DistIntegrand (TGridFunction &fineGridFct, size_t fineCmp, TGridFunction &coarseGridFct, size_t coarseCmp) | |
constructor (1 is fine grid function) More... | |
virtual void | set_subset (int si) |
sets subset More... | |
virtual | ~H1DistIntegrand () |
DTOR. More... | |
Public Member Functions inherited from ug::StdIntegrand< number, TGridFunction::dim, H1DistIntegrand< 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 |
world dimension of grid function More... | |
Static Public Attributes inherited from ug::StdIntegrand< number, TGridFunction::dim, H1DistIntegrand< 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... | |
Private Attributes | |
ScalarGridFunctionData< TGridFunction > | m_coarseData |
const int | m_coarseTopLevel |
ScalarGridFunctionData< TGridFunction > | m_fineData |
const int | m_fineTopLevel |
SmartPtr< MultiGrid > | m_spMG |
multigrid More... | |
Additional Inherited Members | |
Public Types inherited from ug::StdIntegrand< number, TGridFunction::dim, H1DistIntegrand< TGridFunction > > | |
typedef number | data_type |
data type More... | |
Public Types inherited from ug::IIntegrand< TData, TWorldDim > | |
typedef TData | data_type |
data type More... | |
Protected Member Functions inherited from ug::StdIntegrand< number, TGridFunction::dim, H1DistIntegrand< TGridFunction > > | |
H1DistIntegrand< TGridFunction > & | getImpl () |
access to implementation More... | |
const H1DistIntegrand< TGridFunction > & | getImpl () const |
const access to implementation More... | |
Protected Attributes inherited from ug::IIntegrand< TData, TWorldDim > | |
int | m_si |
subset More... | |
Integrand for the distance of two grid functions - evaluated in the H1 norm.
|
inline |
constructor (1 is fine grid function)
References ug::H1DistIntegrand< TGridFunction >::m_coarseTopLevel, ug::H1DistIntegrand< TGridFunction >::m_fineTopLevel, and UG_THROW.
|
inlinevirtual |
DTOR.
|
inline |
returns the values of the integrand for a bunch of ips
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::CollectCornerCoordinates(), ug::DoFRef(), ug::DimReferenceMapping< TDim, TWorldDim >::global_to_local(), ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::grads(), ug::DimReferenceMapping< TDim, TWorldDim >::jacobian_transposed_inverse(), ug::H1DistIntegrand< TGridFunction >::m_coarseData, ug::H1DistIntegrand< TGridFunction >::m_coarseTopLevel, ug::H1DistIntegrand< TGridFunction >::m_fineData, ug::H1DistIntegrand< TGridFunction >::m_fineTopLevel, ug::H1DistIntegrand< TGridFunction >::m_spMG, ug::MatVecMult(), ug::GridObject::reference_object_id(), ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::shape(), UG_CATCH_THROW, ug::VecDistanceSq(), ug::VecScaleAppend(), and ug::VecSet().
|
inlinevirtual |
sets subset
Reimplemented from ug::IIntegrand< TData, TWorldDim >.
References ug::H1DistIntegrand< TGridFunction >::m_coarseData, ug::H1DistIntegrand< TGridFunction >::m_fineData, ug::IIntegrand< TData, TWorldDim >::set_subset(), and UG_THROW.
|
private |
|
private |
|
private |
|
private |
|
private |
multigrid
Referenced by ug::H1DistIntegrand< TGridFunction >::evaluate().
|
static |
world dimension of grid function