atl_timestep_type Derived Type

type, public :: atl_timestep_type


Inherits

type~~atl_timestep_type~~InheritsGraph type~atl_timestep_type atl_timestep_type type~atl_eulertimestep_type atl_eulerTimestep_type type~atl_timestep_type->type~atl_eulertimestep_type euler, euler_2d, euler_1d type~atl_loclineulertimestep_type atl_LoclinEulerTimestep_type type~atl_timestep_type->type~atl_loclineulertimestep_type LoclinEuler type~atl_statedata_type atl_statedata_type type~atl_timestep_type->type~atl_statedata_type timestepData tem_time_type tem_time_type type~atl_statedata_type->tem_time_type local_time

Inherited by

type~~atl_timestep_type~~InheritedByGraph type~atl_timestep_type atl_timestep_type type~atl_global_timestep_type atl_global_timestep_type type~atl_global_timestep_type->type~atl_timestep_type elementSteps type~atl_element_container_type atl_element_container_type type~atl_element_container_type->type~atl_global_timestep_type time

Components

Type Visibility Attributes Name Initial
type(atl_statedata_type), public, allocatable :: timestepData(:)

Additional storage for timestepping algorithm. The usage is optional and some solvers do not use is, while others have to use it (e.g. multistep/multistage methods). This field is always passed as an argument to elementwise timestepping rotine (specified above as a pointer). The dimension of this array and its usage is left to the stepping algorithm and is therefore different for different timestepping schemes.

type(atl_eulerTimestep_type), public :: euler

Information about the propagation speeds of the 3D Euler equation.

type(atl_eulerTimestep_type), public :: euler_2d

Information about the propagation speeds of the 2D Euler equation.

type(atl_eulerTimestep_type), public :: euler_1d

Information about the propagation speeds of the 1D Euler equation.

type(atl_LoclinEulerTimestep_type), public :: LoclinEuler

Information about the propagation speed of the local linear Euler equation

procedure(atl_elemental_timestep), public, pointer, nopass :: elemStep => null()

Pointer to a subroutine implementing the elemental procedure of a timestepping algorithm.

procedure(atl_elemental_timestep_vec), public, pointer, nopass :: elemStep_vec => null()
integer, public, allocatable :: timestepInfoInteger(:)

Storage for additional information of the timestepping method.

Could be something like the iteration in a multistep scheme. The exact definition and usage is left to the timestepping scheme.

real(kind=rk), public, allocatable :: timestepInfoReal(:)
procedure(atl_update_timestep), public, pointer, nopass :: updateStep => null()

Pointer to bring information from timestep information to the timestepping scheme itself.