Neko 1.99.9
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
simulation_component_template.f90
Go to the documentation of this file.
1
3 use case, only : case_t
4 use json_module, only : json_file
7 simulation_component_allocate, register_simulation_component
8 use time_state, only : time_state_t
9 implicit none
10 private
11
18
20
21contains
22
23 subroutine simulation_component_template_init(this, json, case)
24 class(simulation_component_template_t), target, intent(inout) :: this
25 type(json_file), intent(inout) :: json
26 class(case_t), target, intent(inout) :: case
27
28 call this%init_base(json, case)
29 call json_get_or_default(json, 'name', this%name, &
30 'simulation_component_template')
31 ! TODO: Read component-specific parameters from json.
33
35 class(simulation_component_template_t), intent(inout) :: this
36 ! TODO: Release fields owned by this derived type.
37 call this%free_base()
39
41 class(simulation_component_template_t), intent(inout) :: this
42 type(time_state_t), intent(in) :: time
43 ! TODO: Implement the component's scheduled action.
45
47 procedure(simulation_component_allocate), pointer :: allocator
49 call register_simulation_component('simulation_component_template', &
50 allocator)
52
54 class(simulation_component_t), allocatable, intent(inout) :: obj
55 allocate(simulation_component_template_t :: obj)
Retrieves a parameter by name or assigns a provided default value. In the latter case also adds the m...
Simulation component factory. Both constructs and initializes the object.
Defines a simulation case.
Definition case.f90:34
Utilities for retrieving parameters from the case files.
Template for a user-defined simulation component.
subroutine simulation_component_template_compute(this, time)
subroutine, public simulation_component_template_register_types()
subroutine simulation_component_template_init(this, json, case)
Simulation components are objects that encapsulate functionality that can be fit to a particular comp...
subroutine compute_(this, time)
Dummy compute function.
Module with things related to the simulation time.
Base abstract class for simulation components.
A struct that contains all info about the time, expand as needed.