FIXME : Add documentation
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(reinit_config_type), | intent(in), | optional | :: | reinit_config_in |
subroutine init_reinit(reinit_config_in)
use file_utils, only: input_unit, input_unit_exist
use gs2_time, only: save_dt_min, save_dt_max, code_dt_max
implicit none
type(reinit_config_type), intent(in), optional :: reinit_config_in
logical :: exist
if(initialized) return
initialized = .true.
if(.not.first)return
first=.false.
if (present(reinit_config_in)) reinit_config = reinit_config_in
!Smart defaults
if (.not.reinit_config%is_initialised()) then
reinit_config%dt0 = code_dt_max
endif
call reinit_config%init(name = 'reinit_knobs', requires_index = .false.)
! Copy out internal values into module level parameters
abort_rapid_time_step_change = reinit_config%abort_rapid_time_step_change
delt_adj = reinit_config%delt_adj
delt_cushion = reinit_config%delt_cushion
delt_minimum = reinit_config%delt_minimum
dt0 = reinit_config%dt0
in_memory = reinit_config%in_memory
exist = reinit_config%exist
call save_dt_min (delt_minimum)
call save_dt_max (dt0)
end subroutine init_reinit