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

Implements the wall_shear_stress_t type.

Data Types

type  wall_shear_stress_t
 A simulation component that computes the wall shear stress on one or more labelled boundary zones and registers it in the neko_registry. The result is written into the registry fields <computed_field>_x, _y, _z and _mag, which are zero away from the marked zones. More...
 

Functions/Subroutines

subroutine wall_shear_stress_init_from_json (this, json, case)
 Constructor from json.
 
subroutine wall_shear_stress_parse_components (components, want_x, want_y, want_z, want_mag)
 Translate a components list into the four selection flags.
 
subroutine wall_shear_stress_build_field_list (computed_field, want_x, want_y, want_z, want_mag, fields)
 Build the array of selected field names in x, y, z, mag order.
 
subroutine wall_shear_stress_init_from_controllers (this, name, case, order, preprocess_controller, compute_controller, output_controller, computed_field, viscosity_field, zone_indices, components, coef)
 Constructor from components, passing controllers.
 
subroutine wall_shear_stress_init_from_controllers_properties (this, name, case, order, preprocess_control, preprocess_value, compute_control, compute_value, output_control, output_value, computed_field, viscosity_field, zone_indices, components, coef)
 Constructor from components, passing properties to the time_based_controller components in the base type.
 
subroutine wall_shear_stress_init_common (this, name, computed_field, viscosity_field, zone_indices, components, coef)
 Common part of all constructors.
 
subroutine wall_shear_stress_free (this)
 Destructor.
 
subroutine wall_shear_stress_compute (this, time)
 Compute the wall shear stress.
 

Function/Subroutine Documentation

◆ wall_shear_stress_build_field_list()

subroutine wall_shear_stress_simcomp::wall_shear_stress_build_field_list ( character(len=*), intent(in computed_field,
logical, intent(in want_x,
logical, intent(in want_y,
logical, intent(in want_z,
logical, intent(in want_mag,
character(len=neko_varname_len), dimension(:), intent(out), allocatable  fields 
)
private
Parameters
computed_fieldThe base name of the fields.
want_xWhether the x component is selected.
want_yWhether the y component is selected.
want_zWhether the z component is selected.
want_magWhether the magnitude is selected.
fieldsAllocated with the selected names.

Definition at line 211 of file wall_shear_stress_simcomp.f90.

Here is the caller graph for this function:

◆ wall_shear_stress_compute()

subroutine wall_shear_stress_simcomp::wall_shear_stress_compute ( class(wall_shear_stress_t), intent(inout this,
type(time_state_t), intent(in time 
)
private
Parameters
timeThe current time state.

Definition at line 461 of file wall_shear_stress_simcomp.f90.

Here is the call graph for this function:

◆ wall_shear_stress_free()

subroutine wall_shear_stress_simcomp::wall_shear_stress_free ( class(wall_shear_stress_t), intent(inout this)
private

Definition at line 436 of file wall_shear_stress_simcomp.f90.

◆ wall_shear_stress_init_common()

subroutine wall_shear_stress_simcomp::wall_shear_stress_init_common ( class(wall_shear_stress_t), intent(inout this,
character(len=*), intent(in name,
character(len=*), intent(in computed_field,
character(len=*), intent(in viscosity_field,
integer, dimension(:), intent(in zone_indices,
character(len=*), dimension(:), intent(in components,
type(coef_t), intent(inout), target  coef 
)
private
Parameters
nameThe unique name of the simcomp.
computed_fieldThe base name of the registered fields.
viscosity_fieldThe name of the registered viscosity field.
zone_indicesLabelled zones to include.
componentsThe components to register: "x", "y", "z", "mag", "all".
coefThe SEM coefficients.

Definition at line 337 of file wall_shear_stress_simcomp.f90.

Here is the call graph for this function:

◆ wall_shear_stress_init_from_controllers()

subroutine wall_shear_stress_simcomp::wall_shear_stress_init_from_controllers ( class(wall_shear_stress_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,
character(len=*), intent(in computed_field,
character(len=*), intent(in viscosity_field,
integer, dimension(:), intent(in zone_indices,
character(len=*), dimension(:), intent(in components,
type(coef_t), intent(inout), target  coef 
)
private
Parameters
nameThe unique name of the simcomp.
caseThe simulation case object.
orderThe execution order priority of the simcomp.
preprocess_controllerThe controller for running preprocessing.
compute_controllerThe controller for running compute.
output_controllerThe controller for producing output.
computed_fieldThe base name of the registered fields.
viscosity_fieldThe name of the registered viscosity field.
zone_indicesLabelled zones to include.
componentsThe components to register: "x", "y", "z", "mag", "all".
coefThe SEM coefficients.

Definition at line 257 of file wall_shear_stress_simcomp.f90.

◆ wall_shear_stress_init_from_controllers_properties()

subroutine wall_shear_stress_simcomp::wall_shear_stress_init_from_controllers_properties ( class(wall_shear_stress_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,
character(len=*), intent(in computed_field,
character(len=*), intent(in viscosity_field,
integer, dimension(:), intent(in zone_indices,
character(len=*), dimension(:), intent(in components,
type(coef_t), intent(inout), target  coef 
)
private
Parameters
nameThe unique name of the simcomp.
caseThe simulation case object.
orderThe execution order priority of the simcomp.
preprocess_controlControl mode for preprocessing.
preprocess_valueValue parameter for preprocessing.
compute_controlControl mode for computing.
compute_valueValue parameter for computing.
output_controlControl mode for output.
output_valueValue parameter for output.
computed_fieldThe base name of the registered fields.
viscosity_fieldThe name of the registered viscosity field.
zone_indicesLabelled zones to include.
componentsThe components to register: "x", "y", "z", "mag", "all".
coefThe SEM coefficients.

Definition at line 299 of file wall_shear_stress_simcomp.f90.

◆ wall_shear_stress_init_from_json()

subroutine wall_shear_stress_simcomp::wall_shear_stress_init_from_json ( class(wall_shear_stress_t), intent(inout), target  this,
type(json_file), intent(inout json,
class(case_t), intent(inout), target  case 
)
Parameters
jsonJSON object with the parameters.
caseThe case object.

Definition at line 120 of file wall_shear_stress_simcomp.f90.

◆ wall_shear_stress_parse_components()

subroutine wall_shear_stress_simcomp::wall_shear_stress_parse_components ( character(len=*), dimension(:), intent(in components,
logical, intent(out want_x,
logical, intent(out want_y,
logical, intent(out want_z,
logical, intent(out want_mag 
)
private
Parameters
componentsThe requested component names. Accepted values are "x", "y", "z", "mag" and "all".
want_xSet true if the x component is requested.
want_ySet true if the y component is requested.
want_zSet true if the z component is requested.
want_magSet true if the magnitude is requested.

Definition at line 160 of file wall_shear_stress_simcomp.f90.

Here is the caller graph for this function: