38  use json_module, 
only : json_file
 
   68    type(json_file), 
intent(inout) :: json
 
   69    class(
case_t), 
intent(inout), 
target :: case
 
   70    character(len=:), 
allocatable :: name
 
   71    character(len=:), 
allocatable :: nut_field
 
   72    character(len=20) :: fields(2)
 
   79    fields(1) = 
"les_delta" 
   82    call json%add(
"fields", fields)
 
   84    call this%init_base(json, 
case)
 
   85    call this%writer%init(json, 
case)
 
   89    call les_model_factory(this%les_model, name, 
case%fluid%dm_Xh,&
 
   90                           case%fluid%c_Xh, json)
 
 
   98    call this%writer%free()
 
  100    if (
allocated(this%les_model)) 
then 
  101      call this%les_model%free()
 
  102      deallocate(this%les_model)
 
 
  111    real(kind=
rp), 
intent(in) :: t
 
  112    integer, 
intent(in) :: tstep
 
  114    call this%les_model%compute(t, tstep)
 
 
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_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 compute_(this, t, tstep)
Dummy compute 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.