48 use case,
only: case_t
49 use json_file_module,
only: json_file
57 class(case_t),
pointer,
public :: neko_case => null()
59 integer :: n_timesteps = 0
62 procedure(state_recover_free), pass(this),
public,
deferred :: free
63 procedure(state_recover_reset), pass(this),
public,
deferred :: reset
64 procedure(state_recover_save), pass(this),
public,
deferred :: save
65 procedure(state_recover_restore), pass(this),
public,
deferred :: restore
66 procedure, pass(this),
public :: get_n_timesteps => &
67 state_recover_get_n_timesteps
68 procedure, pass(this),
public :: set_n_timesteps => &
69 state_recover_set_n_timesteps
79 class(state_recover_t),
intent(inout) :: this
80 class(case_t),
target,
intent(inout) :: neko_case
81 type(json_file),
intent(inout) :: params
86 subroutine state_recover_free(this)
88 class(state_recover_t),
intent(inout) :: this
89 end subroutine state_recover_free
93 subroutine state_recover_reset(this)
95 class(state_recover_t),
intent(inout) :: this
96 end subroutine state_recover_reset
100 subroutine state_recover_save(this)
102 class(state_recover_t),
intent(inout) :: this
103 end subroutine state_recover_save
108 subroutine state_recover_restore(this, tstep)
110 class(state_recover_t),
intent(inout) :: this
111 integer,
intent(in) :: tstep
112 end subroutine state_recover_restore
117 module subroutine state_recover_factory(recover, neko_case, params)
118 class(state_recover_t),
allocatable,
intent(inout) :: recover
119 class(case_t),
target,
intent(inout) :: neko_case
120 type(json_file),
intent(inout) :: params
121 end subroutine state_recover_factory
124 public :: state_recover_factory
130 pure function state_recover_get_n_timesteps(this)
result(n)
131 class(state_recover_t),
intent(in) :: this
135 end function state_recover_get_n_timesteps
140 subroutine state_recover_set_n_timesteps(this, n)
141 class(state_recover_t),
intent(inout) :: this
142 integer,
intent(in) :: n
145 end subroutine state_recover_set_n_timesteps
Initialize state recovery from JSON parameters.
Abstract interface for state recovery strategies.
Abstract base type for state recovery implementations.