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

Data Types

type  fluid_volflow_t
 Defines volume flow. More...
 

Functions/Subroutines

subroutine fluid_vol_flow_init (this, dm_xh, params)
 
subroutine fluid_vol_flow_free (this)
 
subroutine fluid_vol_flow_compute (this, u_res, v_res, w_res, p_res, ext_bdf, gs_xh, c_xh, rho, mu, bd, dt, bclst_dp, bclst_du, bclst_dv, bclst_dw, bclst_vel_res, ax_vel, ax_prs, ksp_prs, ksp_vel, pc_prs, pc_vel, prs_max_iter, vel_max_iter)
 Compute flow adjustment.
 
subroutine fluid_vol_flow (this, u, v, w, p, u_res, v_res, w_res, p_res, c_xh, gs_xh, ext_bdf, rho, mu, dt, bclst_dp, bclst_du, bclst_dv, bclst_dw, bclst_vel_res, ax_vel, ax_prs, ksp_prs, ksp_vel, pc_prs, pc_vel, prs_max_iter, vel_max_iter)
 Adjust flow volume.
 

Function/Subroutine Documentation

◆ fluid_vol_flow()

subroutine fluid_volflow::fluid_vol_flow ( class(fluid_volflow_t), intent(inout this,
type(field_t), intent(inout u,
type(field_t), intent(inout v,
type(field_t), intent(inout w,
type(field_t), intent(inout p,
type(field_t), intent(inout u_res,
type(field_t), intent(inout v_res,
type(field_t), intent(inout w_res,
type(field_t), intent(inout p_res,
type(coef_t), intent(inout c_xh,
type(gs_t), intent(inout gs_xh,
type(time_scheme_controller_t), intent(in ext_bdf,
real(kind=rp), intent(in rho,
real(kind=rp), intent(in mu,
real(kind=rp), intent(in dt,
type(bc_list_t), intent(inout bclst_dp,
type(bc_list_t), intent(inout bclst_du,
type(bc_list_t), intent(inout bclst_dv,
type(bc_list_t), intent(inout bclst_dw,
type(bc_list_t), intent(inout bclst_vel_res,
class(ax_t), intent(in ax_vel,
class(ax_t), intent(in ax_prs,
class(ksp_t), intent(inout ksp_prs,
class(ksp_t), intent(inout ksp_vel,
class(pc_t), intent(inout pc_prs,
class(pc_t), intent(inout pc_vel,
integer, intent(in prs_max_iter,
integer, intent(in vel_max_iter 
)
private

Adjust flow volume at end of time step to keep flow rate fixed by adding an appropriate multiple of the linear solution to the Stokes problem arising from a unit forcing in the X-direction. This assumes that the flow rate in the X-direction is to be fixed (as opposed to Y- or Z-) and that the periodic boundary conditions in the X-direction occur at the extreme left and right ends of the mesh.

pff 6/28/98

Definition at line 338 of file fluid_volflow.f90.

◆ fluid_vol_flow_compute()

subroutine fluid_volflow::fluid_vol_flow_compute ( class(fluid_volflow_t), intent(inout this,
type(field_t), intent(inout u_res,
type(field_t), intent(inout v_res,
type(field_t), intent(inout w_res,
type(field_t), intent(inout p_res,
type(time_scheme_controller_t), intent(in ext_bdf,
type(gs_t), intent(inout gs_xh,
type(coef_t), intent(inout c_xh,
real(kind=rp), intent(in rho,
real(kind=rp), intent(in mu,
real(kind=rp), intent(in bd,
real(kind=rp), intent(in dt,
type(bc_list_t), intent(inout bclst_dp,
type(bc_list_t), intent(inout bclst_du,
type(bc_list_t), intent(inout bclst_dv,
type(bc_list_t), intent(inout bclst_dw,
type(bc_list_t), intent(inout bclst_vel_res,
class(ax_t), intent(in ax_vel,
class(ax_t), intent(in ax_prs,
class(ksp_t), intent(inout ksp_prs,
class(ksp_t), intent(inout ksp_vel,
class(pc_t), intent(inout pc_prs,
class(pc_t), intent(inout pc_vel,
integer, intent(in prs_max_iter,
integer, intent(in vel_max_iter 
)
private

Compute pressure and velocity using fractional step method. (Tombo splitting scheme).

Definition at line 151 of file fluid_volflow.f90.

Here is the call graph for this function:

◆ fluid_vol_flow_free()

subroutine fluid_volflow::fluid_vol_flow_free ( class(fluid_volflow_t), intent(inout this)
private

Definition at line 136 of file fluid_volflow.f90.

◆ fluid_vol_flow_init()

subroutine fluid_volflow::fluid_vol_flow_init ( class(fluid_volflow_t), intent(inout this,
type(dofmap_t), intent(in), target  dm_xh,
type(json_file), intent(inout params 
)

Definition at line 105 of file fluid_volflow.f90.