Neko 1.99.1
A portable framework for high-order spectral element flow simulations
|
Public Member Functions | |
procedure, pass(this) | init (this, json, case) |
Initialize from json. | |
procedure, pass(this) | init_from_components (this, dof, output_file) |
Initialize without json things. | |
procedure, pass(this) | free (this) |
Destructor. | |
procedure, pass(this) | setup_offset (this) |
Setup offset for I/O when using sequential write/read from rank 0. | |
procedure, pass(this) | compute_ (this, time) |
Interpolate each probe from its r,s,t coordinates. | |
procedure, pass(this) | init_base (this, json, case) |
Constructor for the simulation_component_t (base) class. | |
generic | init_base_from_components (this, case, order, preprocess_control, preprocess_value, compute_control, compute_value, output_control, output_value) |
Constructor for the simulation_component_t (base) class from components. | |
generic | init_base_from_components (this, case, order, preprocess_controller, compute_controller, output_controller) |
Constructor for the simulation_component_t (base) class from components. | |
procedure, pass(this) | init_base_from_controllers (this, case, order, preprocess_controller, compute_controller, output_controller) |
Constructor for the simulation_component_t (base) class from time_based_controllers, essentially directly from all components (we reserve the _from_components name for the generic binding). | |
procedure, pass(this) | 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 from properties of time_based_controllers, so the latter are constructed instead of assigned. | |
procedure, pass(this) | free_base (this) |
Destructor for the simulation_component_t (base) class. | |
procedure, pass(this) | restart (this, time) |
Wrapper for calling set_counter for the time based controllers. Serves as the public interface. | |
procedure, pass(this) | preprocess (this, time) |
Wrapper for calling preprocess_ based on the preprocess_controller . Serves as the public interface. | |
procedure, pass(this) | compute (this, time) |
Wrapper for calling compute_ based on the compute_controller . Serves as the public interface. | |
procedure(simulation_component_init), deferred, pass | init (this, json, case) |
The common constructor using a JSON dictionary. | |
procedure(simulation_component_free), deferred, pass | free (this) |
Destructor. | |
procedure, pass(this) | preprocess_ (this, time) |
The preprocessing function to be executed during the run. | |
procedure, pass(this) | compute_ (this, time) |
The main function to be executed during the run. | |
procedure, pass(this) | restart_ (this, time) |
The restart function to be called upon restarting simulation. | |
procedure, pass(this) | parse_json (this, json, case_params, preprocess_control, preprocess_value, compute_control, compute_value, output_control, output_value) |
JSON parameter parser for the time-based controllers. | |
Public Attributes | |
real(kind=rp) | start_time |
Time after which to start collecting probes. | |
integer | n_fields = 0 |
Number of output fields. | |
type(global_interpolation_t) | global_interp |
integer | n_global_probes |
Global number of probes (needed for i/o) | |
integer | n_probes_offset |
global offset for writing | |
real(kind=rp), dimension(:,:), allocatable | xyz |
x,y,z coordinates | |
real(kind=rp), dimension(:,:), allocatable | out_values |
Interpolated values. | |
type(c_ptr), dimension(:), allocatable | out_values_d |
real(kind=rp), dimension(:,:), allocatable | out_vals_trsp |
integer | n_local_probes |
Number of local elements per rank. | |
type(field_list_t) | sampled_fields |
Fields to be probed. | |
character(len=20), dimension(:), allocatable | which_fields |
integer, dimension(:), allocatable | n_local_probes_tot_offset |
Allocated on rank 0. | |
integer, dimension(:), allocatable | n_local_probes_tot |
logical | seq_io |
For output on rank 0. | |
real(kind=rp), dimension(:,:), allocatable | global_output_values |
type(file_t) | fout |
Output variables. | |
type(matrix_t) | mat_out |
type(case_t), pointer | case |
Pointer to the simulation case. | |
type(time_based_controller_t) | preprocess_controller |
Controller for when to run preprocess . | |
type(time_based_controller_t) | compute_controller |
Controller for when to run compute . | |
type(time_based_controller_t) | output_controller |
Controller for when to do output. | |
integer | order |
The execution order, lowest excutes first. | |
Private Member Functions | |
procedure, pass(this), private | read_file (this, json) |
Reader for file type points. | |
procedure, pass(this), private | read_point (this, json) |
Reader for point type points. | |
procedure, pass(this), private | read_line (this, json) |
Reader for line type points. | |
procedure, pass(this), private | read_circle (this, json) |
Reader for circle type points. | |
procedure, pass(this), private | read_point_zone (this, json, dof) |
Reader for point zone type points. | |
procedure, pass(this), private | add_points (this, new_points) |
Append a new list of points to the exsiting list. | |
Definition at line 64 of file probes.F90.
|
private |
[in,out] | this | The probes object. |
[in] | new_points | The new points to be appended. |
Definition at line 122 of file probes.F90.
|
inherited |
time | The current time. |
Definition at line 88 of file simulation_component.f90.
procedure, pass(this) probes::probes_t::compute_ | ( | class(probes_t), intent(inout) | this, |
type(time_state_t), intent(in) | time | ||
) |
t | Current simulation time. |
tstep | Current time step. |
Definition at line 105 of file probes.F90.
|
inherited |
time | The current time. |
Definition at line 96 of file simulation_component.f90.
Definition at line 101 of file probes.F90.
|
pure virtualinherited |
Definition at line 92 of file simulation_component.f90.
|
inherited |
Definition at line 78 of file simulation_component.f90.
procedure, pass(this) probes::probes_t::init | ( | class(probes_t), intent(inout), target | this, |
type(json_file), intent(inout) | json, | ||
class(case_t), intent(inout), target | case | ||
) |
Definition at line 96 of file probes.F90.
|
pure virtualinherited |
Definition at line 90 of file simulation_component.f90.
|
inherited |
Definition at line 62 of file simulation_component.f90.
|
inherited |
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 64 of file simulation_component.f90.
|
inherited |
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 64 of file simulation_component.f90.
|
inherited |
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 70 of file simulation_component.f90.
|
inherited |
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 75 of file simulation_component.f90.
procedure, pass(this) probes::probes_t::init_from_components | ( | class(probes_t), intent(inout) | this, |
type(dofmap_t), intent(in) | dof, | ||
character(len=:), intent(inout), allocatable | output_file | ||
) |
dof | Dofmap to probe @output_file Name of output file, current must be CSV |
Definition at line 98 of file probes.F90.
|
inherited |
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 100 of file simulation_component.f90.
|
inherited |
time | The current time. |
Definition at line 84 of file simulation_component.f90.
|
inherited |
time | The current time. |
Definition at line 94 of file simulation_component.f90.
|
private |
The general structure of the circle is defined by a center point, a radius and a normal to the plane it lies on. The circle is then discretized into a number of points, based on the amount
parameter. The points are added clockwise starting from a chosen axis, which is defined by the axis
parameter.
x
, y
, or z
. [in,out] | this | The probes object. |
[in,out] | json | The json file object. |
Definition at line 117 of file probes.F90.
|
private |
[in,out] | this | The probes object. |
[in,out] | json | The json file object. |
Definition at line 111 of file probes.F90.
|
private |
[in,out] | this | The probes object. |
[in,out] | json | The json file object. |
Definition at line 115 of file probes.F90.
|
private |
[in,out] | this | The probes object. |
[in,out] | json | The json file object. |
Definition at line 113 of file probes.F90.
|
private |
The GLL points are read from the point zone and added to the probe list.
[in,out] | this | The probes object. |
[in,out] | json | The json file object. |
Definition at line 119 of file probes.F90.
|
inherited |
time | The current time. |
Definition at line 81 of file simulation_component.f90.
|
inherited |
time | The current time. |
Definition at line 98 of file simulation_component.f90.
Definition at line 103 of file probes.F90.
Definition at line 51 of file simulation_component.f90.
|
inherited |
Definition at line 55 of file simulation_component.f90.
type(file_t) probes::probes_t::fout |
Definition at line 92 of file probes.F90.
type(global_interpolation_t) probes::probes_t::global_interp |
Definition at line 69 of file probes.F90.
real(kind=rp), dimension(:,:), allocatable probes::probes_t::global_output_values |
Definition at line 90 of file probes.F90.
type(matrix_t) probes::probes_t::mat_out |
Definition at line 93 of file probes.F90.
integer probes::probes_t::n_fields = 0 |
Definition at line 68 of file probes.F90.
integer probes::probes_t::n_global_probes |
Definition at line 71 of file probes.F90.
integer probes::probes_t::n_local_probes |
Definition at line 81 of file probes.F90.
integer, dimension(:), allocatable probes::probes_t::n_local_probes_tot |
Definition at line 87 of file probes.F90.
integer, dimension(:), allocatable probes::probes_t::n_local_probes_tot_offset |
Definition at line 86 of file probes.F90.
integer probes::probes_t::n_probes_offset |
Definition at line 73 of file probes.F90.
|
inherited |
Definition at line 59 of file simulation_component.f90.
real(kind=rp), dimension(:,:), allocatable probes::probes_t::out_vals_trsp |
Definition at line 79 of file probes.F90.
real(kind=rp), dimension(:,:), allocatable probes::probes_t::out_values |
Definition at line 77 of file probes.F90.
type(c_ptr), dimension(:), allocatable probes::probes_t::out_values_d |
Definition at line 78 of file probes.F90.
|
inherited |
Definition at line 57 of file simulation_component.f90.
|
inherited |
Definition at line 53 of file simulation_component.f90.
type(field_list_t) probes::probes_t::sampled_fields |
Definition at line 83 of file probes.F90.
logical probes::probes_t::seq_io |
Definition at line 89 of file probes.F90.
Definition at line 66 of file probes.F90.
character(len=20), dimension(:), allocatable probes::probes_t::which_fields |
Definition at line 84 of file probes.F90.
real(kind=rp), dimension(:,:), allocatable probes::probes_t::xyz |
Definition at line 75 of file probes.F90.