Neko 1.99.1
A portable framework for high-order spectral element flow simulations
|
Singleton type that serves as a driver for the simulation components. Stores all the components in the case and provides an interface matching that of a single simcomp, which executes the corresponding routines for each stored simcomp. The execution order is based on the order property of each simcomp. By default, the order is by the order of apparence in the case file. More...
Public Member Functions | |
procedure, pass(this) | init (this, case, simcomp_root) |
Constructor. | |
procedure, pass(this) | free (this) |
Destructor. | |
procedure, pass(this) | add (this, object, settings) |
Appending a new simcomp to the executor. | |
procedure, pass(this) | preprocess (this, time) |
Execute preprocess_ for all simcomps. | |
procedure, pass(this) | compute (this, time) |
Execute compute_ for all simcomps. | |
procedure, pass(this) | restart (this, time) |
Execute restart for all simcomps. | |
procedure, pass(this) | get_n (this) |
Get the number of simcomps. | |
Public Attributes | |
class(simulation_component_wrapper_t), dimension(:), allocatable | simcomps |
The simcomps. | |
type(case_t), pointer | case |
The case. | |
Private Member Functions | |
procedure, pass(this), private | finalize (this) |
Finalize the initialization. | |
Private Attributes | |
integer, private | n_simcomps |
Number of simcomps. | |
logical, private | finalized = .false. |
Flag to indicate if the simcomp executor has been finalized. | |
Definition at line 53 of file simcomp_executor.f90.
procedure, pass(this) simcomp_executor::simcomp_executor_t::add | ( | class(simcomp_executor_t), intent(inout) | this, |
class(simulation_component_t), intent(in) | object, | ||
type(json_file), intent(inout), optional | settings | ||
) |
new_object | The simcomp to append. |
settings | The settings for the simcomp. |
Definition at line 69 of file simcomp_executor.f90.
procedure, pass(this) simcomp_executor::simcomp_executor_t::compute | ( | class(simcomp_executor_t), intent(inout) | this, |
type(time_state_t), intent(in) | time | ||
) |
time | The current time |
Definition at line 73 of file simcomp_executor.f90.
|
private |
Definition at line 77 of file simcomp_executor.f90.
procedure, pass(this) simcomp_executor::simcomp_executor_t::free | ( | class(simcomp_executor_t), intent(inout) | this | ) |
Definition at line 67 of file simcomp_executor.f90.
procedure, pass(this) simcomp_executor::simcomp_executor_t::get_n | ( | class(simcomp_executor_t), intent(in) | this | ) |
Definition at line 79 of file simcomp_executor.f90.
procedure, pass(this) simcomp_executor::simcomp_executor_t::init | ( | class(simcomp_executor_t), intent(inout) | this, |
type(case_t), intent(inout), target | case, | ||
character(len=*), intent(in), optional | simcomp_root | ||
) |
case | The case. |
simcomp_root | The root name of the simulation components in the case. If not provided, the default is 'case.simulation_components'. |
Definition at line 65 of file simcomp_executor.f90.
procedure, pass(this) simcomp_executor::simcomp_executor_t::preprocess | ( | class(simcomp_executor_t), intent(inout) | this, |
type(time_state_t), intent(in) | time | ||
) |
time | The current time |
Definition at line 71 of file simcomp_executor.f90.
procedure, pass(this) simcomp_executor::simcomp_executor_t::restart | ( | class(simcomp_executor_t), intent(inout) | this, |
type(time_state_t), intent(in) | time | ||
) |
time | The current time |
Definition at line 75 of file simcomp_executor.f90.
Definition at line 60 of file simcomp_executor.f90.
Definition at line 62 of file simcomp_executor.f90.
Definition at line 58 of file simcomp_executor.f90.
class(simulation_component_wrapper_t), dimension(:), allocatable simcomp_executor::simcomp_executor_t::simcomps |
Definition at line 56 of file simcomp_executor.f90.