public pure subroutine mle_fold_x(this, mass_flux_x_layer, nx1, ny, nz)
Add the FK x-face transport into the per-layer zonal mass flux,
AFTER continuity_zonal_flux fills it and BEFORE the zonal
tracer advect / divergence — so the augmented flux transports
both h and tracers (conservative; no velocity touched).
No-op when disabled.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Variables
Type
Visibility
Attributes
Name
Initial
integer,
private
::
i
integer,
private
::
j
integer,
private
::
k
Source Code
pure subroutine mle_fold_x(this,mass_flux_x_layer,nx1,ny,nz)!! Add the FK x-face transport into the per-layer zonal mass flux,!! AFTER `continuity_zonal_flux` fills it and BEFORE the zonal!! tracer advect / divergence — so the augmented flux transports!! both h and tracers (conservative; no velocity touched).!! No-op when disabled.type(ocean_mle_t),intent(in)::thisinteger,intent(in)::nx1,ny,nzreal(wp),intent(inout)::mass_flux_x_layer(nx1,ny,nz)integer::i,j,kif(.not.this%is_init)return if(.not.this%enable)return doconcurrent(k=1:nz,j=1:ny,i=1:nx1)mass_flux_x_layer(i,j,k)=mass_flux_x_layer(i,j,k)+this%uhml(i,j,k)end do end subroutine mle_fold_x