|
Neko 1.99.3
A portable framework for high-order spectral element flow simulations
|
Simulation components are objects that encapsulate functionality that can be fit to a particular compute pattern. More...
Data Types | |
| type | allocator_entry |
| Called in user modules to add an allocator for custom types. More... | |
| interface | simulation_component_allocate |
| Simulation component factory. Both constructs and initializes the object. More... | |
| interface | simulation_component_free |
| Destructor. More... | |
| interface | simulation_component_init |
| The common constructor using a JSON dictionary. More... | |
| type | simulation_component_t |
| Base abstract class for simulation components. More... | |
| type | simulation_component_wrapper_t |
| A helper type that is needed to have an array of polymorphic objects. More... | |
Functions/Subroutines | |
| subroutine | simulation_component_init_base (this, json, case) |
Constructor for the simulation_component_t (base) class. | |
| subroutine | simulation_component_init_base_from_controllers_properties (this, case, order, preprocess_control, preprocess_value, compute_control, compute_value, output_control, output_value) |
Constructor for the simulation_component_t (base) class via the properties of the time_based_controller components. | |
| subroutine | simulation_component_init_base_from_controllers (this, case, order, preprocess_controller, compute_controller, output_controller) |
Constructor for the simulation_component_t (base) class from components. | |
| subroutine | simulation_component_parse_json (this, json, case_params, preprocess_control, preprocess_value, compute_control, compute_value, output_control, output_value) |
Parse JSON to determine the properties of the time_based_controllers. | |
| subroutine | simulation_component_free_base (this) |
Destructor for the simulation_component_t (base) class. | |
| subroutine | simulation_component_preprocess_wrapper (this, time) |
Wrapper for calling preprocess_ based on the preprocess_controller. Serves as the public interface. | |
| subroutine | simulation_component_compute_wrapper (this, time) |
Wrapper for calling compute_ based on the compute_controller. Serves as the public interface. | |
| subroutine | simulation_component_restart_wrapper (this, time) |
Wrapper for calling set_counter_ based for the controllers. | |
| subroutine | restart_ (this, time) |
| Dummy restart function. | |
| subroutine | preprocess_ (this, time) |
| Dummy preprocessing function. | |
| subroutine | compute_ (this, time) |
| Dummy compute function. | |
| subroutine | simulation_component_wrapper_init (this, json, case) |
| Constructor. Initializes the object. | |
| subroutine | simulation_component_wrapper_free (this) |
| Destructor. Just deallocates the pointer. | |
| subroutine | simulation_component_wrapper_move_from (this, other) |
| Move assignment operator for the wrapper, needed for storing simcomps in lists and arrays. | |
| logical function | simulation_component_wrapper_is_allocated (this) |
| Return allocation status. | |
Variables | |
| type(allocator_entry), dimension(:), allocatable | simcomp_registry |
| Registry of allocators for user-defined types. | |
| integer | simcomp_registry_size = 0 |
The size of the simulation_component_registry | |
|
private |
| time | The current time. |
Definition at line 491 of file simulation_component.f90.
|
private |
| time | The current time. |
Definition at line 482 of file simulation_component.f90.
|
private |
| time | The current time. |
Definition at line 473 of file simulation_component.f90.
|
private |
| time | The current time. |
Definition at line 449 of file simulation_component.f90.
|
private |
Definition at line 419 of file simulation_component.f90.
|
private |
Definition at line 208 of file simulation_component.f90.
|
private |
| case | The simulation case object. |
| order | The execution oder priority of the simcomp. |
| preprocess_controller | The controller for running preprocessing. |
| compute_controller | The controller for running compute. |
| output_controller | The controller for producing output. |
Definition at line 270 of file simulation_component.f90.
|
private |
| case | The simulation case object. |
| order | The execution oder priority of the simcomp. |
| preprocess_controller | Control mode for preprocessing. |
| preprocess_value | Value parameter for preprocessing. |
| compute_controller | Control mode for computing. |
| compute_value | Value parameter for computing. |
| output_controller | Control mode for output. |
| output_value | Value parameter for output. |
Definition at line 239 of file simulation_component.f90.
|
private |
| json | The JSON dictionary of the simcomp. |
| case_params | The entire case configuration JSON. |
| preprocess_value | Control mode for preprocessing. |
| preprocess_controller | Value parameter for preprocessing. |
| compute_controller | Control mode for computing. |
| compute_controller | Value parameter for computing. |
| output_controller | Control mode for output. |
| output_controller | Value parameter for output. |
Definition at line 295 of file simulation_component.f90.
|
private |
| time | The current time. |
Definition at line 436 of file simulation_component.f90.
|
private |
| time | The current time. |
Definition at line 461 of file simulation_component.f90.
|
private |
Definition at line 513 of file simulation_component.f90.
|
private |
Definition at line 502 of file simulation_component.f90.
|
private |
| this | The wrapper to check. |
Definition at line 538 of file simulation_component.f90.
|
private |
| this | The wrapper to move to. |
| other | The other wrapper to move from. Will be deallocated. |
Definition at line 527 of file simulation_component.f90.
| type(allocator_entry), dimension(:), allocatable simulation_component::simcomp_registry |
Definition at line 197 of file simulation_component.f90.
|
private |
Definition at line 200 of file simulation_component.f90.