|
Plugins
|
#include <turbulent_viscosity_fvcr.h>
Inheritance diagram for ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >:Public Member Functions | |
| void | addUiUjTerm (aSideTensor &aaDefTensor, const number factor, SmartPtr< TGridFunction > u, aSideDimVector *aaU) |
| void | assembleDeformationTensor (aSideTensor &aaDefTensor, aSideNumber &aaVol, SmartPtr< TGridFunction > u, aSideDimVector *aaU) |
| virtual void | compute (LocalVector *u, GridObject *elem, const MathVector< dim > vCornerCoords[], bool bDeriv=false) |
| virtual void | compute (LocalVectorTimeSeries *u, GridObject *elem, const MathVector< dim > vCornerCoords[], bool bDeriv=false) |
| virtual bool | continuous () const |
| returns if provided data is continuous over geometric object boundaries | |
| template<typename VType > | |
| void | elementFilter (PeriodicAttachmentAccessor< side_type, Attachment< VType > > &aaUHat, aSideNumber &aaVol, SmartPtr< TGridFunction > u, PeriodicAttachmentAccessor< side_type, Attachment< VType > > *aaU) |
| template<int refDim> | |
| void | evaluate (number vValue[], const MathVector< dim > vGlobIP[], number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< refDim > vLocIP[], const size_t nip, LocalVector *u, const MathMatrix< refDim, dim > *vJT=NULL) const |
| void | fillAttachment (aSideDimVector &aaU, SmartPtr< TGridFunction > u) |
| virtual void | operator() (TData &value, const MathVector< dim > &globIP, number time, int si) const |
| virtual void | operator() (TData vValue[], const MathVector< dim > vGlobIP[], number time, int si, const size_t nip) const |
| virtual bool | requires_grid_fct () const |
| returns if grid function is needed for evaluation | |
| void | scaleTensorByNorm (aSideTensor &aaTensor) |
| template<typename VType > | |
| void | scvFilter (PeriodicAttachmentAccessor< side_type, Attachment< VType > > &aaUHat, aSideNumber &aaVol, SmartPtr< TGridFunction > u, PeriodicAttachmentAccessor< side_type, Attachment< VType > > *aaU) |
| void | setTurbulenceZeroBoundaries (const char *subsets) |
| void | transferToLowerLevels (aSideNumber &aaData, ApproximationSpace< domain_type > &approximationSpace) |
| void | set_kinematic_viscosity (SmartPtr< CplUserData< number, dim > > user) |
| void | set_kinematic_viscosity (number val) |
Public Member Functions inherited from ug::StdUserData< StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >, TData, dim > | |
| virtual void | operator() (TData vValue[], const MathVector< dim > vGlobIP[], number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 1 > vLocIP[], const size_t nip, LocalVector *u, const MathMatrix< 1, dim > *vJT=NULL) const |
| virtual void | operator() (TData vValue[], const MathVector< dim > vGlobIP[], number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 1 > vLocIP[], const size_t nip, LocalVector *u, const MathMatrix< 1, dim > *vJT=NULL) const |
| virtual void | operator() (TData vValue[], const MathVector< dim > vGlobIP[], number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 2 > vLocIP[], const size_t nip, LocalVector *u, const MathMatrix< 2, dim > *vJT=NULL) const |
| virtual void | operator() (TData vValue[], const MathVector< dim > vGlobIP[], number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 2 > vLocIP[], const size_t nip, LocalVector *u, const MathMatrix< 2, dim > *vJT=NULL) const |
| virtual void | operator() (TData vValue[], const MathVector< dim > vGlobIP[], number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 3 > vLocIP[], const size_t nip, LocalVector *u, const MathMatrix< 3, dim > *vJT=NULL) const |
| virtual void | operator() (TData vValue[], const MathVector< dim > vGlobIP[], number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 3 > vLocIP[], const size_t nip, LocalVector *u, const MathMatrix< 3, dim > *vJT=NULL) const |
Public Member Functions inherited from ug::CplUserData< typename TData, int dim, typename TRet > | |
| bool | defined (size_t s, size_t ip) const |
| size_t | num_ip (size_t s) const |
| size_t | num_series () const |
| void | register_storage_callback (DataImport< TData, dim > *obj, void(DataImport< TData, dim >::*func)()) |
| void | unregister_storage_callback (DataImport< TData, dim > *obj) |
| TData & | value (size_t s, size_t ip) |
| const TData & | value (size_t s, size_t ip) const |
| TData * | values (size_t s) |
| const TData * | values (size_t s) const |
| ~CplUserData () | |
Public Member Functions inherited from ug::ICplUserData< int dim > | |
| bool | at_current_time (size_t s) const |
| virtual void | check_setup () const |
| void | clear () |
| virtual bool | constant () const |
| int | dim_local_ips () const |
| ICplUserData () | |
| const MathVector< dim > & | ip (size_t s, size_t ip) const |
| const MathVector< dim > * | ips (size_t s) const |
| const MathVector< ldim > & | local_ip (size_t s, size_t ip) const |
| const MathVector< ldim > * | local_ips (size_t s) const |
| virtual SmartPtr< ICplUserData > | needed_data (size_t i) |
| size_t | num_ip (size_t s) const |
| virtual size_t | num_needed_data () const |
| size_t | num_series () const |
| size_t | register_local_ip_series (const MathVector< ldim > *vPos, const size_t numIP, bool bMayChange=true) |
| size_t | register_local_ip_series (const MathVector< ldim > *vPos, const size_t numIP, const int timePointSpec, bool bMayChange=true) |
| void | set_global_ips (size_t s, const MathVector< dim > *vPos, size_t numIP) |
| void | set_local_ips (const size_t seriesId, const MathVector< ldim > *vPos, const size_t numIP) |
| void | set_subset (int si) |
| void | set_time_point (const size_t seriesId, const int timePointSpec) |
| void | set_time_point (size_t timePoint) |
| void | set_times (const std::vector< number > &vTime) |
| int | subset () const |
| number | time () const |
| number | time (size_t s) const |
| size_t | time_point () |
| size_t | time_point (size_t s) const |
| int | time_point_specification (size_t s) const |
| virtual void | update_dof_sizes (const LocalIndices &ind) |
| virtual bool | zero_derivative () const |
| virtual | ~ICplUserData () |
Public Member Functions inherited from ug::UserDataInfo | |
| const FunctionGroup & | function_group () const |
| const FunctionIndexMapping & | map () const |
| size_t | num_fct () const |
| const char * | obj_name () |
| virtual void | set_function_pattern (ConstSmartPtr< FunctionPattern > fctPatt) |
| void | set_obj_name (const char *name) |
| virtual | ~UserDataInfo () |
Public Member Functions inherited from ug::UserData< typename TData, int dim, typename TRet > | |
| int | get_dim () const |
| TRet | operator() (TData &value, const MathVector< dim > &globIP, number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 1 > &locIP, LocalVector *u) const |
| TRet | operator() (TData &value, const MathVector< dim > &globIP, number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 1 > &locIP, LocalVector *u) const |
| TRet | operator() (TData &value, const MathVector< dim > &globIP, number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 2 > &locIP, LocalVector *u) const |
| TRet | operator() (TData &value, const MathVector< dim > &globIP, number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 2 > &locIP, LocalVector *u) const |
| TRet | operator() (TData &value, const MathVector< dim > &globIP, number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 3 > &locIP, LocalVector *u) const |
| TRet | operator() (TData &value, const MathVector< dim > &globIP, number time, int si, GridObject *elem, const MathVector< dim > vCornerCoords[], const MathVector< 3 > &locIP, LocalVector *u) const |
| virtual void | operator() (TData &value, const MathVector< dim > &globIP, number time, int si, Vertex *vrt) const |
| std::string | type () const |
Public Attributes | |
| aSideTensor | m_acDeformation |
| aSideNumber | m_acTurbulentViscosity |
| aSideNumber | m_acVolume |
| ATensor | m_aDeformation |
| ANumber | m_aTurbulentViscosity |
| ANumber | m_aVolume |
| grid_type * | m_grid |
Static Public Attributes | |
| static const size_t | max_number_of_ips = 20 |
Protected Member Functions | |
| TImpl & | getImpl () |
| access to implementation | |
| const TImpl & | getImpl () const |
| const access to implementation | |
Protected Member Functions inherited from ug::StdUserData< StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >, TData, dim > | |
| TImpl & | getImpl () |
| const TImpl & | getImpl () const |
Protected Member Functions inherited from ug::CplUserData< typename TData, int dim, typename TRet > | |
| void | call_storage_callback () const |
| void | check_series (size_t s) const |
| void | check_series_ip (size_t s, size_t ip) const |
| virtual void | local_ip_series_added (const size_t seriesID) |
| virtual void | local_ip_series_to_be_cleared () |
| virtual void | local_ips_changed (const size_t seriesID, const size_t newNumIP) |
| virtual void | value_storage_changed (const size_t seriesID) |
Protected Member Functions inherited from ug::ICplUserData< int dim > | |
| void | check_s (size_t s) const |
| void | check_s_ip (size_t s, size_t ip) const |
| std::vector< const MathVector< 1 > * > & | get_local_ips (Int2Type< 1 >) |
| const std::vector< const MathVector< 1 > * > & | get_local_ips (Int2Type< 1 >) const |
| std::vector< const MathVector< 2 > * > & | get_local_ips (Int2Type< 2 >) |
| const std::vector< const MathVector< 2 > * > & | get_local_ips (Int2Type< 2 >) const |
| std::vector< const MathVector< 3 > * > & | get_local_ips (Int2Type< 3 >) |
| const std::vector< const MathVector< 3 > * > & | get_local_ips (Int2Type< 3 >) const |
| virtual void | global_ips_changed (const size_t seriesID, const MathVector< dim > *vPos, const size_t numIP) |
Protected Attributes | |
| bool | m_bAdaptive |
| SmartPtr< CplUserData< number, dim > > | m_imKinViscosity |
| Data import for kinematic viscosity. | |
| SubsetGroup | m_turbZeroSg |
| SmartPtr< TGridFunction > | m_uInfo |
| number | m_viscosityNumber |
Protected Attributes inherited from ug::ICplUserData< int dim > | |
| int | m_defaultTimePoint |
| int | m_locPosDim |
| std::vector< const MathVector< 1 > * > | m_pvLocIP1d |
| std::vector< const MathVector< 2 > * > | m_pvLocIP2d |
| std::vector< const MathVector< 3 > * > | m_pvLocIP3d |
| int | m_si |
| size_t | m_timePoint |
| std::vector< bool > | m_vMayChange |
| std::vector< size_t > | m_vNumIP |
| std::vector< number > | m_vTime |
| std::vector< int > | m_vTimePoint |
| std::vector< const MathVector< dim > * > | m_vvGlobPos |
Protected Attributes inherited from ug::UserDataInfo | |
| FunctionGroup | m_fctGrp |
| FunctionIndexMapping | m_map |
| SmartPtr< char > | m_objName |
Private Types | |
| typedef TGridFunction::algebra_type | algebra_type |
| algebra type | |
| typedef Attachment< vecDim > | AMathVectorDim |
| typedef PeriodicAttachmentAccessor< side_type, AMathVectorDim > | aSideDimVector |
| typedef PeriodicAttachmentAccessor< side_type, ANumber > | aSideNumber |
| typedef PeriodicAttachmentAccessor< side_type, ATensor > | aSideTensor |
| typedef Attachment< dimMat > | ATensor |
| typedef MathSymmetricMatrix< dim > | dimMat |
| attachment accessor types | |
| typedef TGridFunction::domain_type | domain_type |
| domain type | |
| typedef TGridFunction::template dim_traits< dim >::grid_base_object | elem_type |
| element type | |
| typedef TGridFunction::template dim_traits< dim >::const_iterator | ElemIterator |
| element iterator | |
| typedef domain_type::grid_type | grid_type |
| grid type | |
| typedef domain_type::position_accessor_type | position_accessor_type |
| position accessor type | |
| typedef elem_type::side | side_type |
| side type | |
| typedef TGridFunction::template traits< side_type >::const_iterator | SideIterator |
| side iterator | |
| typedef MathVector< dim > | vecDim |
Additional Inherited Members | |
Public Types inherited from ug::CplUserData< typename TData, int dim, typename TRet > | |
| typedef ICplUserData< dim > | base_type |
Public Types inherited from ug::UserData< typename TData, int dim, typename TRet > | |
| typedef TData | data_type |
| typedef TRet | return_type |
concept derived from grid_function_user_data.h
|
private |
algebra type
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
attachment accessor types
|
private |
domain type
|
private |
element type
|
private |
element iterator
|
private |
grid type
|
private |
position accessor type
|
private |
side type
|
private |
side iterator
|
private |
| void ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::addUiUjTerm | ( | aSideTensor & | aaDefTensor, |
| const number | factor, | ||
| SmartPtr< TGridFunction > | u, | ||
| aSideDimVector * | aaU | ||
| ) |
References ug::DoFRef(), ug::PeriodicBoundaryManager::is_slave(), and SPNULL.
| void ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::assembleDeformationTensor | ( | aSideTensor & | aaDefTensor, |
| aSideNumber & | aaVol, | ||
| SmartPtr< TGridFunction > | u, | ||
| aSideDimVector * | aaU | ||
| ) |
References ug::DimCRFVGeometry< int TDim, int TWorldDim >::add_boundary_subset(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::bf(), ug::DoFRef(), ug::DimCRFVGeometry::SCVF::from(), ug::PeriodicBoundaryManager::is_slave(), ug::DimCRFVGeometry::BF::node_id(), ug::DimCRFVGeometry::SCV::node_id(), ug::DimCRFVGeometry::BF::normal(), ug::DimCRFVGeometry::SCVF::normal(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_bf(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_constrained_dofs(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_scv(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_scvf(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_sh(), num_subsets(), s, ug::DimCRFVGeometry< int TDim, int TWorldDim >::scv(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::scvf(), ug::SetAttachmentValues(), ug::DimCRFVGeometry::SCVF::shape(), SPNULL, ug::DimCRFVGeometry::SCVF::to(), UG_ASSERT, ug::DimCRFVGeometry< int TDim, int TWorldDim >::update(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::update_hanging(), and ug::DimCRFVGeometry::SCV::volume().
|
inlinevirtual |
Implements ug::ICplUserData< int dim >.
References ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::getImpl(), ug::ICplUserData< int dim >::ips(), ug::CplUserData< typename TData, int dim, typename TRet >::num_ip(), ug::CplUserData< typename TData, int dim, typename TRet >::num_series(), s, ug::ICplUserData< int dim >::subset(), ug::ICplUserData< int dim >::time(), and ug::CplUserData< typename TData, int dim, typename TRet >::values().
|
inlinevirtual |
Implements ug::ICplUserData< int dim >.
References ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::getImpl(), ug::ICplUserData< int dim >::ips(), ug::CplUserData< typename TData, int dim, typename TRet >::num_ip(), ug::CplUserData< typename TData, int dim, typename TRet >::num_series(), s, ug::LocalVectorTimeSeries::solution(), ug::ICplUserData< int dim >::subset(), ug::ICplUserData< int dim >::time(), and ug::CplUserData< typename TData, int dim, typename TRet >::values().
|
inlinevirtual |
returns if provided data is continuous over geometric object boundaries
Implements ug::UserDataInfo.
| void ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::elementFilter | ( | PeriodicAttachmentAccessor< side_type, Attachment< VType > > & | aaUHat, |
| aSideNumber & | aaVol, | ||
| SmartPtr< TGridFunction > | u, | ||
| PeriodicAttachmentAccessor< side_type, Attachment< VType > > * | aaU | ||
| ) |
References ug::NavierStokes::assignValue(), ug::LFEID::CROUZEIX_RAVIART, ug::DoFRef(), ug::DimReferenceMapping< int TDim, int TWorldDim >::global_to_local(), ug::DimCRFVGeometry::SCV::node_id(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_scv(), num_subsets(), s, ug::DimCRFVGeometry< int TDim, int TWorldDim >::scv(), ug::SetAttachmentValues(), ug::LocalShapeFunctionSet< int TDim, typename TShape, typename TGrad >::shapes(), SPNULL, UG_ASSERT, ug::DimCRFVGeometry< int TDim, int TWorldDim >::update(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::update_hanging(), and ug::DimCRFVGeometry::SCV::volume().
|
inline |
References ug::LFEID::CROUZEIX_RAVIART, ug::ICplUserData< int dim >::ip(), ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_acTurbulentViscosity, ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_grid, ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::max_number_of_ips, ug::GridObject::reference_object_id(), ug::LocalShapeFunctionSet< int TDim, typename TShape, typename TGrad >::shapes(), ug::ICplUserData< int dim >::time(), UG_ASSERT, and UG_CATCH_THROW.
| void ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::fillAttachment | ( | aSideDimVector & | aaU, |
| SmartPtr< TGridFunction > | u | ||
| ) |
|
inlineprotected |
access to implementation
Referenced by ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::compute(), and ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::compute().
|
inlineprotected |
const access to implementation
|
inlinevirtual |
Implements ug::StdUserData< StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >, TData, dim >.
References UG_THROW.
|
inlinevirtual |
Implements ug::StdUserData< StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >, TData, dim >.
References UG_THROW.
|
inlinevirtual |
returns if grid function is needed for evaluation
Implements ug::UserDataInfo.
| void ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::scaleTensorByNorm | ( | aSideTensor & | aaTensor | ) |
References ug::PeriodicBoundaryManager::is_slave().
| void ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::scvFilter | ( | PeriodicAttachmentAccessor< side_type, Attachment< VType > > & | aaUHat, |
| aSideNumber & | aaVol, | ||
| SmartPtr< TGridFunction > | u, | ||
| PeriodicAttachmentAccessor< side_type, Attachment< VType > > * | aaU | ||
| ) |
References ug::NavierStokes::assignValue(), ug::LFEID::CROUZEIX_RAVIART, ug::DoFRef(), ug::DimCRFVGeometry::SCV::global_corner(), ug::DimReferenceMapping< int TDim, int TWorldDim >::global_to_local(), ug::PeriodicBoundaryManager::is_slave(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_constrained_dofs(), ug::DimCRFVGeometry::SCV::num_corners(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_scv(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::num_sh(), num_subsets(), s, ug::DimCRFVGeometry< int TDim, int TWorldDim >::scv(), ug::SetAttachmentValues(), ug::LocalShapeFunctionSet< int TDim, typename TShape, typename TGrad >::shapes(), UG_ASSERT, ug::DimCRFVGeometry< int TDim, int TWorldDim >::update(), ug::DimCRFVGeometry< int TDim, int TWorldDim >::update_hanging(), and ug::DimCRFVGeometry::SCV::volume().
|
inline |
This method sets the kinematic viscosity value. Kinematic viscosity is added to turbulent viscosity in evaluation routine.
| [in] | data | kinematic Viscosity |
References ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_viscosityNumber, make_sp(), and ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::set_kinematic_viscosity().
|
inline |
This method sets the kinematic viscosity value. Kinematic viscosity is added to turbulent viscosity in evaluation routine.
| [in] | data | kinematic Viscosity |
References ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_imKinViscosity.
Referenced by ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::set_kinematic_viscosity().
|
inline |
| void ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::transferToLowerLevels | ( | aSideNumber & | aaData, |
| ApproximationSpace< domain_type > & | approximationSpace | ||
| ) |
| aSideTensor ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_acDeformation |
| aSideNumber ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_acTurbulentViscosity |
| aSideNumber ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_acVolume |
| ATensor ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_aDeformation |
| ANumber ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_aTurbulentViscosity |
| ANumber ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_aVolume |
|
protected |
| grid_type* ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::m_grid |
|
protected |
Data import for kinematic viscosity.
Referenced by ug::NavierStokes::StdTurbulentViscosityData< TData, dim, TImpl, TGridFunction >::set_kinematic_viscosity().
|
protected |
|
protected |
|
protected |
|
static |