Plugins
|
#include <upwind.h>
Public Types | |
typedef INavierStokesUpwind< dim > | base_type |
![]() | |
typedef INavierStokesUpwind< dim > | this_type |
Abbreviation for own type. | |
![]() | |
typedef INavierStokesUpwind< dim > | base_type |
Base class. | |
Public Member Functions | |
NavierStokesRegularUpwind () | |
constructor | |
![]() | |
number | downwind_conv_length (size_t scvf) const |
Convection Length. | |
number | downwind_shape_ip (size_t scvf, size_t scvf2) const |
upwind shapes for ip vel | |
number | downwind_shape_sh (size_t scvf, size_t sh) const |
upwind shape for corner vel | |
INavierStokesUpwind () | |
constructor | |
bool | non_zero_shape_ip () const |
returns if upwind shape w.r.t. ip vel is non-zero | |
size_t | num_scvf () const |
returns number of sub control volume faces | |
size_t | num_sh () const |
returns number of shapes | |
template<typename TFVGeom , typename TAssFunc > | |
void | register_update_func (TAssFunc func) |
register a update function for a Geometry | |
template<typename TFVGeom , typename TAssFunc > | |
void | register_update_ip_vel_func (TAssFunc func) |
register a update function for a Geometry | |
template<typename TFVGeom > | |
void | set_geometry_type () |
set the Geometry type to use for next updates | |
void | update (const FVGeometryBase *geo, const MathVector< dim > vStdVel[]) |
compute values for new geometry and corner velocities | |
void | update_downwind (const FVGeometryBase *geo, const MathVector< dim > vStdVel[]) |
compute values for new geometry and corner velocities | |
void | update_upwind (const FVGeometryBase *geo, const MathVector< dim > vStdVel[]) |
compute values for new geometry and corner velocities | |
number | upwind_conv_length (size_t scvf) const |
Convection Length. | |
number | upwind_shape_ip (size_t scvf, size_t scvf2) const |
upwind shapes for ip vel | |
number | upwind_shape_sh (size_t scvf, size_t sh) const |
upwind shape for corner vel | |
MathVector< dim > | upwind_vel (const size_t scvf, const LocalVector &CornerVel, const MathVector< dim > vStdVel[]) const |
returns the upwind velocity | |
![]() | |
NavierStokesUpwindRegister () | |
constructor | |
Static Public Member Functions | |
template<typename TElem > | |
static void | compute (const FV1Geometry< TElem, dim > *geo, const MathVector< dim > vIPVel[maxNumSCVF], number vUpShapeSh[maxNumSCVF][maxNumSH], number vUpShapeIp[maxNumSCVF][maxNumSCVF], number vConvLength[maxNumSCVF]) |
update of values for FV1Geometry | |
Static Public Attributes | |
static const size_t | maxNumSCVF = base_type::maxNumSCVF |
static const size_t | maxNumSH = base_type::maxNumSH |
![]() | |
static const size_t | maxNumSCVF = traits::maxNumSCVF + 10 |
max number of SubControlVolumeFaces | |
static const size_t | maxNumSH = traits::maxNSH + 10 |
max number of shape functions | |
Additional Inherited Members | |
![]() | |
typedef void(* | ComputeFunc) (const FVGeometryBase *obj, const MathVector< dim > vIPVel[maxNumSCVF], number vUpShapeSh[maxNumSCVF][maxNumSH], number vUpShapeIp[maxNumSCVF][maxNumSCVF], number vConvLength[maxNumSCVF]) |
type of update function | |
typedef fv1_dim_traits< dim, dim > | traits |
used traits | |
![]() | |
void | compute (const FVGeometryBase *geo, const MathVector< dim > vIPVel[maxNumSCVF], number vUpShapeSh[maxNumSCVF][maxNumSH], number vUpShapeIp[maxNumSCVF][maxNumSCVF], number vConvLength[maxNumSCVF]) |
compute values for new geometry and corner velocities | |
number & | down_upwind_conv_length (size_t scvf) |
non-const access to Convection Length | |
number & | downwind_shape_ip (size_t scvf, size_t scvf2) |
non-const access to upwind shapes for ip vel | |
number & | downwind_shape_sh (size_t scvf, size_t sh) |
non-const access to upwind shapes for corner vel | |
void | set_shape_ip_flag (bool flag) |
sets the shape ip flag | |
number & | upwind_conv_length (size_t scvf) |
non-const access to Convection Length | |
number & | upwind_shape_ip (size_t scvf, size_t scvf2) |
non-const access to upwind shapes for ip vel | |
number & | upwind_shape_sh (size_t scvf, size_t sh) |
non-const access to upwind shapes for corner vel | |
![]() | |
NavierStokesRegularUpwind< dim > & | getImpl () |
access to implementation | |
![]() | |
bool | m_bNonZeroShapeIp |
flag if ip shapes are non-zero | |
int | m_id |
id of current geometry type | |
size_t | m_numScvf |
number of current scvf | |
size_t | m_numSh |
number of current shape functions (usually in corners) | |
std::vector< ComputeFunc > | m_vComputeFunc |
Vector holding all update functions. | |
number | m_vDownConvLength [maxNumSCVF] |
number | m_vUpConvLength [maxNumSCVF] |
convection length | |
number | m_vvDownShapeIp [maxNumSCVF][maxNumSCVF] |
number | m_vvDownShapeSh [maxNumSCVF][maxNumSH] |
number | m_vvUpShapeIp [maxNumSCVF][maxNumSCVF] |
upwind shapes for ip vels | |
number | m_vvUpShapeSh [maxNumSCVF][maxNumSH] |
upwind shapes for corners shape functions | |
![]() | |
static const size_t | maxNumSCVF |
static const size_t | maxNumSH |
typedef INavierStokesUpwind<dim> ug::NavierStokes::NavierStokesRegularUpwind< dim >::base_type |
|
inline |
constructor
References ug::NavierStokes::INavierStokesUpwind< dim >::set_shape_ip_flag().
|
static |
update of values for FV1Geometry
References ug::FV1Geometry_gen< typename TElem, int TWorldDim, bool TCondensed >::corners(), ug::FV1Geometry_gen< typename TElem, int TWorldDim, bool TCondensed >::num_scv(), ug::FV1Geometry_gen< typename TElem, int TWorldDim, bool TCondensed >::num_scvf(), ug::FV1Geometry_gen< typename TElem, int TWorldDim, bool TCondensed >::num_sh(), ug::FV1Geometry_gen< typename TElem, int TWorldDim, bool TCondensed >::scv(), ug::FV1Geometry_gen< typename TElem, int TWorldDim, bool TCondensed >::scvf(), UG_THROW, ug::VecDistance(), ug::VecProd(), ug::VecScaleAppend(), ug::VecSet(), and ug::VecTwoNormSq().
|
static |
|
static |