Neko 1.99.9
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
output_controller Module Reference

Implements output_controller_t

Data Types

type  output_controller_t
 Centralized controller for a list of outputs. More...
 

Functions/Subroutines

subroutine output_controller_init (this, time_end, size, time_start, write_at_start)
 Constructor.
 
subroutine output_controller_free (this)
 Destructor.
 
subroutine output_controller_add (this, out, write_par, write_control, start_time, write_at_start)
 Add an output out to the controller.
 
subroutine output_controller_execute (this, time, ifforce)
 Query each of the controllers whether it is time to write, and if so, do so for the corresponding output.
 
subroutine output_controller_set_counter (this, time)
 Set write counter based on time (after restart)
 
subroutine output_controller_set_write_count (this, counter)
 Set write counter (after restart) explicitly.
 

Function/Subroutine Documentation

◆ output_controller_add()

subroutine output_controller::output_controller_add ( class(output_controller_t), intent(inout)  this,
class(output_t), intent(inout), target  out,
real(kind=dp), intent(in)  write_par,
character(len=*), intent(in)  write_control,
real(kind=dp), intent(in), optional  start_time,
logical, intent(in), optional  write_at_start 
)
private
Parameters
outThe output to add.
write_parThe output frequency value, in accordance with write_control.
write_controlDetermines the meaning of write_par. Accepts the usual list of control options.
start_timeWhen to start writing the output. Also the time the output schedule is anchored to. Optional, defaults to the start time of the simulation.
write_at_startWhether to write at start_time itself. Should be .false. for outputs for which a write at the very first time step is meaningless, such as checkpoints and running statistics. Optional, defaults to what the controller was constructed with.

Definition at line 165 of file output_controller.f90.

◆ output_controller_execute()

subroutine output_controller::output_controller_execute ( class(output_controller_t), intent(inout)  this,
type(time_state_t), intent(in)  time,
logical, intent(in), optional  ifforce 
)
private
Parameters
tThe time value.
tstepThe current time-stepper iteration.
ifforceWhether to force a write. Optional, defaults to 0.

Definition at line 273 of file output_controller.f90.

Here is the call graph for this function:

◆ output_controller_free()

subroutine output_controller::output_controller_free ( class(output_controller_t), intent(inout)  this)
private

Definition at line 137 of file output_controller.f90.

◆ output_controller_init()

subroutine output_controller::output_controller_init ( class(output_controller_t), intent(inout)  this,
real(kind=dp), intent(in)  time_end,
integer, intent(in), optional  size,
real(kind=dp), intent(in), optional  time_start,
logical, intent(in), optional  write_at_start 
)
Parameters
time_endThe end time of the simulation.
sizeThe number of controllers to allocate for. Optional, defaults to 1.
time_startThe start time of the simulation. Outputs that do not have a start time of their own do not write before it. Optional, defaults to 0.
write_at_startWhether outputs write the initial state of the simulation. The default for the outputs added afterwards, which each of them can override. Optional, defaults to .true..

Definition at line 93 of file output_controller.f90.

◆ output_controller_set_counter()

subroutine output_controller::output_controller_set_counter ( class(output_controller_t), intent(inout)  this,
type(time_state_t), intent(in)  time 
)
private
Parameters
timeCurrent time info.

Definition at line 357 of file output_controller.f90.

◆ output_controller_set_write_count()

subroutine output_controller::output_controller_set_write_count ( class(output_controller_t), intent(inout)  this,
integer, intent(in)  counter 
)
private
Parameters
counterThe value of the write coutner to be set.

Definition at line 397 of file output_controller.f90.