Appearance
adam_flume_forcing_object
ADAM, FLUME mass-flow forcing of a periodic channel (issue #119, T3.1).
[forcing] type = mass-flow, axis (x, y, z), bulk_momentum (the target volume mean of the momentum along the axis). Once per step, on the committed state, a uniform momentum dm = bulk_momentum - mean is added, so the bulk momentum is held exactly; the total energy gains the change of kinetic energy, the internal energy is untouched. f = dm / dt is the driving force per unit volume, written on the conservation history cadence to <output_basename>-forcing_history.dat (header VARIABLES="it" "time" "f", the output units of [reference]): at a statistically steady state its mean balances the wall friction. Without the section nothing changes, bitwise.
Source: src/app/flume/common/adam_flume_forcing_object.F90
Dependencies
Contents
Variables
| Name | Type | Attributes | Description |
|---|---|---|---|
INI_SECTION_NAME | character(len=7) | parameter | Section name. |
Derived Types
flume_forcing_object
Mass-flow forcing.
Components
| Name | Type | Attributes | Description |
|---|---|---|---|
is_active | logical | Forcing on. | |
axis | integer(kind=I4P) | Axis of the flow. | |
bulk_momentum | real(kind=R8P) | Target volume mean of the momentum along the axis. | |
f | real(kind=R8P) | Last driving force per unit volume. | |
unit | integer(kind=I4P) | History file unit. |
Type-Bound Procedures
| Name | Attributes | Description |
|---|---|---|
load_from_file | pass(self) | Load [forcing]. |
save_row | pass(self) | Write one history row. |
Subroutines
load_from_file
Load [forcing]; an unknown value is fatal.
fortran
subroutine load_from_file(self, file_parameters, model)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(flume_forcing_object) | inout | Forcing. | |
file_parameters | type(file_ini) | in | Simulation parameters file handler. | |
model | integer(kind=I4P) | in | Physical model. |
Call graph
save_row
Write one history row, rank 0: a new file with its header, or appended on a restart, so that the restart continues it. time and force are the output factors of the time and of the force per unit volume (1 in code units, issue #119).
fortran
subroutine save_row(self, output_basename, it, time, force, is_restart)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(flume_forcing_object) | inout | Forcing. | |
output_basename | character(len=*) | in | Output base name. | |
it | integer(kind=I4P) | in | Time iteration. | |
time | real(kind=R8P) | in | Time (output units). | |
force | real(kind=R8P) | in | Output factor of the force per unit volume. | |
is_restart | logical | in | Restarted run. |
Call graph