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

Data Types

type  fluid_scheme_compressible_euler_t
 

Functions/Subroutines

subroutine fluid_scheme_compressible_euler_init (this, msh, lx, params, user, chkp)
 Boundary condition factory for density.
 
subroutine fluid_scheme_compressible_euler_free (this)
 Free allocated memory and cleanup.
 
subroutine fluid_scheme_compressible_euler_step (this, time, dt_controller)
 Advance the fluid simulation one timestep.
 
subroutine fluid_scheme_compressible_euler_setup_bcs (this, user, params)
 Set up boundary conditions for the fluid scheme.
 
subroutine compute_h (this)
 Copied from les_model_compute_delta in les_model.f90 TODO: move to a separate module Compute characteristic mesh size h.
 
subroutine fluid_scheme_compressible_euler_restart (this, chkp)
 Restart the simulation from saved state.
 

Function/Subroutine Documentation

◆ compute_h()

subroutine fluid_scheme_compressible_euler::compute_h ( class(fluid_scheme_compressible_euler_t), intent(inout this)
private
Parameters
thisThe fluid scheme object

Definition at line 461 of file fluid_scheme_compressible_euler.f90.

◆ fluid_scheme_compressible_euler_free()

subroutine fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_free ( class(fluid_scheme_compressible_euler_t), intent(inout this)
private
Parameters
thisThe fluid scheme object to destroy

Definition at line 222 of file fluid_scheme_compressible_euler.f90.

◆ fluid_scheme_compressible_euler_init()

subroutine fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_init ( class(fluid_scheme_compressible_euler_t), intent(inout), target  this,
type(mesh_t), intent(inout), target  msh,
integer, intent(in lx,
type(json_file), intent(inout), target  params,
type(user_t), intent(in), target  user,
type(chkp_t), intent(inout), target  chkp 
)

Will mark a mesh zone for the bc and finalize.

Parameters
[in,out]objectThe object to be allocated.
[in]schemeThe fluid_scheme_compressible_euler_t scheme.
[in,out]jsonJSON object for initializing the bc.
[in]coefSEM coefficients.
[in]userThe user interface. Boundary condition factory for pressure.

Will mark a mesh zone for the bc and finalize.

Parameters
[in,out]objectThe object to be allocated.
[in]schemeThe fluid_scheme_compressible_euler_t scheme.
[in,out]jsonJSON object for initializing the bc.
[in]coefSEM coefficients.
[in]userThe user interface. Boundary condition factory for velocity

Will mark a mesh zone for the bc and finalize.

Parameters
[in,out]objectThe object to be allocated.
[in]schemeThe fluid_scheme_compressible_euler_t scheme.
[in,out]jsonJSON object for initializing the bc.
[in]coefSEM coefficients.
[in]userThe user interface. Initialize the compressible Euler fluid scheme
thisThe fluid scheme object
mshMesh data structure
lxPolynomial order in x-direction
paramsJSON configuration parameters
userUser-defined parameters and functions
chkpCheckpoint to write to

Definition at line 150 of file fluid_scheme_compressible_euler.f90.

◆ fluid_scheme_compressible_euler_restart()

subroutine fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_restart ( class(fluid_scheme_compressible_euler_t), intent(inout), target  this,
type(chkp_t), intent(inout chkp 
)
private
Parameters
thisThe fluid scheme object
dtlagPrevious timestep sizes
tlagPrevious time values

Definition at line 532 of file fluid_scheme_compressible_euler.f90.

◆ fluid_scheme_compressible_euler_setup_bcs()

subroutine fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_setup_bcs ( class(fluid_scheme_compressible_euler_t), intent(inout), target  this,
type(user_t), intent(in), target  user,
type(json_file), intent(inout params 
)
private
Parameters
thisThe fluid scheme object
userUser-defined boundary conditions
paramsConfiguration parameters

Definition at line 353 of file fluid_scheme_compressible_euler.f90.

◆ fluid_scheme_compressible_euler_step()

subroutine fluid_scheme_compressible_euler::fluid_scheme_compressible_euler_step ( class(fluid_scheme_compressible_euler_t), intent(inout), target  this,
type(time_state_t), intent(in time,
type(time_step_controller_t), intent(in dt_controller 
)
private
Parameters
thisThe fluid scheme object
timeCurrent simulation time state
ext_bdfTime integration controller
dt_controllerTimestep size controller

Apply density boundary conditions

Update variables

Apply velocity boundary conditions

Update p = (gamma - 1) * (E - 0.5 * rho * (u^2 + v^2 + w^2))

Apply pressure boundary conditions

Compute entropy S = 1/(gamma-1) * rho * (log(p) - gamma * log(rho))

Update maximum wave speed for CFL computation

Definition at line 245 of file fluid_scheme_compressible_euler.f90.