|
bool | condensed_FV () |
| returns the 'condensed scvf ip' flag More...
|
|
| ConvectionDiffusionFV1 (const char *functions, const char *subsets) |
| Constructor. More...
|
|
virtual void | prepare_setting (const std::vector< LFEID > &vLfeID, bool bNonRegularGrid) |
| type of trial space for each function used More...
|
|
void | set_condensed_FV (bool condensed) |
| activates/deactivates the condensed scvf ip's for the FV scheme More...
|
|
void | set_sss_manager (SmartPtr< CDSingularSourcesAndSinks< dim > > sss_mngr) |
| set singular sources and sinks More...
|
|
void | set_upwind (SmartPtr< IConvectionShapes< dim > > shapes) |
| set the upwind method More...
|
|
SmartPtr< CDSingularSourcesAndSinks< dim > > | sss_manager () |
| get singular sources and sinks More...
|
|
virtual bool | use_hanging () const |
| returns if hanging nodes are needed More...
|
|
| ConvectionDiffusionBase (const char *functions, const char *subsets) |
| Constructor. More...
|
|
virtual SmartPtr< CplUserData< MathVector< dim >, dim > > | gradient () |
| returns the export of the gradient of associated unknown function More...
|
|
void | set_reaction_explicit (number val) |
|
void | set_reaction_explicit (SmartPtr< CplUserData< number, dim > > user) |
|
void | set_reaction_rate_explicit (number val) |
|
void | set_reaction_rate_explicit (SmartPtr< CplUserData< number, dim > > user) |
|
void | set_source_explicit (number val) |
|
void | set_source_explicit (SmartPtr< CplUserData< number, dim > > user) |
|
virtual SmartPtr< CplUserData< number, dim > > | value () |
| returns the export of the value of associated unknown function More...
|
|
void | set_diffusion (SmartPtr< CplUserData< MathMatrix< dim, dim >, dim > > user) |
| sets the diffusion tensor More...
|
|
void | set_diffusion (number val) |
| sets the diffusion tensor More...
|
|
void | set_velocity (SmartPtr< CplUserData< MathVector< dim >, dim > > user) |
| sets the velocity field More...
|
|
void | set_velocity (const std::vector< number > &vVel) |
| sets the velocity field More...
|
|
void | set_flux (SmartPtr< CplUserData< MathVector< dim >, dim > > user) |
| sets the flux More...
|
|
void | set_flux (const std::vector< number > &vVel) |
| sets the flux More...
|
|
void | set_reaction_rate (SmartPtr< CplUserData< number, dim > > user) |
| sets the reaction rate More...
|
|
void | set_reaction_rate (number val) |
| sets the reaction rate More...
|
|
void | set_reaction (SmartPtr< CplUserData< number, dim > > user) |
| sets the reaction More...
|
|
void | set_reaction (number val) |
| sets the reaction More...
|
|
void | set_source (SmartPtr< CplUserData< number, dim > > user) |
| sets the source / sink term More...
|
|
void | set_source (number val) |
| sets the source / sink term More...
|
|
void | set_vector_source (SmartPtr< CplUserData< MathVector< dim >, dim > > user) |
| sets the vector source term More...
|
|
void | set_vector_source (const std::vector< number > &vVel) |
| sets the vector source term More...
|
|
void | set_mass_scale (SmartPtr< CplUserData< number, dim > > user) |
| sets mass scale More...
|
|
void | set_mass_scale (number val) |
| sets mass scale More...
|
|
void | set_mass (SmartPtr< CplUserData< number, dim > > user) |
| sets mass More...
|
|
void | set_mass (number val) |
| sets mass More...
|
|
void | add_elem_modifier (SmartPtr< IElemDiscModifier< TDomain > > elemModifier) |
|
std::vector< SmartPtr< IElemDiscModifier< TDomain > > > & | get_elem_modifier () |
|
| IElemDisc (const char *functions, const char *subsets) |
|
| IElemDisc (const std::vector< std::string > &vFct, const std::vector< std::string > &vSubset) |
|
virtual void | add_def_A_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
virtual void | add_def_A_expl_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
virtual void | add_def_M_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
virtual void | add_jac_A_elem (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
virtual void | add_jac_M_elem (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
virtual void | add_rhs_elem (LocalVector &rhs, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
IElemDisc< TDomain > & | asLeaf () |
|
void | check_roid (ReferenceObjectID roid, int discType) |
|
void | do_add_def_A_elem (LocalVector &d, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_add_def_A_expl_elem (LocalVector &d, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_add_def_M_elem (LocalVector &d, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_add_jac_A_elem (LocalMatrix &J, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_add_jac_M_elem (LocalMatrix &J, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_add_rhs_elem (LocalVector &rhs, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_fsh_elem_loop () |
|
void | do_fsh_timestep (const number time, VectorProxyBase *u, size_t algebra_id) |
|
void | do_fsh_timestep_elem (const number time, LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_prep_elem (LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[]) |
|
void | do_prep_elem_loop (const ReferenceObjectID roid, const int si) |
|
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[]) |
|
virtual void | fsh_timestep (number time, VectorProxyBase *u) |
|
virtual void | fsh_timestep_elem (const number time, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
| IElemAssembleFuncs () |
|
virtual void | post_assemble_loop () |
|
virtual void | prep_elem (const LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[]) |
|
virtual void | prep_elem_loop (const ReferenceObjectID roid, const int si) |
|
virtual void | prep_timestep (number future_time, number time, VectorProxyBase *u) |
|
virtual void | prep_timestep_elem (const number time, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | set_roid (ReferenceObjectID id, int discType) |
|
virtual | ~IElemAssembleFuncs () |
|
| IElemError (const char *functions, const char *subsets) |
|
| IElemError (const std::vector< std::string > &vFct, const std::vector< std::string > &vSubset) |
|
SmartPtr< ApproximationSpace< TDomain > > | approx_space () |
|
ConstSmartPtr< ApproximationSpace< TDomain > > | approx_space () const |
|
void | check_setup (bool bNonRegularGrid) |
|
void | clear_imports () |
|
SmartPtr< TDomain > | domain () |
|
ConstSmartPtr< TDomain > | domain () const |
|
const FunctionGroup & | function_group () const |
|
ConstSmartPtr< FunctionPattern > | function_pattern () const |
|
IDataImport< dim > & | get_import (size_t i) |
|
| IElemDiscBase (const char *functions="", const char *subsets="") |
|
| IElemDiscBase (const std::vector< std::string > &vFct, const std::vector< std::string > &vSubset) |
|
bool | is_time_dependent () const |
|
bool | local_time_series_needed () |
|
const LocalVectorTimeSeries * | local_time_solutions () const |
|
const FunctionIndexMapping & | map () const |
|
number | mass_scale () const |
|
number | mass_scale () const |
|
number | mass_scale (const size_t timePoint) const |
|
number | mass_scale (const size_t timePoint) const |
|
const std::vector< number > & | mass_scales () const |
|
const std::vector< number > & | mass_scales () const |
|
size_t | num_fct () const |
|
size_t | num_imports () const |
|
size_t | num_subsets () const |
|
void | register_import (IDataImport< dim > &Imp) |
|
void | set_approximation_space (SmartPtr< ApproximationSpace< TDomain > > approxSpace) |
|
void | set_functions (const std::string &functions) |
|
void | set_functions (const std::vector< std::string > &functions) |
|
void | set_stationary () |
|
void | set_stationary (bool bStationaryForced=true) |
|
void | set_subsets (const std::string &subsets) |
|
void | set_subsets (const std::vector< std::string > &subsets) |
|
void | set_time_dependent (LocalVectorTimeSeries &locTimeSeries, const std::vector< number > &vScaleMass, const std::vector< number > &vScaleStiff) |
|
void | set_time_independent () |
|
void | set_time_point (const size_t timePoint) |
|
number | stiff_scale () const |
|
number | stiff_scale () const |
|
number | stiff_scale (const size_t timePoint) const |
|
number | stiff_scale (const size_t timePoint) const |
|
const std::vector< number > & | stiff_scales () const |
|
const std::vector< number > & | stiff_scales () const |
|
TDomain::subset_handler_type & | subset_handler () |
|
const TDomain::subset_handler_type & | subset_handler () const |
|
const std::vector< std::string > & | symb_fcts () const |
|
const std::vector< std::string > & | symb_subsets () const |
|
number | time () const |
|
size_t | time_point () const |
|
virtual int | type () const |
|
virtual | ~IElemDiscBase () |
|
IElemDisc< TDomain > & | asLeaf () |
|
void | check_roid (ReferenceObjectID roid, int discType) |
|
virtual void | compute_err_est_A_elem (const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
|
virtual void | compute_err_est_M_elem (const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
|
virtual void | compute_err_est_rhs_elem (GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
|
void | do_compute_err_est_A_elem (LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
|
void | do_compute_err_est_M_elem (LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
|
void | do_compute_err_est_rhs_elem (GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
|
void | do_fsh_err_est_elem_loop () |
|
void | do_prep_err_est_elem (LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
void | do_prep_err_est_elem_loop (const ReferenceObjectID roid, const int si) |
|
virtual SmartPtr< IErrEstData< TDomain > > | err_est_data () |
|
bool | err_est_enabled () const |
|
| IElemEstimatorFuncs () |
|
virtual void | prep_err_est_elem (const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
|
virtual void | prep_err_est_elem_loop (const ReferenceObjectID roid, const int si) |
|
void | set_error_estimator (SmartPtr< IErrEstData< TDomain > > ee) |
|
void | set_roid (ReferenceObjectID id, int discType) |
|
virtual | ~IElemEstimatorFuncs () |
|
|
template<typename TElem , typename TFVGeom > |
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< TFVGeom::dim > vLocIP[], const size_t nip, bool bDeriv, std::vector< std::vector< MathVector< dim > > > vvvDeriv[]) |
| computes the gradient of the concentration More...
|
|
template<typename TElem , typename TFVGeom > |
void | ex_value (number vValue[], const MathVector< dim > vGlobIP[], number time, int si, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< TFVGeom::dim > vLocIP[], const size_t nip, bool bDeriv, std::vector< std::vector< number > > vvvDeriv[]) |
| computes the concentration More...
|
|
const IConvectionShapes< dim > & | get_updated_conv_shapes (const FVGeometryBase &geo, bool compute_deriv) |
|
template<typename TElem , typename TFVGeom > |
void | lin_def_diffusion (const LocalVector &u, std::vector< std::vector< MathMatrix< dim, dim > > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the diffusion More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_flux (const LocalVector &u, std::vector< std::vector< MathVector< dim > > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the flux More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_mass (const LocalVector &u, std::vector< std::vector< number > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the mass scale term More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_mass_scale (const LocalVector &u, std::vector< std::vector< number > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the mass scale term More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_reaction (const LocalVector &u, std::vector< std::vector< number > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the reaction More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_reaction_rate (const LocalVector &u, std::vector< std::vector< number > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the reaction More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_source (const LocalVector &u, std::vector< std::vector< number > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the source term More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_vector_source (const LocalVector &u, std::vector< std::vector< MathVector< dim > > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the vector source term More...
|
|
template<typename TElem , typename TFVGeom > |
void | lin_def_velocity (const LocalVector &u, std::vector< std::vector< MathVector< dim > > > vvvLinDef[], const size_t nip) |
| computes the linearized defect w.r.t to the velocity More...
|
|
|
void | register_all_funcs (bool bHang) |
|
template<typename TElem > |
void | register_func_for_ (bool bHang) |
|
template<typename TElem , typename TFVGeom > |
void | register_func () |
|
void | init_imports () |
|
void | clear_add_fct () |
|
void | clear_add_fct (ReferenceObjectID id) |
|
void | set_default_add_fct () |
|
void | clear_add_fct () |
|
void | clear_add_fct (ReferenceObjectID id) |
|
void | remove_add_def_A_elem_fct (ReferenceObjectID id) |
|
void | remove_add_def_A_expl_elem_fct (ReferenceObjectID id) |
|
void | remove_add_def_M_elem_fct (ReferenceObjectID id) |
|
void | remove_add_jac_A_elem_fct (ReferenceObjectID id) |
|
void | remove_add_jac_M_elem_fct (ReferenceObjectID id) |
|
void | remove_add_rhs_elem_fct (ReferenceObjectID id) |
|
void | remove_fsh_elem_loop_fct (ReferenceObjectID id) |
|
void | remove_fsh_timestep_elem_fct (ReferenceObjectID id) |
|
void | remove_fsh_timestep_fct (size_t algebra_id) |
|
void | remove_prep_elem_fct (ReferenceObjectID id) |
|
void | remove_prep_elem_loop_fct (ReferenceObjectID id) |
|
void | remove_prep_timestep_elem_fct (ReferenceObjectID id) |
|
void | remove_prep_timestep_fct (size_t algebra_id) |
|
void | set_add_def_A_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_add_def_A_expl_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_add_def_M_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_add_jac_A_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_add_jac_M_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_add_rhs_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_default_add_fct () |
|
void | set_fsh_elem_loop_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_fsh_timestep_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_fsh_timestep_fct (size_t algebra_id, TAssFunc func) |
|
void | set_prep_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_prep_elem_loop_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_prep_timestep_elem_fct (ReferenceObjectID id, TAssFunc func) |
|
void | set_prep_timestep_fct (size_t algebra_id, TAssFunc func) |
|
void | clear_add_fct () |
|
void | clear_add_fct (ReferenceObjectID id) |
|
virtual void | approximation_space_changed () |
|
void | set_function_pattern (ConstSmartPtr< FunctionPattern > fctPatt) |
|
void | update_function_index_mapping () |
|
void | clear_add_fct () |
|
void | clear_add_fct (ReferenceObjectID id) |
|
void | remove_compute_err_est_A_elem (ReferenceObjectID id) |
|
void | remove_compute_err_est_M_elem (ReferenceObjectID id) |
|
void | remove_compute_err_est_rhs_elem (ReferenceObjectID id) |
|
void | remove_fsh_err_est_elem_loop (ReferenceObjectID id) |
|
void | remove_prep_err_est_elem (ReferenceObjectID id) |
|
void | remove_prep_err_est_elem_loop (ReferenceObjectID id) |
|
void | set_compute_err_est_A_elem (ReferenceObjectID id, TAssFunc func) |
|
void | set_compute_err_est_M_elem (ReferenceObjectID id, TAssFunc func) |
|
void | set_compute_err_est_rhs_elem (ReferenceObjectID id, TAssFunc func) |
|
void | set_default_add_fct () |
|
void | set_fsh_err_est_elem_loop (ReferenceObjectID id, TAssFunc func) |
|
void | set_prep_err_est_elem (ReferenceObjectID id, TAssFunc func) |
|
void | set_prep_err_est_elem_loop (ReferenceObjectID id, TAssFunc func) |
|
|
template<typename TElem , typename TFVGeom > |
void | add_def_A_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
| assembles the stiffness part of the local defect More...
|
|
template<typename TElem , typename TFVGeom > |
void | add_def_A_expl_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
| assembles the stiffness part of the local defect explicit reaction, reaction_rate and source More...
|
|
template<typename TElem , typename TFVGeom > |
void | add_def_M_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
| assembles the mass part of the local defect More...
|
|
template<typename TElem , typename TFVGeom > |
void | add_jac_A_elem (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
| assembles the local stiffness matrix using a finite volume scheme More...
|
|
template<typename TElem , typename TFVGeom > |
void | add_jac_M_elem (LocalMatrix &J, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
| assembles the local mass matrix using a finite volume scheme More...
|
|
template<typename TElem , typename TFVGeom > |
void | add_rhs_elem (LocalVector &d, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
| assembles the local right hand side More...
|
|
template<typename TElem , typename TFVGeom > |
void | add_sss_def_elem (LocalVector &d, const LocalVector &u, GridObject *elem, const TFVGeom &geo, size_t i, number flux) |
| adds contributions of a singular source or sink to the defect More...
|
|
template<typename TElem , typename TFVGeom > |
void | add_sss_jac_elem (LocalMatrix &J, const LocalVector &u, GridObject *elem, const TFVGeom &geo, size_t i, number flux) |
| adds contributions of a singular source or sink to the matrix More...
|
|
template<typename TElem , typename TFVGeom > |
void | compute_err_est_A_elem (const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
| computes the error estimator contribution for one element More...
|
|
template<typename TElem , typename TFVGeom > |
void | compute_err_est_M_elem (const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
| computes the error estimator contribution for one element More...
|
|
template<typename TElem , typename TFVGeom > |
void | compute_err_est_rhs_elem (GridObject *elem, const MathVector< dim > vCornerCoords[], const number &scale) |
| computes the error estimator contribution for one element More...
|
|
template<typename TElem , typename TFVGeom > |
void | fsh_elem_loop () |
| finishes the loop over all elements More...
|
|
template<typename TElem , typename TFVGeom > |
void | fsh_err_est_elem_loop () |
| postprocesses the loop over all elements of one type in the computation of the error estimator More...
|
|
virtual void | prep_assemble_loop () |
| prepares assembling More...
|
|
template<typename TElem , typename TFVGeom > |
void | prep_elem (const LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[]) |
| prepares the element for assembling More...
|
|
template<typename TElem , typename TFVGeom > |
void | prep_elem_loop (const ReferenceObjectID roid, const int si) |
| prepares the loop over all elements More...
|
|
template<typename TElem , typename TFVGeom > |
void | prep_err_est_elem (const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[]) |
| prepares the element for assembling the error estimator More...
|
|
template<typename TElem , typename TFVGeom > |
void | prep_err_est_elem_loop (const ReferenceObjectID roid, const int si) |
| prepares the loop over all elements of one type for the computation of the error estimator More...
|
|
template<typename TDomain>
class ug::ConvectionDiffusionPlugin::ConvectionDiffusionFV1< TDomain >
FV Discretization for the Convection-Diffusion Equation.
This is the simple (upwinded) FV discretization of the convection-diffusion equation. Cf. ConvectionDiffusionBase base class for the problem setting.
- See also
- ConvectionDiffusionBase for the problem settings
- Template Parameters
-