private pure subroutine assign_h_layer(nx, ny, nz, h_new, mask, h_layer)
Copy the target field into h_layer on grounded columns only —
non-grounded columns’ h_new was never written, and their old
h_layer is already the exact target.
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 assign_h_layer(nx,ny,nz,h_new,mask,h_layer)!! Copy the target field into h_layer on grounded columns only —!! non-grounded columns' h_new was never written, and their old!! h_layer is already the exact target.integer,intent(in)::nx,ny,nzreal(wp),intent(in)::h_new(nx,ny,nz)real(wp),intent(in)::mask(nx,ny,1)real(wp),intent(inout)::h_layer(nx,ny,nz)integer::i,j,kdoconcurrent(k=1:nz,j=1:ny,i=1:nx)if(mask(i,j,1)>0.5_wp)thenh_layer(i,j,k)=h_new(i,j,k)end if end do end subroutine assign_h_layer