Neko 0.9.99
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
fluid_scheme_incompressible Module Reference

Fluid formulations.

Data Types

type  fluid_scheme_incompressible_t
 Base type of all fluid formulations. More...
 

Functions/Subroutines

subroutine fluid_scheme_init_base (this, msh, lx, params, scheme, user, kspv_init)
 Initialise a fluid scheme.
 
subroutine fluid_scheme_free (this)
 
subroutine fluid_scheme_validate (this)
 Validate that all fields, solvers etc necessary for performing time-stepping are defined.
 
subroutine fluid_scheme_bc_apply_vel (this, t, tstep, strong)
 Apply all boundary conditions defined for velocity Here we perform additional gs operations to take care of shared points between elements that have different BCs, as done in Nek5000.
 
subroutine fluid_scheme_bc_apply_prs (this, t, tstep)
 Apply all boundary conditions defined for pressure.
 
subroutine fluid_scheme_solver_factory (ksp, n, solver, max_iter, abstol, monitor)
 Initialize a linear solver.
 
subroutine fluid_scheme_precon_factory (this, pc, ksp, coef, dof, gs, bclst, pctype)
 Initialize a Krylov preconditioner.
 
real(kind=rp) function fluid_compute_cfl (this, dt)
 Compute CFL.
 
subroutine fluid_scheme_update_material_properties (this)
 Update the values of mu_field if necessary.
 
subroutine fluid_scheme_set_material_properties (this, params, user)
 Sets rho and mu.
 

Function/Subroutine Documentation

◆ fluid_compute_cfl()

real(kind=rp) function fluid_scheme_incompressible::fluid_compute_cfl ( class(fluid_scheme_incompressible_t), intent(in this,
real(kind=rp), intent(in dt 
)
private

Definition at line 626 of file fluid_scheme_incompressible.f90.

Here is the call graph for this function:

◆ fluid_scheme_bc_apply_prs()

subroutine fluid_scheme_incompressible::fluid_scheme_bc_apply_prs ( class(fluid_scheme_incompressible_t), intent(inout this,
real(kind=rp), intent(in t,
integer, intent(in tstep 
)
private
Todo:
Why can't we call the interface here?

Definition at line 544 of file fluid_scheme_incompressible.f90.

Here is the call graph for this function:

◆ fluid_scheme_bc_apply_vel()

subroutine fluid_scheme_incompressible::fluid_scheme_bc_apply_vel ( class(fluid_scheme_incompressible_t), intent(inout this,
real(kind=rp), intent(in t,
integer, intent(in tstep,
logical, intent(in strong 
)
private
Todo:
Why can't we call the interface here?

Definition at line 505 of file fluid_scheme_incompressible.f90.

Here is the call graph for this function:

◆ fluid_scheme_free()

subroutine fluid_scheme_incompressible::fluid_scheme_free ( class(fluid_scheme_incompressible_t), intent(inout this)
private

Definition at line 393 of file fluid_scheme_incompressible.f90.

◆ fluid_scheme_init_base()

subroutine fluid_scheme_incompressible::fluid_scheme_init_base ( class(fluid_scheme_incompressible_t), intent(inout), target  this,
type(mesh_t), intent(inout), target  msh,
integer, intent(in lx,
type(json_file), intent(inout), target  params,
character(len=*), intent(in scheme,
type(user_t), intent(in), target  user,
logical, intent(in kspv_init 
)

Initialize common data for the current scheme

Definition at line 157 of file fluid_scheme_incompressible.f90.

Here is the call graph for this function:

◆ fluid_scheme_precon_factory()

subroutine fluid_scheme_incompressible::fluid_scheme_precon_factory ( class(fluid_scheme_incompressible_t), intent(inout this,
class(pc_t), intent(inout), allocatable, target  pc,
class(ksp_t), intent(inout), target  ksp,
type(coef_t), intent(in), target  coef,
type(dofmap_t), intent(in), target  dof,
type(gs_t), intent(inout), target  gs,
type(bc_list_t), intent(inout), target  bclst,
character(len=*)  pctype 
)
private

Definition at line 586 of file fluid_scheme_incompressible.f90.

Here is the caller graph for this function:

◆ fluid_scheme_set_material_properties()

subroutine fluid_scheme_incompressible::fluid_scheme_set_material_properties ( class(fluid_scheme_incompressible_t), intent(inout this,
type(json_file), intent(inout params,
type(user_t), intent(in), target  user 
)
private
Parameters
paramsThe case paramter file.
userThe user interface.

Definition at line 654 of file fluid_scheme_incompressible.f90.

Here is the call graph for this function:

◆ fluid_scheme_solver_factory()

subroutine fluid_scheme_incompressible::fluid_scheme_solver_factory ( class(ksp_t), intent(inout), allocatable, target  ksp,
integer, intent(in), value  n,
character(len=*), intent(in solver,
integer, intent(in max_iter,
real(kind=rp), intent(in abstol,
logical, intent(in monitor 
)
private
Note
Currently only supporting Krylov solvers

Definition at line 571 of file fluid_scheme_incompressible.f90.

Here is the caller graph for this function:

◆ fluid_scheme_update_material_properties()

subroutine fluid_scheme_incompressible::fluid_scheme_update_material_properties ( class(fluid_scheme_incompressible_t), intent(inout this)
private

Definition at line 638 of file fluid_scheme_incompressible.f90.

Here is the call graph for this function:

◆ fluid_scheme_validate()

subroutine fluid_scheme_incompressible::fluid_scheme_validate ( class(fluid_scheme_incompressible_t), intent(inout), target  this)
private

Definition at line 472 of file fluid_scheme_incompressible.f90.