atl_get_timestep Subroutine

public subroutine atl_get_timestep(tree, mesh_list, scheme_list, material_list, equation, time, statedata_list, nCellsNoBnd, general, adaptive_timestep, initial, precice_dt)

Get the timestep size

This interface provides the timestep size computation for all supported equation systems to solve.

There is an fixed_dt requested, use that instead of adaptive timestepping.

Arguments

Type IntentOptional Attributes Name
type(treelmesh_type), intent(in) :: tree

The treelmesh data structure

type(atl_cube_elem_type), intent(in) :: mesh_list(tree%global%minLevel:tree%global%maxLevel)

List of meshes for different kernels

type(atl_scheme_type), intent(inout) :: scheme_list(tree%global%minLevel:tree%global%maxLevel)

scheme desription

type(atl_material_type), intent(in) :: material_list(tree%global%minLevel:tree%global%maxLevel)

List of material parameter information for the mesh. One entry for level, running from minlevel to maxlevel.

type(atl_Equations_type), intent(inout) :: equation
type(atl_global_timestep_type), intent(in) :: time

Global timediscretization type

type(atl_statedata_type), intent(in) :: statedata_list(tree%global%minLevel:tree%global%maxLevel)

Local time

integer, intent(in) :: nCellsNoBnd(:)
type(tem_general_type), intent(in) :: general

general data coming from treelem

logical, intent(in) :: adaptive_timestep

Flag for adaptive timestep calculation

logical, intent(in) :: initial

Flag for timestep calculation because it is the init step

real(kind=rk), intent(out), optional :: precice_dt

Timestep specified from precice. If this value is present, precice is considered active.