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.
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.
Source Code
subroutine update_density()!! calculate density in kg/m³ according to !! $$\rho = 1000*(\rho_0 + \rho_{UVic})$$!! with \(\rho_0 = 1.035\). MUST match rho0 from UVic_ESCM.F90!! @note!! loadmw.F: l 154!!!! imt=102, km=19, jsmw=2, jmw=jmt --- jemw=jmw-1 !!!! declared: rho(imt,km,jsmw:jmw) calculated rho(1:102,2:102)!! rho!! @endnote!! @note!! KB check depth dependent reference density!! @endnoteinteger i,j,k! local loop countersreal(rke),parameter::rho0=1.035! reference densityif(model%variable_needs_values(id_density))thencdo j=1,jmtdo j=jsmw,jmw! must be 2:102do k=1,kmdo i=2,imt-1if(kmt(i,j)>0)thenrho_fabm(i,k,j)=1000._rke*(rho0+rho(i,k,j))end if end do end do end do end if#if 0print*,rho_fabm(53,:,53)stop'kurt'#endifend subroutine update_density