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

Implements boundary_operation_t.

Data Types

type  boundary_operation_t
 A simulation component for boundary reductions on labelled zones. More...
 

Functions/Subroutines

subroutine boundary_operation_init_from_json (this, json, case)
 Construct from JSON.
 
subroutine boundary_operation_init_common (this, name, coef, zone_indices, field_name, operations, log, output_filename)
 Common constructor shared by all public constructors.
 
subroutine boundary_operation_init_from_controllers (this, name, case, order, preprocess_controller, compute_controller, output_controller, zone_indices, field_name, operations, log, output_filename)
 Construct from explicit time-based controllers.
 
subroutine boundary_operation_init_from_controllers_properties (this, name, case, order, preprocess_control, preprocess_value, compute_control, compute_value, output_control, output_value, zone_indices, field_name, operations, log, output_filename)
 Construct from time-based controller properties.
 
subroutine boundary_operation_free (this)
 Free all resources owned by the component.
 
subroutine boundary_operation_compute (this, time)
 Compute and optionally output the requested boundary operations.
 
pure character(len=:) function, allocatable left_pad (text, width)
 Left-pad a string to a fixed width.
 

Function/Subroutine Documentation

◆ boundary_operation_compute()

subroutine boundary_operation::boundary_operation_compute ( class(boundary_operation_t), intent(inout this,
type(time_state_t), intent(in time 
)
private
Parameters
timeCurrent simulation time state.

Definition at line 390 of file boundary_operation.f90.

Here is the call graph for this function:

◆ boundary_operation_free()

subroutine boundary_operation::boundary_operation_free ( class(boundary_operation_t), intent(inout this)
private

Definition at line 370 of file boundary_operation.f90.

◆ boundary_operation_init_common()

subroutine boundary_operation::boundary_operation_init_common ( class(boundary_operation_t), intent(inout this,
character(len=*), intent(in name,
type(coef_t), intent(inout), target  coef,
integer, dimension(:), intent(in zone_indices,
character(len=*), intent(in field_name,
character(len=*), dimension(:), intent(in operations,
logical, intent(in log,
character(len=*), intent(in), optional  output_filename 
)
private
Parameters
nameUnique simcomp name.
coefSEM coefficients.
zone_indicesLabelled zones to include.
field_nameName of the registered field to process.
operationsRequested operations in output order.
logWhether to emit tabular log output.
output_filenameOptional CSV output filename.

Definition at line 164 of file boundary_operation.f90.

Here is the call graph for this function:

◆ boundary_operation_init_from_controllers()

subroutine boundary_operation::boundary_operation_init_from_controllers ( class(boundary_operation_t), intent(inout this,
character(len=*), intent(in name,
class(case_t), intent(inout), target  case,
integer, intent(in order,
type(time_based_controller_t), intent(in preprocess_controller,
type(time_based_controller_t), intent(in compute_controller,
type(time_based_controller_t), intent(in output_controller,
integer, dimension(:), intent(in zone_indices,
character(len=*), intent(in field_name,
character(len=*), dimension(:), intent(in operations,
logical, intent(in), optional  log,
character(len=*), intent(in), optional  output_filename 
)
private
Parameters
nameUnique simcomp name.
caseSimulation case owning the simcomp.
orderExecution priority.
preprocess_controllerController for preprocessing.
compute_controllerController for computation.
output_controllerController for output.
zone_indicesLabelled zones to include.
field_nameName of the registered field to process.
operationsRequested operations in output order.
logOptional flag controlling log output.
output_filenameOptional CSV output filename.

Definition at line 281 of file boundary_operation.f90.

◆ boundary_operation_init_from_controllers_properties()

subroutine boundary_operation::boundary_operation_init_from_controllers_properties ( class(boundary_operation_t), intent(inout this,
character(len=*), intent(in name,
class(case_t), intent(inout), target  case,
integer, intent(in order,
character(len=*), intent(in preprocess_control,
real(kind=rp), intent(in preprocess_value,
character(len=*), intent(in compute_control,
real(kind=rp), intent(in compute_value,
character(len=*), intent(in output_control,
real(kind=rp), intent(in output_value,
integer, dimension(:), intent(in zone_indices,
character(len=*), intent(in field_name,
character(len=*), dimension(:), intent(in operations,
logical, intent(in), optional  log,
character(len=*), intent(in), optional  output_filename 
)
private
Parameters
nameUnique simcomp name.
caseSimulation case owning the simcomp.
orderExecution priority.
preprocess_controlControl mode for preprocessing.
preprocess_valueControl value for preprocessing.
compute_controlControl mode for computation.
compute_valueControl value for computation.
output_controlControl mode for output.
output_valueControl value for output.
zone_indicesLabelled zones to include.
field_nameName of the registered field to process.
operationsRequested operations in output order.
logOptional flag controlling log output.
output_filenameOptional CSV output filename.

Definition at line 330 of file boundary_operation.f90.

◆ boundary_operation_init_from_json()

subroutine boundary_operation::boundary_operation_init_from_json ( class(boundary_operation_t), intent(inout), target  this,
type(json_file), intent(inout json,
class(case_t), intent(inout), target  case 
)
Parameters
jsonJSON object describing the simcomp.
caseSimulation case.

Definition at line 125 of file boundary_operation.f90.

◆ left_pad()

pure character(len=:) function, allocatable boundary_operation::left_pad ( character(len=*), intent(in text,
integer, intent(in width 
)
private
Parameters
textInput string.
widthWidth of the padded result.

Definition at line 495 of file boundary_operation.f90.

Here is the caller graph for this function: