Neko  0.8.1
A portable framework for high-order spectral element flow simulations
time_step_controller Module Reference

Implements type time_step_controller. More...

Data Types

type  time_step_controller_t
 Provides a tool to set time step dt. More...
 

Functions/Subroutines

subroutine time_step_controller_init (this, params)
 Constructor. More...
 
subroutine time_step_controller_set_dt (this, dt, cfl, cfl_avrg, tstep)
 Set new dt based on cfl if requested. More...
 

Detailed Description

Implements type time_step_controller.

Function/Subroutine Documentation

◆ time_step_controller_init()

subroutine time_step_controller::time_step_controller_init ( class(time_step_controller_t), intent(inout)  this,
type(json_file), intent(inout)  params 
)

Constructor.

Parameters
orderorder of the interpolation

Definition at line 64 of file time_step_controller.f90.

◆ time_step_controller_set_dt()

subroutine time_step_controller::time_step_controller_set_dt ( class(time_step_controller_t), intent(inout)  this,
real(kind=rp), intent(inout)  dt,
real(kind=rp), intent(in)  cfl,
real(kind=rp), intent(inout)  cfl_avrg,
integer, intent(in)  tstep 
)
private

Set new dt based on cfl if requested.

Parameters
dttime step in case_t.
cflcourant number of current iteration.
cfl_avrgaverage Courant number.
tstepthe current time step. @Algorithm:
  1. Set the first time step such that cfl is the set one;
  2. During time-stepping, adjust dt when cfl_avrg is offset by 20%.

Definition at line 94 of file time_step_controller.f90.