Changeset 12232
 Timestamp:
 20191213T09:25:14+01:00 (2 years ago)
 Location:
 NEMO/trunk/src/TOP/PISCES/P4Z
 Files:

 2 edited
Legend:
 Unmodified
 Added
 Removed

NEMO/trunk/src/TOP/PISCES/P4Z/p4zmeso.F90
r11536 r12232 71 71 REAL(wp) :: zgrazn, zgrazpoc, zgraznf, zgrazf 72 72 REAL(wp) :: zgrazfffp, zgrazfffg, zgrazffep, zgrazffeg 73 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zgrazing2, zfezoo2, zz2ligprod 73 74 CHARACTER (len=25) :: charout 74 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zgrazing, zfezoo275 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: zw3d, zz2ligprod76 75 !! 77 76 ! 78 77 IF( ln_timing ) CALL timing_start('p4z_meso') 79 !80 zgrazing(:,:,:) = 0._wp81 zfezoo2 (:,:,:) = 0._wp82 !83 IF (ln_ligand) THEN84 ALLOCATE( zz2ligprod(jpi,jpj,jpk) )85 zz2ligprod(:,:,:) = 0._wp86 ENDIF87 78 ! 88 79 DO jk = 1, jpkm1 … … 162 153 163 154 ! Total grazing ( grazing by microzoo is already computed in p4zmicro ) 164 zgrazing (ji,jj,jk) = zgraztotc155 zgrazing2(ji,jj,jk) = zgraztotc 165 156 166 157 ! Mesozooplankton efficiency … … 233 224 ! 234 225 IF( lk_iomput .AND. knt == nrdttrc ) THEN 235 ALLOCATE( zw3d(jpi,jpj,jpk) ) 236 IF( iom_use( "GRAZ2" ) ) THEN 237 zw3d(:,:,:) = zgrazing(:,:,:) * 1.e+3 * rfact2r * tmask(:,:,:) ! Total grazing of phyto by zooplankton 238 CALL iom_put( "GRAZ2", zw3d ) 226 zgrazing2(:,:,jpk) = 0._wp 227 zfezoo2 (:,:,jpk) = 0._wp 228 CALL iom_put( "GRAZ2" , zgrazing2(:,:,:) * 1.e+3 * rfact2r * tmask(:,:,:) ) ! Total grazing of phyto by zooplankton 229 CALL iom_put( "PCAL" , prodcal (:,:,:) * 1.e+3 * rfact2r * tmask(:,:,:) ) ! Calcite production 230 CALL iom_put( "FEZOO2", zfezoo2 (:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 231 IF( ln_ligand ) THEN 232 zz2ligprod(:,:,jpk) = 0._wp 233 CALL iom_put( "LPRODZ2", zz2ligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 239 234 ENDIF 240 IF( iom_use( "PCAL" ) ) THEN241 zw3d(:,:,:) = prodcal(:,:,:) * 1.e+3 * rfact2r * tmask(:,:,:) ! Calcite production242 CALL iom_put( "PCAL", zw3d )243 ENDIF244 IF( iom_use( "FEZOO2" ) ) THEN245 zw3d(:,:,:) = zfezoo2(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) !246 CALL iom_put( "FEZOO2", zw3d )247 ENDIF248 IF( iom_use( "LPRODZ2" ) .AND. ln_ligand ) THEN249 zw3d(:,:,:) = zz2ligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:)250 CALL iom_put( "LPRODZ2" , zw3d )251 ENDIF252 DEALLOCATE( zw3d )253 235 ENDIF 254 !255 IF (ln_ligand) DEALLOCATE( zz2ligprod )256 236 ! 257 237 IF(ln_ctl) THEN ! print mean trends (used for debugging) 
NEMO/trunk/src/TOP/PISCES/P4Z/p4zmicro.F90
r11536 r12232 69 69 REAL(wp) :: zgrazp, zgrazm, zgrazsd 70 70 REAL(wp) :: zgrazmf, zgrazsf, zgrazpf 71 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zgrazing, zfezoo 72 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: zw3d, zzligprod 71 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zgrazing, zfezoo, zzligprod 73 72 CHARACTER (len=25) :: charout 74 73 !! 75 74 ! 76 75 IF( ln_timing ) CALL timing_start('p4z_micro') 77 !78 IF (ln_ligand) THEN79 ALLOCATE( zzligprod(jpi,jpj,jpk) )80 zzligprod(:,:,:) = 0._wp81 ENDIF82 76 ! 83 77 DO jk = 1, jpkm1 … … 186 180 END DO 187 181 ! 188 IF( lk_iomput ) THEN 189 IF( knt == nrdttrc ) THEN 190 ALLOCATE( zw3d(jpi,jpj,jpk) ) 191 IF( iom_use( "GRAZ1" ) ) THEN 192 zw3d(:,:,:) = zgrazing(:,:,:) * 1.e+3 * rfact2r * tmask(:,:,:) ! Total grazing of phyto by zooplankton 193 CALL iom_put( "GRAZ1", zw3d ) 194 ENDIF 195 IF( iom_use( "FEZOO" ) ) THEN 196 zw3d(:,:,:) = zfezoo(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ! 197 CALL iom_put( "FEZOO", zw3d ) 198 ENDIF 199 IF( iom_use( "LPRODZ" ) .AND. ln_ligand ) THEN 200 zw3d(:,:,:) = zzligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) 201 CALL iom_put( "LPRODZ" , zw3d ) 202 ENDIF 203 DEALLOCATE( zw3d ) 182 IF( lk_iomput .AND. knt == nrdttrc ) THEN 183 zgrazing(:,:,jpk) = 0._wp 184 zfezoo (:,:,jpk) = 0._wp 185 CALL iom_put( "GRAZ1", zgrazing(:,:,:) * 1.e+3 * rfact2r * tmask(:,:,:) ) ! Total grazing of phyto by zooplankton 186 CALL iom_put( "FEZOO", zfezoo (:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 187 IF( ln_ligand ) THEN 188 zzligprod(:,:,jpk) = 0._wp 189 CALL iom_put( "LPRODZ", zzligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 204 190 ENDIF 205 191 ENDIF 206 !207 IF (ln_ligand) DEALLOCATE( zzligprod )208 192 ! 209 193 IF(ln_ctl) THEN ! print mean trends (used for debugging)
Note: See TracChangeset
for help on using the changeset viewer.