Changeset 15004 for NEMO/trunk/src/OCE/ISF/isfcavmlt.F90
- Timestamp:
- 2021-06-16T12:33:18+02:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/OCE/ISF/isfcavmlt.F90
r14995 r15004 9 9 10 10 !!---------------------------------------------------------------------- 11 !! isfcav_mlt : compute or read ice shelf fwf/heat fluxes in the ice shelf cavity 11 !! isfcav_mlt : compute or read ice shelf fwf/heat fluxes from isf 12 !! to oce 12 13 !!---------------------------------------------------------------------- 13 14 … … 114 115 CALL eos_fzp( pstbl(:,:), ztfrz(:,:), risfdep(:,:) ) 115 116 ! 116 ! read input file 117 ! read input file of fwf (from isf to oce; ie melt) 117 118 CALL fld_read ( kt, 1, sf_isfcav_fwf ) 118 119 ! 119 120 ! define fwf and qoce 120 121 ! ocean heat flux is assume to be equal to the latent heat 121 pqfwf(:,:) = - sf_isfcav_fwf(1)%fnow(:,:,1) ! fwf ( >0 out)122 pqoce(:,:) = - pqfwf(:,:) * rLfusisf ! ocean heat flux ( > 0 out)123 pqhc (:,:) = pqfwf(:,:) * ztfrz(:,:) * rcp ! heat content flux ( > 0 out)122 pqfwf(:,:) = sf_isfcav_fwf(1)%fnow(:,:,1) ! fwf ( > 0 from isf to oce) 123 pqoce(:,:) = - pqfwf(:,:) * rLfusisf ! ocean heat flux ( > 0 from isf to oce) 124 pqhc (:,:) = pqfwf(:,:) * ztfrz(:,:) * rcp ! heat content flux ( > 0 from isf to oce) 124 125 ! 125 126 ! output freezing point at the interface … … 163 164 ! 164 165 ! compute ocean-ice heat flux and then derive fwf assuming that ocean heat flux equal latent heat 165 pqfwf(:,:) = - pgt(:,:) * rho0_rcp * zthd(:,:) / rLfusisf ! fresh water flux ( > 0 out)166 pqoce(:,:) = - pqfwf(:,:) * rLfusisf ! ocea-ice flux ( > 0 out)167 pqhc (:,:) = pqfwf(:,:) * ztfrz(:,:) * rcp ! heat content flux ( > 0 out)166 pqfwf(:,:) = pgt(:,:) * rho0_rcp * zthd(:,:) / rLfusisf ! fresh water flux ( > 0 from isf to oce) 167 pqoce(:,:) = - pqfwf(:,:) * rLfusisf ! ocea-ice flux ( > 0 from isf to oce) 168 pqhc (:,:) = pqfwf(:,:) * ztfrz(:,:) * rcp ! heat content flux ( > 0 from isf to oce) 168 169 ! 169 170 ! output thermal driving and freezinpoint at the ice shelf interface … … 240 241 ! 241 242 ! compute the upward water and heat flux (eq. 24 and eq. 26) 242 pqfwf(ji,jj) = rho0 * pgs(ji,jj) * ( zsfrz - pstbl(ji,jj) ) / MAX(zsfrz,zeps) ! fresh water flux (> 0 out)243 pqoce(ji,jj) = rho0_rcp * pgt(ji,jj) * zthd (ji,jj) ! ocean-ice heat flux (> 0 out)244 pqhc (ji,jj) = rcp * pqfwf(ji,jj) * ztfrz(ji,jj) ! heat content flux (> 0 out)243 pqfwf(ji,jj) = - rho0 * pgs(ji,jj) * ( zsfrz - pstbl(ji,jj) ) / MAX(zsfrz,zeps) ! fresh water flux ( > 0 from isf to oce) 244 pqoce(ji,jj) = - rho0_rcp * pgt(ji,jj) * zthd (ji,jj) ! ocean-ice heat flux ( > 0 from isf to oce) 245 pqhc (ji,jj) = rcp * pqfwf(ji,jj) * ztfrz(ji,jj) ! heat content flux ( > 0 from isf to oce) 245 246 ! 246 247 zqcon(ji,jj) = zeps3 * ( ztfrz(ji,jj) - rtsurf ) … … 283 284 CALL eos_fzp( pstbl(:,:), ztfrz(:,:), risfdep(:,:) ) 284 285 ! 285 ! read input file 286 ! read input file of fwf from isf to oce 286 287 CALL fld_read ( kt, 1, sf_isfcav_fwf ) 287 288 ! 288 289 ! ice shelf 2d map 289 zfwf(:,:) = -sf_isfcav_fwf(1)%fnow(:,:,1)290 zfwf(:,:) = sf_isfcav_fwf(1)%fnow(:,:,1) 290 291 ! 291 292 ! compute glob sum from input file … … 302 303 ! define fwf and qoce 303 304 ! ocean heat flux is assume to be equal to the latent heat 304 pqfwf(:,:) = zfwf(:,:) ! fwf ( > 0 out)305 pqoce(:,:) = - pqfwf(:,:) * rLfusisf ! ocean heat flux ( > 0 out)306 pqhc (:,:) = pqfwf(:,:) * ztfrz(:,:) * rcp ! heat content flux ( > 0 out)305 pqfwf(:,:) = zfwf(:,:) ! fwf ( > 0 from isf to oce) 306 pqoce(:,:) = - pqfwf(:,:) * rLfusisf ! ocean heat flux ( > 0 from isf to oce) 307 pqhc (:,:) = pqfwf(:,:) * ztfrz(:,:) * rcp ! heat content flux ( > 0 from isf to oce) 307 308 ! 308 309 CALL iom_put('isftfrz_cav', ztfrz * mskisf_cav(:,:) )
Note: See TracChangeset
for help on using the changeset viewer.