36#ifndef __H__UG__PLUGINS__LEVEL_SET__FV1_CONV_H__
37#define __H__UG__PLUGINS__LEVEL_SET__FV1_CONV_H__
71template <
typename TDomain>
77 static const size_t _U_ = 0;
105 const char * functions,
161 template <
typename TElem>
179 const std::vector<LFEID> & vLfeID,
185 template <
typename TElem>
188 template <
typename TElem>
191 template <
typename TElem>
194 template <
typename TElem>
197 template <
typename TElem>
200 template <
typename TElem>
203 template <
typename TElem>
206 template <
typename TElem>
222 template <
typename TElem>
TDomain::position_type position_type
number m_source
the source term
Definition fv1_conv.h:231
virtual void prepare_setting(const std::vector< LFEID > &vLfeID, bool bNonRegular)
check type of the grid and the trial space
Definition fv1_conv_impl.h:80
IConvectionShapes< dim > conv_shape_type
upwind method type
Definition fv1_conv.h:95
base_type::position_type position_type
position type
Definition fv1_conv.h:89
void ex_grad(MathVector< dim > vValue[], const MathVector< dim > vGlobIP[], number time, int si, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< dim > vLocIP[], const size_t nip, bool bDeriv, std::vector< std::vector< MathVector< dim > > > vvvDeriv[])
computes the gradient of the concentration
Definition fv1_conv_impl.h:435
void set_velocity(SmartPtr< CplUserData< MathVector< dim >, dim > > vel)
sets the convection velocity
Definition fv1_conv.h:118
SmartPtr< DataExport< MathVector< dim >, dim > > m_exGrad
Export for the gradient of concentration.
Definition fv1_conv.h:238
static const int dim
world dimension
Definition fv1_conv.h:92
number m_alpha
the diffusion coefficient
Definition fv1_conv.h:235
void finish_element_loop()
finalizes the loop over the elements: clear the source
Definition fv1_conv_impl.h:134
void ass_dM_elem(LocalVector &d, const LocalVector &u, GridObject *elem, const position_type vCornerCoords[])
computes the mass part of the defect of a time-dependent problem
Definition fv1_conv_impl.h:339
SmartPtr< conv_shape_type > m_spUpwind
upwind method
Definition fv1_conv.h:227
void register_loc_discr_func()
registers the local assembler functions for a given element
Definition fv1_conv_impl.h:410
number m_diffusion
the diffusion coefficient
Definition fv1_conv.h:233
IElemDisc< TDomain > base_type
base class type
Definition fv1_conv.h:80
FV1_Convection< TDomain > this_type
own type
Definition fv1_conv.h:83
void prepare_element(const LocalVector &u, GridObject *elem, ReferenceObjectID roid, const position_type vCornerCoords[])
prepares a given element for assembling: computes the discretization of the rot-rot operator
Definition fv1_conv_impl.h:142
CplUserData< MathVector< dim >, dim > TGradientExport
returns the export of the gradient of associated unknown function
Definition fv1_conv.h:157
void ass_rhs_elem(LocalVector &d, GridObject *elem, const position_type vCornerCoords[])
assembles the right-hand side
Definition fv1_conv_impl.h:368
void set_source(number r)
sets the value of the source
Definition fv1_conv.h:140
void ass_JM_elem(LocalMatrix &J, const LocalVector &u, GridObject *elem, const position_type vCornerCoords[])
computes the mass matrix of a time-dependent problem
Definition fv1_conv_impl.h:310
void prepare_element_loop(ReferenceObjectID roid, int si)
prepares the loop over the elements: checks whether the parameters are set, ...
Definition fv1_conv_impl.h:107
DataImport< MathVector< dim >, dim > m_imVelocity
data import for the velocity field (if used)
Definition fv1_conv.h:229
void ass_dA_elem(LocalVector &d, const LocalVector &u, GridObject *elem, const position_type vCornerCoords[])
assembles the local defect
Definition fv1_conv_impl.h:235
void register_all_loc_discr_funcs()
registers the local assembler functions for all the elements and dimensions
Definition fv1_conv_impl.h:398
void ass_JA_elem(LocalMatrix &J, const LocalVector &u, GridObject *elem, const position_type vCornerCoords[])
assembles the local stiffness matrix
Definition fv1_conv_impl.h:168
SmartPtr< TGradientExport > gradient()
Definition fv1_conv.h:158
void set_upwind(SmartPtr< IConvectionShapes< dim > > upwind)
sets the upwind for the transport equation
Definition fv1_conv.h:112
void set_alpha(number d)
Definition fv1_conv.h:151
void set_diffusion(number d)
sets the diffusion coefficient
Definition fv1_conv.h:146
base_type::domain_type domain_type
domain type
Definition fv1_conv.h:86
static const size_t _U_
abbreviation for the local solution
Definition fv1_conv.h:77
SmartPtr< T, FreePolicy > make_sp(T *inst)
Definition fv1_conv.h:215
RegisterLocalDiscr(this_type *pThis)
Definition fv1_conv.h:216
void operator()(TElem &)
Definition fv1_conv.h:218
this_type * m_pThis
Definition fv1_conv.h:217