33 #ifndef __H__UG__PLUGINS__NAVIER_STOKES__INCOMPRESSIBLE__FV__NAVIER_STOKES_FV__
34 #define __H__UG__PLUGINS__NAVIER_STOKES__INCOMPRESSIBLE__FV__NAVIER_STOKES_FV__
45 #include "../incompressible_navier_stokes_base.h"
53 template<
typename TDomain>
72 NavierStokesFV(
const std::vector<std::string>& vFct,
const std::vector<std::string>& vSubset);
92 void prepare_setting(
const std::vector<LFEID>& vLfeID,
bool bNonRegularGrid);
95 virtual std::string
disc_type()
const {
return "fv";};
135 template<
typename TElem,
typename VGeom,
typename PGeom>
138 template<
typename TElem,
typename VGeom,
typename PGeom>
142 template<
typename TElem,
typename VGeom,
typename PGeom>
146 template<
typename TElem,
typename VGeom,
typename PGeom>
150 template<
typename TElem,
typename VGeom,
typename PGeom>
154 template<
typename TElem,
typename VGeom,
typename PGeom>
158 template<
typename TElem,
typename VGeom,
typename PGeom>
162 template<
typename TElem,
typename VGeom,
typename PGeom>
168 template<
typename TElem,
typename VGeom,
typename PGeom>
function NavierStokes(fcts, subsets, discType)
SmartPtr< CplUserData< number, dim > > user_data()
Finite Volume Element Discretization for the incompressible Navier-Stokes Equation.
Definition: incompressible_navier_stokes_base.h:146
number m_bFullNewtonFactor
factor for exact jacobian, (1 for exact jacobian, 0 for fix point)
Definition: navier_stokes_base.h:207
bool m_bLaplace
flag if using only laplace term
Definition: incompressible_navier_stokes_base.h:256
bool m_bStokes
flag if solving the Stokes equation
Definition: incompressible_navier_stokes_base.h:253
bool m_bPecletBlend
flag if using Peclet Blending
Definition: incompressible_navier_stokes_base.h:244
static const int dim
World dimension.
Definition: incompressible_navier_stokes_base.h:156
Definition: navier_stokes_fv.h:56
void set_density(SmartPtr< CplUserData< number, dim > > user)
sets the density
Definition: navier_stokes_fv.cpp:130
bool m_bQuadOrderUserDef
quadrature order
Definition: navier_stokes_fv.h:109
void set_kinematic_viscosity(SmartPtr< CplUserData< number, dim > > user)
sets the kinematic viscosity
Definition: navier_stokes_fv.cpp:123
void add_def_M_elem(LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
assembles the mass part of the local defect
Definition: navier_stokes_fv.cpp:563
LFEID m_pLFEID
Definition: navier_stokes_fv.h:106
void set_source(SmartPtr< CplUserData< MathVector< dim >, dim > > user)
sets the source function
Definition: navier_stokes_fv.cpp:139
void prep_elem(const LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[])
Definition: navier_stokes_fv.cpp:226
void init()
Definition: navier_stokes_fv.cpp:64
void add_rhs_elem(LocalVector &d, GridObject *elem, const MathVector< dim > vCornerCoords[])
assembles the local right hand side
Definition: navier_stokes_fv.cpp:597
void register_all_funcs(const LFEID &vLfeID, const LFEID &pLfeID)
register util
NavierStokesFV(const char *functions, const char *subsets)
Definition: navier_stokes_fv.cpp:47
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
Definition: navier_stokes_fv.cpp:519
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
Definition: navier_stokes_fv.cpp:252
int m_quadOrder
Definition: navier_stokes_fv.h:110
DataImport< number, dim > m_imDensitySCVF
Data import for density.
Definition: navier_stokes_fv.h:122
virtual std::string disc_type() const
returns string identifying disc type
Definition: navier_stokes_fv.h:95
void set_quad_order(size_t order)
sets the quad order
Definition: navier_stokes_fv.cpp:90
IncompressibleNavierStokesBase< TDomain > base_type
Base class type.
Definition: navier_stokes_fv.h:59
std::vector< std::vector< number > > m_vvPShape
Definition: navier_stokes_fv.h:171
DataImport< MathVector< dim >, dim > m_imSource
Data import for source.
Definition: navier_stokes_fv.h:116
void prep_elem_loop(const ReferenceObjectID roid, const int si)
Definition: navier_stokes_fv.cpp:151
std::vector< std::vector< number > > m_vvVShape
Definition: navier_stokes_fv.h:172
static const int dim
World dimension.
Definition: navier_stokes_fv.h:66
DataImport< number, dim > m_imDensitySCVFp
Definition: navier_stokes_fv.h:123
void prepare_setting(const std::vector< LFEID > &vLfeID, bool bNonRegularGrid)
type of trial space for each function used
Definition: navier_stokes_fv.cpp:98
void fsh_elem_loop()
finishes the loop over all elements
Definition: navier_stokes_fv.cpp:219
static const size_t _P_
abbreviation for pressure
Definition: navier_stokes_fv.h:127
void add_def_A_elem(LocalVector &d, const LocalVector &u, GridObject *elem, const MathVector< dim > vCornerCoords[])
assembles the stiffness part of the local defect
Definition: navier_stokes_fv.cpp:389
void register_func()
Definition: navier_stokes_fv.cpp:655
DataImport< number, dim > m_imKinViscosity
Data import for kinematic viscosity.
Definition: navier_stokes_fv.h:119
SmartPtr< CplUserData< number, dim > > kinematic_viscosity()
returns kinematic viscosity
Definition: navier_stokes_fv.h:79
virtual bool requests_local_time_series()
returns if local time series is needed
Definition: navier_stokes_fv.h:101
LFEID m_vLFEID
current shape function set
Definition: navier_stokes_fv.h:105
DataImport< number, dim > m_imDensitySCV
Definition: navier_stokes_fv.h:124
SmartPtr< CplUserData< number, dim > > density()
returns density
Definition: navier_stokes_fv.h:85
NavierStokesFV< TDomain > this_type
own type
Definition: navier_stokes_fv.h:62