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

Contains the simcomp_executor_t type.

Data Types

type  simcomp_executor_t
 Singleton type that serves as a driver for the simulation components. Stores all the components in the case and provides an interface matching that of a single simcomp, which executes the corresponding routines for each stored simcomp. The execution order is based on the order property of each simcomp. By default, the order is by the order of apparence in the case file. More...
 

Functions/Subroutines

subroutine simcomp_executor_init (this, case, simcomp_root)
 Constructor.
 
subroutine simcomp_executor_free (this)
 Destructor.
 
subroutine simcomp_executor_finalize (this)
 Finalize the initialization. Sorts the simcomps based on the order property. Additionally we check that the order is unique, contiguous, starts at 1 and within bounds.
 
subroutine simcomp_executor_preprocess (this, time)
 Execute preprocess_ for all simcomps.
 
real(kind=dp) function simcomp_executor_time_to_next (this, time)
 The time until the next scheduled execution of preprocess, compute or the output of any simcomp, or huge(0.0_dp) if there is none. Used to make the time step land exactly on it.
 
subroutine simcomp_executor_compute (this, time)
 Execute compute_ for all simcomps.
 
subroutine simcomp_executor_restart (this, time)
 Execute restart for all simcomps.
 
pure integer function simcomp_executor_get_n (this)
 Get the number of simcomps.
 

Variables

type(simcomp_executor_t), target, public neko_simcomps
 Global variable for the simulation component driver.
 

Function/Subroutine Documentation

◆ simcomp_executor_compute()

subroutine simcomp_executor::simcomp_executor_compute ( class(simcomp_executor_t), intent(inout)  this,
type(time_state_t), intent(in)  time 
)
private
Parameters
timeThe current time

Definition at line 330 of file simcomp_executor.f90.

◆ simcomp_executor_finalize()

subroutine simcomp_executor::simcomp_executor_finalize ( class(simcomp_executor_t), intent(inout)  this)
private

Definition at line 199 of file simcomp_executor.f90.

◆ simcomp_executor_free()

subroutine simcomp_executor::simcomp_executor_free ( class(simcomp_executor_t), intent(inout)  this)
private

Definition at line 180 of file simcomp_executor.f90.

◆ simcomp_executor_get_n()

pure integer function simcomp_executor::simcomp_executor_get_n ( class(simcomp_executor_t), intent(in)  this)
private

Definition at line 361 of file simcomp_executor.f90.

◆ simcomp_executor_init()

subroutine simcomp_executor::simcomp_executor_init ( class(simcomp_executor_t), intent(inout)  this,
type(case_t), intent(inout), target  case,
character(len=*), intent(in), optional  simcomp_root 
)
private
Parameters
caseThe case.
simcomp_rootThe root name of the simulation components in the case. If not provided, the default is 'case.simulation_components'.

Definition at line 91 of file simcomp_executor.f90.

◆ simcomp_executor_preprocess()

subroutine simcomp_executor::simcomp_executor_preprocess ( class(simcomp_executor_t), intent(inout)  this,
type(time_state_t), intent(in)  time 
)
private
Parameters
timeThe current time

Definition at line 291 of file simcomp_executor.f90.

◆ simcomp_executor_restart()

subroutine simcomp_executor::simcomp_executor_restart ( class(simcomp_executor_t), intent(inout)  this,
type(time_state_t), intent(in)  time 
)
private
Parameters
timeThe current time

Definition at line 347 of file simcomp_executor.f90.

◆ simcomp_executor_time_to_next()

real(kind=dp) function simcomp_executor::simcomp_executor_time_to_next ( class(simcomp_executor_t), intent(in)  this,
type(time_state_t), intent(in)  time 
)
private
Parameters
timeThe current time.

Definition at line 310 of file simcomp_executor.f90.

Variable Documentation

◆ neko_simcomps

type(simcomp_executor_t), target, public simcomp_executor::neko_simcomps

Definition at line 83 of file simcomp_executor.f90.