Loading [MathJax]/extensions/tex2jax.js
ug4
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
ug::IElemAssembleFuncs< TLeaf, TDomain > Class Template Reference

This class encapsulates all functions related to error estimation. More...

#include <elem_disc_interface.h>

Public Types

typedef TDomain domain_type
 Domain type.
 
typedef TLeaf leaf_type
 Barton Nackman trick (TODO: needed?)
 

Public Member Functions

virtual void add_def_A_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 virtual Assembling of Defect (Stiffness part)
 
virtual void add_def_A_expl_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 defect for explicit terms
 
virtual void add_def_M_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 virtual Assembling of Defect (Mass part)
 
virtual void add_jac_A_elem (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 Assembling of Jacobian (Stiffness part)
 
virtual void add_jac_M_elem (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 Assembling of Jacobian (Mass part)
 
virtual void add_rhs_elem (LocalVector &rhs, GridObject *elem, const MathVector< dim > vCornerCoords[])
 virtual Assembling of Right-Hand Side
 
TLeaf & asLeaf ()
 
virtual void fsh_elem_loop ()
 virtual postprocesses the loop over all elements of one type
 
virtual void fsh_timestep (number time, VectorProxyBase *u)
 finish the time step
 
virtual void fsh_timestep_elem (const number time, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 virtual finish the time step element-wise
 
 IElemAssembleFuncs ()
 constructor
 
virtual void post_assemble_loop ()
 virtual prepares the loop over all elements of one type
 
virtual void prep_assemble_loop ()
 virtual prepares the loop over all elements of one type
 
virtual void prep_elem (const LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[])
 virtual prepare one elements for assembling
 
virtual void prep_elem_loop (const ReferenceObjectID roid, const int si)
 virtual prepares the loop over all elements of one type
 
virtual void prep_timestep (number future_time, number time, VectorProxyBase *u)
 prepare the time step
 
virtual void prep_timestep_elem (const number time, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 prepare the time step element-wise
 
virtual ~IElemAssembleFuncs ()
 Virtual destructor.
 

Static Public Attributes

static const int dim = TDomain::dim
 World dimension.
 
typedef IElemAssembleFuncs< TLeaf, TDomain > T
 current Geometric Object
 
typedef void(T::* PrepareTimestepFct) (number, number, VectorProxyBase *)
 current Geometric Object
 
typedef void(T::* PrepareTimestepElemFct) (number, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
typedef void(T::* FinishTimestepFct) (number, VectorProxyBase *)
 current Geometric Object
 
typedef void(T::* FinishTimestepElemFct) (number, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
typedef void(T::* PrepareElemLoopFct) (ReferenceObjectID roid, int si)
 current Geometric Object
 
typedef void(T::* PrepareElemFct) (const LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
typedef void(T::* FinishElemLoopFct) ()
 current Geometric Object
 
typedef void(T::* ElemJAFct) (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
typedef void(T::* ElemJMFct) (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
typedef void(T::* ElemdAFct) (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
typedef void(T::* ElemdMFct) (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
typedef void(T::* ElemRHSFct) (LocalVector &rhs, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
PrepareTimestepFct m_vPrepareTimestepFct [bridge::NUM_ALGEBRA_TYPES]
 current Geometric Object
 
PrepareTimestepElemFct m_vPrepareTimestepElemFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
FinishTimestepFct m_vFinishTimestepFct [bridge::NUM_ALGEBRA_TYPES]
 current Geometric Object
 
FinishTimestepElemFct m_vFinishTimestepElemFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
PrepareElemLoopFct m_vPrepareElemLoopFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
PrepareElemFct m_vPrepareElemFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
FinishElemLoopFct m_vFinishElemLoopFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
ElemJAFct m_vElemJAFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
ElemJMFct m_vElemJMFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
ElemdAFct m_vElemdAFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
ElemdAFct m_vElemdAExplFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
ElemdMFct m_vElemdMFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
ElemRHSFct m_vElemRHSFct [NUM_REFERENCE_OBJECTS]
 current Geometric Object
 
ReferenceObjectID m_roid
 current Geometric Object
 
void do_prep_timestep (number future_time, const number time, VectorProxyBase *u, size_t algebra_id)
 
void do_prep_timestep_elem (const number time, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_prep_elem_loop (const ReferenceObjectID roid, const int si)
 current Geometric Object
 
void do_prep_elem (LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_fsh_elem_loop ()
 current Geometric Object
 
void do_fsh_timestep (const number time, VectorProxyBase *u, size_t algebra_id)
 current Geometric Object
 
void do_fsh_timestep_elem (const number time, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_add_jac_A_elem (LocalMatrix &J, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_add_jac_M_elem (LocalMatrix &J, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_add_def_A_elem (LocalVector &d, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_add_def_A_expl_elem (LocalVector &d, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_add_def_M_elem (LocalVector &d, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void do_add_rhs_elem (LocalVector &rhs, GridObject *elem, const MathVector< dim > vCornerCoords[])
 current Geometric Object
 
void set_roid (ReferenceObjectID id, int discType)
 sets the geometric object type
 
void check_roid (ReferenceObjectID roid, int discType)
 check, if all inputs have been set
 
template<typename TAssFunc >
void set_prep_timestep_fct (size_t algebra_id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_prep_timestep_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_fsh_timestep_fct (size_t algebra_id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_fsh_timestep_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_prep_elem_loop_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_prep_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_fsh_elem_loop_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_add_jac_A_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_add_jac_M_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_add_def_A_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_add_def_A_expl_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_add_def_M_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
template<typename TAssFunc >
void set_add_rhs_elem_fct (ReferenceObjectID id, TAssFunc func)
 current Geometric Object
 
void remove_prep_timestep_fct (size_t algebra_id)
 current Geometric Object
 
void remove_prep_timestep_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_fsh_timestep_fct (size_t algebra_id)
 current Geometric Object
 
void remove_fsh_timestep_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_prep_elem_loop_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_prep_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_fsh_elem_loop_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_add_jac_A_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_add_jac_M_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_add_def_A_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_add_def_A_expl_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_add_def_M_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void remove_add_rhs_elem_fct (ReferenceObjectID id)
 current Geometric Object
 
void set_default_add_fct ()
 sets all assemble functions to the corresponding virtual ones
 
void clear_add_fct (ReferenceObjectID id)
 sets all assemble functions to NULL for a given ReferenceObjectID
 
void clear_add_fct ()
 sets all assemble functions to NULL (for all ReferenceObjectID's)
 

Detailed Description

template<typename TLeaf, typename TDomain>
class ug::IElemAssembleFuncs< TLeaf, TDomain >

This class encapsulates all functions related to error estimation.

Member Typedef Documentation

◆ domain_type

template<typename TLeaf , typename TDomain >
typedef TDomain ug::IElemAssembleFuncs< TLeaf, TDomain >::domain_type

Domain type.

◆ ElemdAFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::ElemdAFct) (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ ElemdMFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::ElemdMFct) (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ ElemJAFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::ElemJAFct) (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ ElemJMFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::ElemJMFct) (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ ElemRHSFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::ElemRHSFct) (LocalVector &rhs, GridObject *elem, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ FinishElemLoopFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::FinishElemLoopFct) ()
private

current Geometric Object

◆ FinishTimestepElemFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::FinishTimestepElemFct) (number, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ FinishTimestepFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::FinishTimestepFct) (number, VectorProxyBase *)
private

current Geometric Object

◆ leaf_type

template<typename TLeaf , typename TDomain >
typedef TLeaf ug::IElemAssembleFuncs< TLeaf, TDomain >::leaf_type

Barton Nackman trick (TODO: needed?)

◆ PrepareElemFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::PrepareElemFct) (const LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ PrepareElemLoopFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::PrepareElemLoopFct) (ReferenceObjectID roid, int si)
private

current Geometric Object

◆ PrepareTimestepElemFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::PrepareTimestepElemFct) (number, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
private

current Geometric Object

◆ PrepareTimestepFct

template<typename TLeaf , typename TDomain >
typedef void(T::* ug::IElemAssembleFuncs< TLeaf, TDomain >::PrepareTimestepFct) (number, number, VectorProxyBase *)
private

current Geometric Object

◆ T

template<typename TLeaf , typename TDomain >
typedef IElemAssembleFuncs<TLeaf, TDomain> ug::IElemAssembleFuncs< TLeaf, TDomain >::T
private

current Geometric Object

Constructor & Destructor Documentation

◆ IElemAssembleFuncs()

template<typename TLeaf , typename TDomain >
ug::IElemAssembleFuncs< TLeaf, TDomain >::IElemAssembleFuncs ( )
inline

◆ ~IElemAssembleFuncs()

template<typename TLeaf , typename TDomain >
virtual ug::IElemAssembleFuncs< TLeaf, TDomain >::~IElemAssembleFuncs ( )
inlinevirtual

Virtual destructor.

Member Function Documentation

◆ add_def_A_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::add_def_A_elem ( LocalVector d,
const LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

virtual Assembling of Defect (Stiffness part)

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::DiracSourceDisc< TDomain >, ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >, and ug::NeumannBoundaryBase< TDomain >.

References ug::GridObject::reference_object_id(), and ug::ThrowMissingVirtualMethod().

◆ add_def_A_expl_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::add_def_A_expl_elem ( LocalVector d,
const LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

◆ add_def_M_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::add_def_M_elem ( LocalVector d,
const LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

virtual Assembling of Defect (Mass part)

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::DiracSourceDisc< TDomain >, ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >, and ug::NeumannBoundaryBase< TDomain >.

References ug::GridObject::reference_object_id(), and ug::ThrowMissingVirtualMethod().

◆ add_jac_A_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::add_jac_A_elem ( LocalMatrix J,
const LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

Assembling of Jacobian (Stiffness part)

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::DiracSourceDisc< TDomain >, ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >, and ug::NeumannBoundaryBase< TDomain >.

References ug::GridObject::reference_object_id(), and ug::ThrowMissingVirtualMethod().

◆ add_jac_M_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::add_jac_M_elem ( LocalMatrix J,
const LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

Assembling of Jacobian (Mass part)

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::DiracSourceDisc< TDomain >, ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >, and ug::NeumannBoundaryBase< TDomain >.

References ug::GridObject::reference_object_id(), and ug::ThrowMissingVirtualMethod().

◆ add_rhs_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::add_rhs_elem ( LocalVector rhs,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

virtual Assembling of Right-Hand Side

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::NeumannBoundaryFE< TDomain >, ug::NeumannBoundaryFV< TDomain >, ug::NeumannBoundaryFV1< TDomain >, ug::DiracSourceDisc< TDomain >, and ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >.

References ug::GridObject::reference_object_id(), and ug::ThrowMissingVirtualMethod().

◆ asLeaf()

template<typename TLeaf , typename TDomain >
TLeaf & ug::IElemAssembleFuncs< TLeaf, TDomain >::asLeaf ( )
inline

◆ check_roid()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::check_roid ( ReferenceObjectID  roid,
int  discType 
)

check, if all inputs have been set

References ug::MASS, ug::RHS, ug::STIFF, and UG_THROW.

◆ clear_add_fct() [1/2]

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::clear_add_fct ( )
protected

sets all assemble functions to NULL (for all ReferenceObjectID's)

◆ clear_add_fct() [2/2]

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::clear_add_fct ( ReferenceObjectID  id)
protected

sets all assemble functions to NULL for a given ReferenceObjectID

◆ do_add_def_A_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_add_def_A_elem ( LocalVector d,
LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

current Geometric Object

References ug::LocalVector::access_by_map(), and UG_ASSERT.

◆ do_add_def_A_expl_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_add_def_A_expl_elem ( LocalVector d,
LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

current Geometric Object

References ug::LocalVector::access_by_map().

◆ do_add_def_M_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_add_def_M_elem ( LocalVector d,
LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

current Geometric Object

References ug::LocalVector::access_by_map(), and UG_ASSERT.

◆ do_add_jac_A_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_add_jac_A_elem ( LocalMatrix J,
LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

◆ do_add_jac_M_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_add_jac_M_elem ( LocalMatrix J,
LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

◆ do_add_rhs_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_add_rhs_elem ( LocalVector rhs,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

current Geometric Object

References ug::LocalVector::access_by_map(), and UG_ASSERT.

◆ do_fsh_elem_loop()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_fsh_elem_loop ( )

current Geometric Object

References UG_ASSERT.

Referenced by ug::DataEvaluator< TDomain >::finish_elem_loop().

◆ do_fsh_timestep()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_fsh_timestep ( const number  time,
VectorProxyBase u,
size_t  algebra_id 
)

current Geometric Object

◆ do_fsh_timestep_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_fsh_timestep_elem ( const number  time,
LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

current Geometric Object

References ug::LocalVector::access_by_map().

◆ do_prep_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_prep_elem ( LocalVector u,
GridObject elem,
const ReferenceObjectID  roid,
const MathVector< dim vCornerCoords[] 
)

current Geometric Object

References ug::LocalVector::access_by_map(), and UG_ASSERT.

◆ do_prep_elem_loop()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_prep_elem_loop ( const ReferenceObjectID  roid,
const int  si 
)

current Geometric Object

References UG_ASSERT.

◆ do_prep_timestep()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_prep_timestep ( number  future_time,
const number  time,
VectorProxyBase u,
size_t  algebra_id 
)

function dispatching call to implementation

◆ do_prep_timestep_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::do_prep_timestep_elem ( const number  time,
LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)

current Geometric Object

References ug::LocalVector::access_by_map().

◆ fsh_elem_loop()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::fsh_elem_loop ( )
virtual

virtual postprocesses the loop over all elements of one type

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFractFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::DiracSourceDisc< TDomain >, ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >, and ug::NeumannBoundaryFV1< TDomain >.

References ug::ThrowMissingVirtualMethod().

◆ fsh_timestep()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::fsh_timestep ( number  time,
VectorProxyBase u 
)
virtual

finish the time step

◆ fsh_timestep_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::fsh_timestep_elem ( const number  time,
const LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

◆ post_assemble_loop()

template<typename TLeaf , typename TDomain >
virtual void ug::IElemAssembleFuncs< TLeaf, TDomain >::post_assemble_loop ( )
inlinevirtual

virtual prepares the loop over all elements of one type

◆ prep_assemble_loop()

template<typename TLeaf , typename TDomain >
virtual void ug::IElemAssembleFuncs< TLeaf, TDomain >::prep_assemble_loop ( )
inlinevirtual

virtual prepares the loop over all elements of one type

Reimplemented in ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >.

◆ prep_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::prep_elem ( const LocalVector u,
GridObject elem,
const ReferenceObjectID  roid,
const MathVector< dim vCornerCoords[] 
)
virtual

virtual prepare one elements for assembling

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::DiracSourceDisc< TDomain >, ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >, ug::NeumannBoundaryFE< TDomain >, ug::NeumannBoundaryFV< TDomain >, and ug::NeumannBoundaryFV1< TDomain >.

References ug::GridObject::reference_object_id(), and ug::ThrowMissingVirtualMethod().

◆ prep_elem_loop()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::prep_elem_loop ( const ReferenceObjectID  roid,
const int  si 
)
virtual

virtual prepares the loop over all elements of one type

Reimplemented in ug::NavierStokes::CompressibleNavierStokesFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFE< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFractFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionFVCR< typename TDomain >, ug::ConvectionDiffusionPlugin::ConvectionDiffusionStabFE< typename TDomain >, ug::NavierStokes::CRNavierStokesSymBC< typename TDomain >, ug::NavierStokes::NavierStokesFE< typename TDomain >, ug::NavierStokes::NavierStokesFE< TDomain >, ug::NavierStokes::NavierStokesFV< typename TDomain >, ug::NavierStokes::NavierStokesFV1< typename TDomain >, ug::NavierStokes::NavierStokesFV1< TDomain >, ug::NavierStokes::NavierStokesFVCR< typename TDomain >, ug::NavierStokes::NavierStokesFVCR< TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFV1< typename TDomain >, ug::NavierStokes::NavierStokesNoNormalStressOutflowFVCR< typename TDomain >, ug::NavierStokes::NavierStokesSymBCFV1< typename TDomain >, ug::NavierStokes::NavierStokesWSBCFV1< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< typename TDomain >, ug::SmallStrainMechanics::SmallStrainMechanicsElemDisc< TDomain >, ug::DiracSourceDisc< TDomain >, ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >, ug::NeumannBoundaryFE< TDomain >, ug::NeumannBoundaryFV< TDomain >, and ug::NeumannBoundaryFV1< TDomain >.

References ug::ThrowMissingVirtualMethod().

◆ prep_timestep()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::prep_timestep ( number  future_time,
number  time,
VectorProxyBase u 
)
virtual

prepare the time step

Reimplemented in ug::FV1InnerBoundaryElemDisc< TImpl, TDomain >.

◆ prep_timestep_elem()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::prep_timestep_elem ( const number  time,
const LocalVector u,
GridObject elem,
const MathVector< dim vCornerCoords[] 
)
virtual

◆ remove_add_def_A_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_add_def_A_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_add_def_A_expl_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_add_def_A_expl_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_add_def_M_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_add_def_M_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_add_jac_A_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_add_jac_A_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_add_jac_M_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_add_jac_M_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_add_rhs_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_add_rhs_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_fsh_elem_loop_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_fsh_elem_loop_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_fsh_timestep_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_fsh_timestep_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_fsh_timestep_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_fsh_timestep_fct ( size_t  algebra_id)
protected

current Geometric Object

◆ remove_prep_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_prep_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_prep_elem_loop_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_prep_elem_loop_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_prep_timestep_elem_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_prep_timestep_elem_fct ( ReferenceObjectID  id)
protected

current Geometric Object

◆ remove_prep_timestep_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::remove_prep_timestep_fct ( size_t  algebra_id)
protected

current Geometric Object

◆ set_add_def_A_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_add_def_A_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_add_def_A_expl_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_add_def_A_expl_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_add_def_M_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_add_def_M_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_add_jac_A_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_add_jac_A_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_add_jac_M_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_add_jac_M_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_add_rhs_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_add_rhs_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_default_add_fct()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_default_add_fct ( )
protected

sets all assemble functions to the corresponding virtual ones

Referenced by ug::IElemAssembleFuncs< TLeaf, TDomain >::IElemAssembleFuncs().

◆ set_fsh_elem_loop_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_fsh_elem_loop_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_fsh_timestep_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_fsh_timestep_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_fsh_timestep_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_fsh_timestep_fct ( size_t  algebra_id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_prep_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_prep_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_prep_elem_loop_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_prep_elem_loop_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_prep_timestep_elem_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_prep_timestep_elem_fct ( ReferenceObjectID  id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_prep_timestep_fct()

template<typename TLeaf , typename TDomain >
template<typename TAssFunc >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_prep_timestep_fct ( size_t  algebra_id,
TAssFunc  func 
)
protected

current Geometric Object

References func().

◆ set_roid()

template<typename TLeaf , typename TDomain >
void ug::IElemAssembleFuncs< TLeaf, TDomain >::set_roid ( ReferenceObjectID  id,
int  discType 
)

sets the geometric object type

This functions set the geometric object type of the object, that is assembled next. The user has to call this function before most of the assembling routines can be called. Keep in mind, that the elements are looped type by type, thus this function has to be called very few times.

References ug::ROID_UNKNOWN, and UG_THROW.

Member Data Documentation

◆ dim

template<typename TLeaf , typename TDomain >
const int ug::IElemAssembleFuncs< TLeaf, TDomain >::dim = TDomain::dim
static

World dimension.

◆ m_roid

template<typename TLeaf , typename TDomain >
ReferenceObjectID ug::IElemAssembleFuncs< TLeaf, TDomain >::m_roid
protected

current Geometric Object

◆ m_vElemdAExplFct

template<typename TLeaf , typename TDomain >
ElemdAFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vElemdAExplFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vElemdAFct

template<typename TLeaf , typename TDomain >
ElemdAFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vElemdAFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vElemdMFct

template<typename TLeaf , typename TDomain >
ElemdMFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vElemdMFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vElemJAFct

template<typename TLeaf , typename TDomain >
ElemJAFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vElemJAFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vElemJMFct

template<typename TLeaf , typename TDomain >
ElemJMFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vElemJMFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vElemRHSFct

template<typename TLeaf , typename TDomain >
ElemRHSFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vElemRHSFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vFinishElemLoopFct

template<typename TLeaf , typename TDomain >
FinishElemLoopFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vFinishElemLoopFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vFinishTimestepElemFct

template<typename TLeaf , typename TDomain >
FinishTimestepElemFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vFinishTimestepElemFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vFinishTimestepFct

template<typename TLeaf , typename TDomain >
FinishTimestepFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vFinishTimestepFct[bridge::NUM_ALGEBRA_TYPES]
private

current Geometric Object

◆ m_vPrepareElemFct

template<typename TLeaf , typename TDomain >
PrepareElemFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vPrepareElemFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vPrepareElemLoopFct

template<typename TLeaf , typename TDomain >
PrepareElemLoopFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vPrepareElemLoopFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vPrepareTimestepElemFct

template<typename TLeaf , typename TDomain >
PrepareTimestepElemFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vPrepareTimestepElemFct[NUM_REFERENCE_OBJECTS]
private

current Geometric Object

◆ m_vPrepareTimestepFct

template<typename TLeaf , typename TDomain >
PrepareTimestepFct ug::IElemAssembleFuncs< TLeaf, TDomain >::m_vPrepareTimestepFct[bridge::NUM_ALGEBRA_TYPES]
private

current Geometric Object


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