38 use json_module,
only : json_file
71 type(json_file),
intent(inout) :: json
72 class(
case_t),
intent(inout),
target :: case
73 character(len=:),
allocatable :: name
74 character(len=:),
allocatable :: nut_field
75 character(len=20) :: fields(2)
80 if (
case%fluid%variable_material_properties .eqv. .false.)
then
81 call neko_error(
"Eddy viscosity is not acting &
83 &Please set up a nut_field option &
84 &in the fluid solver")
90 fields(1) =
"les_delta"
93 call json%add(
"fields", fields)
95 call this%init_base(json,
case)
96 call this%writer%init(json,
case)
100 call les_model_factory(this%les_model, name,
case%fluid%dm_Xh,&
101 case%fluid%c_Xh, json)
102 call this%les_model%init(
case%fluid, json)
109 call this%free_base()
110 call this%writer%free()
112 if (
allocated(this%les_model))
then
113 call this%les_model%free()
114 deallocate(this%les_model)
123 real(kind=
rp),
intent(in) :: t
124 integer,
intent(in) :: tstep
126 call this%les_model%compute(t, tstep)
134 real(kind=
rp),
intent(in) :: t
136 call this%les_model%compute(t, 0)
Retrieves a parameter by name or assigns a provided default value. In the latter case also adds the m...
Retrieves a parameter by name or throws an error.
Defines a simulation case.
Implements the field_writer_t type.
Utilities for retrieving parameters from the case files.
Implements the les_simcomp_t type.
subroutine les_simcomp_init_from_json(this, json, case)
Constructor from json.
subroutine les_simcomp_compute(this, t, tstep)
Compute the les_simcomp field.
subroutine les_simcomp_restart(this, t)
Compute the les_simcomp field when restart.
subroutine les_simcomp_free(this)
Destructor.
integer, parameter, public rp
Global precision used in computations.
Simulation components are objects that encapsulate functionality that can be fit to a particular comp...
subroutine preprocess_(this, t, tstep)
Dummy preprocessing function.
subroutine restart_(this, t)
Dummy restart function.
A simulation component that writes a 3d field to a file.
Base abstract type for LES models based on the Boussinesq approximation.
A simulation component that drives the computation of the SGS viscosity.
Base abstract class for simulation components.