38 use json_module,
only : json_file
79 procedure, pass(this) :: init_from_attributes => &
92 type(json_file),
intent(inout) :: json
93 class(
case_t),
intent(inout),
target :: case
94 character(len=:),
allocatable :: filename
95 character(len=:),
allocatable :: precision
96 character(len=20) :: fields(3)
100 fields(1) =
"omega_x"
101 fields(2) =
"omega_y"
102 fields(3) =
"omega_z"
104 call json%add(
"fields", fields)
106 call this%init_base(json,
case)
107 call this%writer%init(json,
case)
124 call this%temp1%init(this%u%dof)
125 call this%temp2%init(this%u%dof)
132 call this%free_base()
133 call this%temp1%free()
134 call this%temp2%free()
142 real(kind=
rp),
intent(in) :: t
143 integer,
intent(in) :: tstep
145 call curl(this%omega_x, this%omega_y, this%omega_z, this%u, this%v, &
146 this%w, this%temp1, this%temp2, this%case%fluid%c_Xh)
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.
Defines a registry for storing solution fields.
type(field_registry_t), target, public neko_field_registry
Global field registry.
Implements the field_writer_t type.
Implements fld_file_output_t.
Utilities for retrieving parameters from the case files.
integer, parameter, public dp
integer, parameter, public sp
integer, parameter, public rp
Global precision used in computations.
subroutine, public curl(w1, w2, w3, u1, u2, u3, work1, work2, coef)
Simulation components are objects that encapsulate functionality that can be fit to a particular comp...
Implements the vorticity_t type.
subroutine vorticity_init_from_attributes(this)
Actual constructor.
subroutine vorticity_free(this)
Destructor.
subroutine vorticity_compute(this, t, tstep)
Compute the vorticity field.
subroutine vorticity_init_from_json(this, json, case)
Constructor from json.
A simulation component that writes a 3d field to a file.
A simple output saving a list of fields to a .fld file.
Base abstract class for simulation components.
A simulation component that computes the vorticity field. Added to the field registry as omega_x,...