Neko 0.9.99
A portable framework for high-order spectral element flow simulations
|
Centralized controller for a list of outputs. More...
Public Member Functions | |
procedure, pass(this) | init (this, time_end, size) |
Constructor. | |
procedure, pass(this) | free (this) |
Destructor. | |
procedure, pass(this) | add (this, out, write_par, write_control) |
Add an output to the controller. | |
procedure, pass(this) | execute (this, t, tstep, ifforce) |
Sample the fields and output. | |
procedure, pass(this) | set_counter (this, t) |
Set output counter based on time (after restart) | |
Public Attributes | |
type(output_ptr_t), dimension(:), allocatable | output_list |
List of outputs. | |
type(time_based_controller_t), dimension(:), allocatable | controllers |
List of controllers for determining wether we should write. | |
integer | n |
Number of outputs. | |
integer | size |
Number of entries in the list. | |
real(kind=rp) | time_end |
Final time of the simulation. | |
Holds a list of output_t
and corresponding time_based_controller_t
s. Uses the latter to determine, which outputs need to be sampled and written to disk at a given time step.
Definition at line 51 of file output_controller.f90.
procedure, pass(this) output_controller::output_controller_t::add | ( | class(output_controller_t), intent(inout) | this, |
class(output_t), intent(inout), target | out, | ||
real(kind=rp), intent(in) | write_par, | ||
character(len=*), intent(in) | write_control | ||
) |
out | The output to add. |
write_par | The output frequency value, in accordance with write_control . |
write_control | Determines the meaning of write_par . Accepts the usual list of control options. |
Definition at line 68 of file output_controller.f90.
procedure, pass(this) output_controller::output_controller_t::execute | ( | class(output_controller_t), intent(inout) | this, |
real(kind=rp), intent(in) | t, | ||
integer, intent(in) | tstep, | ||
logical, intent(in), optional | ifforce | ||
) |
t | The time value. |
tstep | The current time-stepper iteration. |
ifforce | Whether to force a write. Optional, defaults to 0. |
Definition at line 70 of file output_controller.f90.
procedure, pass(this) output_controller::output_controller_t::free | ( | class(output_controller_t), intent(inout) | this | ) |
Definition at line 66 of file output_controller.f90.
procedure, pass(this) output_controller::output_controller_t::init | ( | class(output_controller_t), intent(inout) | this, |
real(kind=rp), intent(in) | time_end, | ||
integer, intent(in), optional | size | ||
) |
time_end | The end time of thesimulation. |
size | The number of controllers to allocate for. Optional, defaults to 1. |
Definition at line 64 of file output_controller.f90.
procedure, pass(this) output_controller::output_controller_t::set_counter | ( | class(output_controller_t), intent(inout) | this, |
real(kind=rp), intent(in) | t | ||
) |
t | Time value. |
Definition at line 72 of file output_controller.f90.
type(time_based_controller_t), dimension(:), allocatable output_controller::output_controller_t::controllers |
Definition at line 55 of file output_controller.f90.
integer output_controller::output_controller_t::n |
Definition at line 57 of file output_controller.f90.
type(output_ptr_t), dimension(:), allocatable output_controller::output_controller_t::output_list |
Definition at line 53 of file output_controller.f90.
integer output_controller::output_controller_t::size |
Definition at line 59 of file output_controller.f90.
Definition at line 61 of file output_controller.f90.