SteadyStokes221
Description of Kernel
-
(2) Taylor-hood mixed finite element is used. Pressure is linear and Velocity is Quadratic.
-
(2) System of linear equations are solved iterative manner by using accelerated Uzawa schemes.
-
(1) Constant material properties
-
WeakDBC = True or False
-
Multiphase = True or False
TODO
- Body-force
- gravity
- conservative and non-conservative form.
- Neumann boundary condition
- Higher order terms
- Positive and negative sign in case of HOT
- boundary subscale
- pressure subscale
- no-slip boundary condition
- free-slip boundary condition
- inlet boundary-condition
- outlet boundary-condition
- Add an option to calculate stabilization parameter only at the center of the element
- handle quadrature mapping in general form.
- Add reference pressure node and pressure value.
Ideas for optimization
- Constant stabilization parameter
- Better precondition for iterative solver
Structure
SteadyStokes221_
is a child of AbstractSteadyStokes_
kernel.
Methods
📄️ SteadyStokes221
Description of Kernel
📄️ AddFluidMaterial
This routine adds Fluid material to the AbstractSteadyStokes.
📄️ AddPressureDirichletBC
This routine sets the Dirichlet boundary condition for pressure field in AbstractSteadyStokes kernel.
📄️ AddPressureNeumannBC
This routine sets the Neumann boundary condition for pressure field in AbstractSteadyStokes kernel.
📄️ AddVelocityDirichletBC
This routine sets the Dirichlet boundary condition for Velocity field in AbstractSteadyStokes kernel.
📄️ AddVelocityNeumannBC
This routine sets the Neumann boundary condition for Velocity field in AbstractSteadyStokes kernel.
📄️ ApplyDirichletBC
This routine sets the Dirichlet boundary condition for pressure field in AbstractSteadyStokes kernel.
📄️ Assemble
This procedure pointer assembles the problem
📄️ AssembleRHS
This procedure pointer assembles the right-hand-side vector.
📄️ AssembleTanmat
This procedure pointer assembles the global tangent matrix.
📄️ AssembleTanmat_InternalFacet
Assemble tangent matrix internal facet.
📄️ AssembleTanMat_NeumanFacet
Assemble tangent matrix internal facet.
📄️ CheckEssentialParam
Check essential parameter.
📄️ Display
Display the content of SteadyStokes221.
📄️ Export
This routine exports the kernel to HDF5file
📄️ GetPressureDirichletBCPointer
This routine returns the pointer to Dirichlet boundary condition of pressure field in AbstractSteadyStokes kernel, that is obj%DBCForPressure(dbcNo)%ptr.
📄️ GetPressureNeumannBCPointer
This routine returns the pointer to Neumann boundary condition of pressure field in AbstractSteadyStokes kernel, that is obj%NBCForPressure(nbcNo)%ptr.
📄️ GetVelocityDirichletBCPointer
This routine returns the pointer to Dirichlet boundary condition of Velocity field in AbstractSteadyStokes kernel, that is obj%DBCForVelocity(dbcNo)%ptr.
📄️ GetVelocityNeumannBCPointer
This routine returns the pointer to Neumann boundary condition of Velocity field in AbstractSteadyStokes kernel, that is obj%NBCForVelocity(nbcNo)%ptr.
📄️ Import
This routine imports the properties of kernel and initiates it.
📄️ Initiate
This routine initiates the SteadyStokes221 kernel.
📄️ InitiateFields
This routine initiates the field variable, deferred type.
📄️ IsConverged
Returns true if steady state is achieved.
📄️ IsSteadyState
Returns true if steady state is achieved.
📄️ Run
Run the simulation
📄️ Set
Set the kernel.
📄️ SteadyStokes221Param
Set SteadyStokes221 parameter.
📄️ Solve
This subroutine solves the system of linear equation.
📄️ SteadyStokesUtility
SetMeshData
📄️ Update
This subroutine Updates the system of linear equation
📄️ UpdateIteration
This subroutine update the state of the kernel
📄️ WriteData
This routine writes the data in the hdf5 file.