Neko  0.9.0
A portable framework for high-order spectral element flow simulations
adv_oifs Module Reference

Subroutines to add advection terms to the RHS of a transport equation.

Data Types

type  adv_oifs_t
 

Functions/Subroutines

subroutine adv_oifs_init (this, lxd, coef, ctarget, ulag, vlag, wlag, dtlag, tlag, time_scheme, slag)
 Constructor. More...
 
subroutine adv_oifs_free (this)
 Destructor. More...
 
subroutine set_conv_velocity_fst (this, u, v, w)
 Mapping the velocity fields to GL space and transforming them to the rst format. More...
 
subroutine adv_oifs_compute (this, vx, vy, vz, fx, fy, fz, Xh, coef, n, dt)
 Add the advection term for the fluid, i.e. \(u \cdot \nabla u \), to the RHS using the OIFS method. More...
 
subroutine adv_oifs_compute_scalar (this, vx, vy, vz, s, fs, Xh, coef, n, dt)
 Add the advection term for a scalar, i.e. \(u \cdot \nabla s \), to the RHS. More...
 

Function/Subroutine Documentation

◆ adv_oifs_compute()

subroutine adv_oifs::adv_oifs_compute ( class(adv_oifs_t), intent(inout)  this,
type(field_t), intent(inout)  vx,
type(field_t), intent(inout)  vy,
type(field_t), intent(inout)  vz,
type(field_t), intent(inout)  fx,
type(field_t), intent(inout)  fy,
type(field_t), intent(inout)  fz,
type(space_t), intent(inout)  Xh,
type(coef_t), intent(inout)  coef,
integer, intent(in)  n,
real(kind=rp), intent(in), optional  dt 
)
private
Parameters
vxThe x component of velocity.
vyThe y component of velocity.
vzThe z component of velocity.
fxThe x component of source term.
fyThe y component of source term.
fzThe z component of source term.
XhThe function space.
coefThe coefficients of the (Xh, mesh) pair.
nTypically the size of the mesh.
dtCurrent time-step.

Definition at line 285 of file adv_oifs.f90.

Here is the call graph for this function:

◆ adv_oifs_compute_scalar()

subroutine adv_oifs::adv_oifs_compute_scalar ( class(adv_oifs_t), intent(inout)  this,
type(field_t), intent(inout)  vx,
type(field_t), intent(inout)  vy,
type(field_t), intent(inout)  vz,
type(field_t), intent(inout)  s,
type(field_t), intent(inout)  fs,
type(space_t), intent(inout)  Xh,
type(coef_t), intent(inout)  coef,
integer, intent(in)  n,
real(kind=rp), intent(in), optional  dt 
)
private
Parameters
thisThe object.
vxThe x component of velocity.
vyThe y component of velocity.
vzThe z component of velocity.
sThe scalar.
fsThe source term.
XhThe function space.
coefThe coefficients of the (Xh, mesh) pair.
nTypically the size of the mesh.
dtCurrent time-step.

Definition at line 389 of file adv_oifs.f90.

◆ adv_oifs_free()

subroutine adv_oifs::adv_oifs_free ( class(adv_oifs_t), intent(inout)  this)
private

Definition at line 204 of file adv_oifs.f90.

◆ adv_oifs_init()

subroutine adv_oifs::adv_oifs_init ( class(adv_oifs_t this,
integer, intent(in)  lxd,
type(coef_t), target  coef,
real(kind=rp), intent(in)  ctarget,
type(field_series_t), intent(in), target  ulag,
type(field_series_t), intent(in), target  vlag,
type(field_series_t), intent(in), target  wlag,
real(kind=rp), dimension(10), intent(in), target  dtlag,
real(kind=rp), dimension(10), intent(in), target  tlag,
type(time_scheme_controller_t), intent(in), target  time_scheme,
type(field_series_t), optional, target  slag 
)
Parameters
lxdThe polynomial order of the space used in the dealiasing.
coefThe coefficients of the (space, mesh) pair.
ctargetTarget CFL number.
ulagThe x component of lagged velocity.
vlagThe y component of lagged velocity.
wlagThe z component of lagged velocity.
dtlagLagged time steps.
tlagLagged simulation times.
time_schemeThe bdf-ext time scheme used in the method.
slagThe lagged scalar field.

Definition at line 113 of file adv_oifs.f90.

Here is the call graph for this function:

◆ set_conv_velocity_fst()

subroutine adv_oifs::set_conv_velocity_fst ( class(adv_oifs_t), intent(inout)  this,
type(field_t), intent(inout)  u,
type(field_t), intent(inout)  v,
type(field_t), intent(inout)  w 
)
private
Parameters
uVelocity component in x-direction
vVelocity component in y-direction
wVelocity component in z-direction
Note
similar to set_ct_cvx in NEK5000

Definition at line 247 of file adv_oifs.f90.

Here is the call graph for this function: