Changeset 7210
- Timestamp:
- 2016-11-08T17:05:22+01:00 (8 years ago)
- Location:
- branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/CRS/crs.F90
r6772 r7210 8 8 !!---------------------------------------------------------------------- 9 9 USE par_oce 10 USE par_trc 10 11 USE dom_oce 11 12 USE in_out_manager … … 173 174 ! 174 175 ! Surface fluxes to pass to TOP 175 REAL(wp), PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: qsr_crs, fr_i_crs, wndm_crs 176 REAL(wp), PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: qsr_crs, fr_i_crs, wndm_crs,qsr_mean_crs 176 177 REAL(wp), PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: emp_crs, emp_b_crs, sfx_crs 177 178 REAL(wp), PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: fmmflx_crs 178 179 REAL(wp), PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: utau_crs, vtau_crs, taum_crs 179 REAL(wp), PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: rnf_crs,rnf_b_crs 180 REAL(wp), PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: rnf_crs,rnf_b_crs,h_rnf_crs 181 INTEGER , PUBLIC, DIMENSION(:,:) , ALLOCATABLE :: nk_rnf_crs 180 182 REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE :: trc_i_crs,trc_o_crs 181 REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE :: sbc_trc_crs, sbc_trc_b_crs 182 183 REAL(wp), PUBLIC, DIMENSION(:,:,:) , ALLOCATABLE :: 184 REAL(wp), PUBLIC, DIMENSION(:,:,:) , ALLOCATABLE :: 183 184 REAL(wp), PUBLIC, DIMENSION(:,:,:) , ALLOCATABLE :: etot3_crs 185 REAL(wp), PUBLIC, DIMENSION(:,:,:) , ALLOCATABLE :: uslp_crs, wslpi_crs !: i_slope at U- and W-points 186 REAL(wp), PUBLIC, DIMENSION(:,:,:) , ALLOCATABLE :: vslp_crs, wslpj_crs !: j-slope at V- and W-points 185 187 186 188 ! Horizontal diffusion … … 315 317 ALLOCATE( sshb_crs(jpi_crs,jpj_crs), sshn_crs(jpi_crs,jpj_crs), ssha_crs(jpi_crs,jpj_crs), & 316 318 & qsr_crs(jpi_crs ,jpj_crs), wndm_crs(jpi_crs,jpj_crs), utau_crs(jpi_crs,jpj_crs) , & 319 & qsr_mean_crs(jpi_crs ,jpj_crs) , & 317 320 & vtau_crs(jpi_crs,jpj_crs), taum_crs(jpi_crs,jpj_crs), & 318 321 & rnf_crs (jpi_crs,jpj_crs), rnf_b_crs(jpi_crs ,jpj_crs), & 322 & h_rnf_crs(jpi_crs,jpj_crs), nk_rnf_crs(jpi_crs ,jpj_crs), & 319 323 & emp_crs (jpi_crs,jpj_crs), emp_b_crs(jpi_crs,jpj_crs), & 320 & sbc_trc_crs (jpi_crs,jpj_crs,jpts), sbc_trc_b_crs(jpi_crs,jpj_crs,jpts), &321 & trc_i_crs (jpi_crs,jpj_crs,jpt s), trc_o_crs(jpi_crs,jpj_crs,jpts), &324 & etot3_crs(jpi_crs,jpj_crs,jpk) , & 325 & trc_i_crs (jpi_crs,jpj_crs,jptra), trc_o_crs(jpi_crs,jpj_crs,jptra), & 322 326 & fr_i_crs(jpi_crs,jpj_crs), sfx_crs(jpi_crs ,jpj_crs), fmmflx_crs(jpi_crs ,jpj_crs), STAT=ierr(12) ) 323 327 -
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/CRS/crsdom.F90
r7204 r7210 101 101 102 102 fmask_crs(ji,jj,jk) = fmask(ijie,ijje,jk) 103 103 104 104 105 ENDDO … … 1198 1199 ENDDO 1199 1200 1200 !WRITE(narea+8000-1,*)"nfipproc(ji,jj),narea :",nfipproc(iproci,iprocj),narea 1201 !WRITE(narea+8000-1,*)"proc i,j ",iproci,iprocj 1202 !WRITE(narea+8000-1,*)"nowe noea",nowe,noea 1203 !WRITE(narea+8000-1,*)"noso nono",noso,nono 1204 !WRITE(narea+8000-1,*)"nbondi nbondj ",nbondi,nbondj 1205 !WRITE(narea+8000-1,*)"jpiglo jpjglo ",jpiglo,jpjglo 1206 !WRITE(narea+8000-1,*)"jpi jpj ",jpi,jpj 1207 !WRITE(narea+8000-1,*)"nbondi nbondj",nbondi,nbondj 1208 !WRITE(narea+8000-1,*)"nimpp njmpp ",nimpp,njmpp 1209 !WRITE(narea+8000-1,*)"loc jpi nldi,nlei,nlci ",jpi, nldi ,nlei ,nlci 1210 !WRITE(narea+8000-1,*)"glo jpi nldi,nlei ",jpi, nldi+nimpp-1,nlei+nimpp-1 1211 !WRITE(narea+8000-1,*)"loc jpj nldj,nlej,nlcj ",jpj, nldj ,nlej ,nlcj 1212 !WRITE(narea+8000-1,*)"glo jpj nldj,nlej ",jpj, nldj+njmpp-1,nlej+njmpp-1 1213 !WRITE(narea+8000-1,*)"jpiglo_crs jpjglo_crs ",jpiglo_crs,jpjglo_crs 1214 !WRITE(narea+8000-1,*)"jpi_crs jpj_crs ",jpi_crs,jpj_crs 1215 !WRITE(narea+8000-1,*)"jpni jpnj jpnij ",jpni,jpnj,jpnij 1216 !WRITE(narea+8000-1,*)"glamt gphit ",glamt(1,1),gphit(jpi,jpj),glamt(jpi,jpj),gphit(jpi,jpj) 1201 WRITE(narea+8000-1,*)"nfipproc(ji,jj),narea :",nfipproc(iproci,iprocj),narea 1202 WRITE(narea+8000-1,*)"proc i,j ",iproci,iprocj 1203 WRITE(narea+8000-1,*)"jpni jpnj ",jpni,jpnj 1204 WRITE(narea+8000-1,*)"nowe noea",nowe,noea 1205 WRITE(narea+8000-1,*)"noso nono",noso,nono 1206 WRITE(narea+8000-1,*)"nbondi nbondj ",nbondi,nbondj 1207 WRITE(narea+8000-1,*)"jpiglo jpjglo ",jpiglo,jpjglo 1208 WRITE(narea+8000-1,*)"jpi jpj ",jpi,jpj 1209 WRITE(narea+8000-1,*)"nbondi nbondj",nbondi,nbondj 1210 WRITE(narea+8000-1,*)"nimpp njmpp ",nimpp,njmpp 1211 WRITE(narea+8000-1,*)"loc jpi nldi,nlei,nlci ",jpi, nldi ,nlei ,nlci 1212 WRITE(narea+8000-1,*)"glo jpi nldi,nlei ",jpi, nldi+nimpp-1,nlei+nimpp-1 1213 WRITE(narea+8000-1,*)"loc jpj nldj,nlej,nlcj ",jpj, nldj ,nlej ,nlcj 1214 WRITE(narea+8000-1,*)"glo jpj nldj,nlej ",jpj, nldj+njmpp-1,nlej+njmpp-1 1215 WRITE(narea+8000-1,*)"jpiglo_crs jpjglo_crs ",jpiglo_crs,jpjglo_crs 1216 WRITE(narea+8000-1,*)"jpi_crs jpj_crs ",jpi_crs,jpj_crs 1217 WRITE(narea+8000-1,*)"jpni jpnj jpnij ",jpni,jpnj,jpnij 1218 WRITE(narea+8000-1,*)"glamt gphit ",glamt(1,1),gphit(jpi,jpj),glamt(jpi,jpj),gphit(jpi,jpj) 1217 1219 !========================================================================== 1218 1220 ! dim along I … … 1226 1228 mis2_crs(ji)=ijis 1227 1229 mie2_crs(ji)=ijie 1230 WRITE(narea+8000-1,*)"ji",ji,mis2_crs(ji),mie2_crs(ji),mis2_crs(ji)-nimpp+1,mie2_crs(ji)-nimpp+1 1228 1231 ENDDO 1229 1232 … … 1240 1243 ii_start = mis2_crs(ijis)-nimpp+1 1241 1244 nimpp_crs = ijis-1 1245 WRITE(narea+8000-1,*)"ii_start = ",ii_start , mis2_crs(ijis), nimpp 1242 1246 1243 1247 nldi_crs = 2 … … 1267 1271 IF( nimpp==1 )nimpp_crs=1 1268 1272 1273 IF( iproci == 1 )THEN 1274 nldi_crs=1 1275 nimpp_crs=1 1276 ENDIF 1277 1269 1278 !---------------------------------------- 1270 1279 ji=jpiglo_crs 1271 DO WHILE( mie2_crs(ji) - nimpp + 1 .GT. jpi )1280 DO WHILE( mie2_crs(ji) - nimpp + 1 .GT. nlci ) 1272 1281 ji=ji-1 1273 1282 IF( ji==1 )EXIT 1274 1283 END DO 1284 WRITE(narea+8000-1,*)"=> mie2_crs ",ji,mie2_crs(ji), mie2_crs(ji) - nimpp + 1 1275 1285 ijie=ji 1276 1286 nlei_crs=ijie-nimpp_crs+1 … … 1290 1300 mis_crs(ji) = mis2_crs(mig_crs(ji)) - nimpp + 1 1291 1301 mie_crs(ji) = mie2_crs(mig_crs(ji)) - nimpp + 1 1292 nfactx(ji) = mie_crs(ji)-mi e_crs(ji)+11302 nfactx(ji) = mie_crs(ji)-mis_crs(ji)+1 1293 1303 ENDDO 1294 1304 1295 1305 IF( iproci == jpni )THEN 1296 1306 nlei_crs=nlci_crs 1297 mis_crs(nlei_crs)=mis_crs(nlei_crs-1) 1298 mie_crs(nlei_crs)=mie_crs(nlei_crs-1) 1307 ji=nlei_crs 1308 mis_crs(ji) = mis2_crs(mig_crs(ji)) - nimpp + 1 1309 mie_crs(ji) = nlei 1310 mie2_crs(mig_crs(ji)) = nlei + nimpp -1 1311 nfactx(ji) = mie_crs(ji)-mis_crs(ji)+1 1299 1312 ENDIF 1313 1314 DO ji = 1, nlei_crs 1315 WRITE(narea+8000-1,'(A4,7(1X,I4))')"loc ",ji,mig_crs(ji),mis2_crs(mig_crs(ji)),mie2_crs(mig_crs(ji)),mis_crs(ji),mie_crs(ji),nfactx(ji) 1316 ENDDO 1300 1317 1301 1318 !---------------------------------------- … … 1387 1404 mjs_crs(jj) = mjs2_crs(mjg_crs(jj)) - njmpp + 1 1388 1405 mje_crs(jj) = mje2_crs(mjg_crs(jj)) - njmpp + 1 1389 nfacty(jj) = mje_crs(jj)-mje_crs(jj)+11406 nfacty(jj) = mje_crs(jj)-mjs_crs(jj)+1 1390 1407 ENDDO 1408 IF( nono==-1 )THEn 1409 nlej_crs = nlcj_crs 1410 mjs_crs(nlej_crs) = mjs2_crs(mjg_crs(nlej_crs)) - njmpp + 1 1411 mje_crs(nlej_crs) = nlcj 1412 nfacty(jj) = mje_crs(jj)-mjs_crs(jj)+1 1413 ENDIF 1391 1414 1392 1415 IF( iprocj == jpnj )THEN 1393 mjs_crs(nlej_crs)=mjs_crs(nlej_crs-1) 1394 mje_crs(nlej_crs)=mje_crs(nlej_crs-1) 1416 mjs_crs(nlej_crs) = mjs_crs(nlej_crs-1) 1417 mje_crs(nlej_crs) = mje_crs(nlej_crs-1) 1418 nfacty(nlej_crs) = mje_crs(nlej_crs)-mjs_crs(nlej_crs)+1 1395 1419 ENDIF 1396 1420 1421 DO jj = 1, nlej_crs 1422 WRITE(narea+8000-1,'(A4,7(1X,I4))')"loc ",jj,mjg_crs(jj),mjs2_crs(mjg_crs(jj)),mje2_crs(mjg_crs(jj)),mjs_crs(jj),mje_crs(jj),nfacty(jj) 1423 ENDDO 1397 1424 !---------------------------------------- 1398 1425 … … 1439 1466 END DO 1440 1467 1441 !WRITE(narea+8000-1,*)"loc crs jpi nldi,nlei,nlci ",jpi_crs, nldi_crs ,nlei_crs ,nlci_crs 1442 !WRITE(narea+8000-1,*)"glo crs jpi nldi,nlei ",jpi_crs, nldi_crs+nimpp_crs-1,nlei_crs+nimpp_crs-1 1443 !WRITE(narea+8000-1,*)"loc crs jpj nldj,nlej,nlcj ",jpj_crs, nldj_crs ,nlej_crs ,nlcj_crs 1444 !WRITE(narea+8000-1,*)"glo crs jpj nldj,nlej ",jpj_crs, nldj_crs+njmpp_crs-1,nlej_crs+njmpp_crs-1 1468 WRITE(narea+8000-1,*)"loc crs jpi nldi,nlei,nlci ",jpi_crs, nldi_crs ,nlei_crs ,nlci_crs 1469 WRITE(narea+8000-1,*)"glo crs jpi nldi,nlei ",jpi_crs, nldi_crs+nimpp_crs-1,nlei_crs+nimpp_crs-1 1470 WRITE(narea+8000-1,*)"loc crs jpj nldj,nlej,nlcj ",jpj_crs, nldj_crs ,nlej_crs ,nlcj_crs 1471 WRITE(narea+8000-1,*)"glo crs jpj nldj,nlej ",jpj_crs, nldj_crs+njmpp_crs-1,nlej_crs+njmpp_crs-1 1472 WRITE(narea+8000-1,*)"jpi_crs jpj_crs ",jpi_crs,jpj_crs 1473 WRITE(narea+8000-1,*)"nimpp_crs njmpp_crs ",nimpp_crs,njmpp_crs 1474 1475 WRITE(narea+8000-1,*)"min max tmask ",MINVAL(tmask),MAXVAL(tmask) 1476 1477 IF( jpi_crs .LE. 0 ) WRITE(narea+8000-1,*)"BUG jpi_crs" 1478 IF( jpj_crs .LE. 0 ) WRITE(narea+8000-1,*)"BUG jpj_crs" 1479 IF( nldi_crs .LE. 0 ) WRITE(narea+8000-1,*)"BUG nldi_crs" 1480 IF( nldj_crs .LE. 0 ) WRITE(narea+8000-1,*)"BUG nldj_crs" 1481 IF( nlei_crs .GT. jpi_crs ) WRITE(narea+8000-1,*)"BUG nlei_crs" 1482 IF( nlej_crs .GT. jpj_crs ) WRITE(narea+8000-1,*)"BUG nlej_crs" 1483 IF( nimpp_crs .LE. 0 .OR. nimpp_crs .GT. jpiglo_crs) WRITE(narea+8000-1,*)"BUG nimpp_crs",nimpp_crs 1484 IF( njmpp_crs .LE. 0 .OR. njmpp_crs .GT. jpjglo_crs) WRITE(narea+8000-1,*)"BUG njmpp_crs",njmpp_crs 1485 CALL FLUSh(narea+8000-1) 1486 1487 DO ji=1,nlei_crs 1488 IF( ji+nimpp_crs-1 .GT. jpiglo_crs )WRITE(narea+8000-1,*)"BUG ji+nimpp_crs-1 .GT. jpiglo_crs ",ji,ji+nimpp_crs-1 1489 ENDDO 1490 DO jj=1,nlej_crs 1491 IF( jj+njmpp_crs-1 .GT. jpjglo_crs )WRITE(narea+8000-1,*)"BUG jj+njmpp_crs-1 .GT. jpjglo_crs ",jj,jj+njmpp_crs-1 1492 ENDDO 1445 1493 !============================================================================================== 1446 1494 IF( jpizoom /= 1 .OR. jpjzoom /= 1) STOP -
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/CRS/crsfld.F90
r7207 r7210 15 15 USE ldftra_oce ! ocean active tracers: lateral physics 16 16 USE sbc_oce ! Surface boundary condition: ocean fields 17 USE sbcrnf 17 18 USE zdf_oce ! vertical physics: ocean fields 18 19 USE zdfddm ! vertical physics: double diffusion … … 33 34 USE zdftke 34 35 USE zdftke_crs 35 36 USE trc, ONLY: qsr_mean 36 37 USE ieee_arithmetic 37 38 … … 226 227 CALL crs_dom_e3( e1v, e2v, zfse3v, p_sfc_2d_crs=e1v_crs , cd_type='V', p_mask=vmask, p_e3_crs=zs_crs, p_e3_max_crs=e3v_max_n_crs) 227 228 228 WHERE(e3t_max_n_crs == 0._wp) e3t_max_n_crs=r_inf 229 WHERE(e3u_max_n_crs == 0._wp) e3u_max_n_crs=r_inf 230 WHERE(e3v_max_n_crs == 0._wp) e3v_max_n_crs=r_inf 231 WHERE(e3w_max_n_crs == 0._wp) e3w_max_n_crs=r_inf 229 DO jk = 1, jpk 230 DO ji = 1, jpi_crs 231 DO jj = 1, jpj_crs 232 IF( e3t_n_crs(ji,jj,jk) == 0._wp ) e3t_n_crs(ji,jj,jk) = e3t_1d(jk) 233 IF( e3w_n_crs(ji,jj,jk) == 0._wp ) e3w_n_crs(ji,jj,jk) = e3w_1d(jk) 234 IF( e3u_n_crs(ji,jj,jk) == 0._wp ) e3u_n_crs(ji,jj,jk) = e3t_1d(jk) 235 IF( e3v_n_crs(ji,jj,jk) == 0._wp ) e3v_n_crs(ji,jj,jk) = e3t_1d(jk) 236 IF( e3t_max_n_crs(ji,jj,jk) == 0._wp ) e3t_max_n_crs(ji,jj,jk) = e3t_1d(jk) 237 IF( e3w_max_n_crs(ji,jj,jk) == 0._wp ) e3w_max_n_crs(ji,jj,jk) = e3w_1d(jk) 238 IF( e3u_max_n_crs(ji,jj,jk) == 0._wp ) e3u_max_n_crs(ji,jj,jk) = e3t_1d(jk) 239 IF( e3v_max_n_crs(ji,jj,jk) == 0._wp ) e3v_max_n_crs(ji,jj,jk) = e3t_1d(jk) 240 ENDDO 241 ENDDO 242 ENDDO 232 243 233 244 CALL crs_dom_ope( gdepw_n, 'MAX', 'T', tmask, gdept_n_crs, p_e3=zfse3t, psgn=1.0 ) 234 245 CALL crs_dom_ope( gdepw_n, 'MAX', 'W', tmask, gdepw_n_crs, p_e3=zfse3w, psgn=1.0 ) 246 DO jk = 1, jpk 247 DO ji = 1, jpi_crs 248 DO jj = 1, jpj_crs 249 IF( gdept_n_crs(ji,jj,jk) .LE. 0._wp ) gdept_n_crs(ji,jj,jk) = gdept_1d(jk) 250 IF( gdepw_n_crs(ji,jj,jk) .LE. 0._wp ) gdepw_n_crs(ji,jj,jk) = gdepw_1d(jk) 251 ENDDO 252 ENDDO 253 ENDDO 254 zmin=MINVAL(gdept_n_crs);zmax=MAXVAL(gdept_n_crs);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld gdept_n_crs",zmin,zmax 255 zmin=MINVAL(gdepw_n_crs);zmax=MAXVAL(gdepw_n_crs);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld gdepw_n_crs",zmin,zmax 235 256 236 257 CALL crs_dom_facvol( tmask, 'T', e1t, e2t, zfse3t, ocean_volume_crs_t, facvol_t ) … … 325 346 CALL crs_dom_ope( wndm , 'SUM', 'T', tmask, wndm_crs , p_e12=e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0 ) 326 347 CALL crs_dom_ope( rnf , 'MAX', 'T', tmask, rnf_crs , psgn=1.0 ) 348 CALL crs_dom_ope( h_rnf, 'MAX', 'T', tmask, h_rnf_crs , psgn=1.0 ) 349 z2d=REAL(nk_rnf,wp) 350 CALL crs_dom_ope( z2d , 'MAX', 'T', tmask, z2d_crs , p_e12=e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0 ) 351 nk_rnf_crs=INT(z2d_crs) 327 352 CALL crs_dom_ope( qsr , 'SUM', 'T', tmask, qsr_crs , p_e12=e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0 ) 328 #if defined key_vvl 329 CALL crs_dom_ope( gdepw_n, 'MAX', 'W', tmask, gdepw_n_crs, p_e3=zfse3w, psgn=1.0 ) 330 #else 331 CALL crs_dom_ope( gdepw_0, 'MAX', 'W', tmask, gdepw_0_crs, p_e3=zfse3w, psgn=1.0 ) 332 #endif 353 354 !???#if defined key_vvl 355 ! CALL crs_dom_ope( gdepw_n, 'MAX', 'W', tmask, gdepw_n_crs, p_e3=zfse3w, psgn=1.0 ) 356 !#else 357 ! CALL crs_dom_ope( gdepw_0, 'MAX', 'W', tmask, gdepw_0_crs, p_e3=zfse3w, psgn=1.0 ) 358 !#endif 333 359 CALL crs_dom_ope( emp ,'SUM', 'T', tmask, emp_crs , p_e12=e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0 ) 334 360 CALL crs_dom_ope( fmmflx,'SUM', 'T', tmask, fmmflx_crs, p_e12=e1e2t, p_surf_crs=e1e2t_crs, psgn=1.0 ) … … 412 438 zmin=MINVAL(e3t_n_crs);zmax=MAXVAL(e3t_n_crs);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld e3t_n_crs",zmin,zmax 413 439 zmin=MINVAL(e3t_a_crs);zmax=MAXVAL(e3t_a_crs);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld e3t_a_crs",zmin,zmax 440 zmin=MINVAL(e3t_max_n_crs);zmax=MAXVAL(e3t_max_n_crs);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld e3t_max_n_crs",zmin,zmax 441 zmin=MINVAL(e3w_max_n_crs);zmax=MAXVAL(e3w_max_n_crs);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld e3w_max_n_crs",zmin,zmax 414 442 zmin=MINVAL(sshb);zmax=MAXVAL(sshb);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld sshb",zmin,zmax 415 443 zmin=MINVAL(sshn);zmax=MAXVAL(sshn);CALL mpp_min(zmin);CALL mpp_max(zmax);IF(lwp)WRITE(numout,*)"crsfld sshn",zmin,zmax -
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/OPA_SRC/CRS/crsini.F90
r7207 r7210 223 223 CALL crs_dom_e3( e1v, e2v, zfse3v, p_sfc_2d_crs=e1v_crs , cd_type='V', p_mask=vmask, p_e3_crs=e3v_0_crs, p_e3_max_crs=e3v_max_0_crs) 224 224 225 WHERE(e3t_max_0_crs == 0._wp) e3t_max_0_crs=r_inf 226 WHERE(e3u_max_0_crs == 0._wp) e3u_max_0_crs=r_inf 227 WHERE(e3v_max_0_crs == 0._wp) e3v_max_0_crs=r_inf 228 WHERE(e3w_max_0_crs == 0._wp) e3w_max_0_crs=r_inf 225 DO jk = 1, jpk 226 DO ji = 1, jpi_crs 227 DO jj = 1, jpj_crs 228 IF( e3t_max_0_crs(ji,jj,jk) == 0._wp ) e3t_max_0_crs(ji,jj,jk) = e3t_1d(jk) 229 IF( e3w_max_0_crs(ji,jj,jk) == 0._wp ) e3w_max_0_crs(ji,jj,jk) = e3w_1d(jk) 230 IF( e3u_max_0_crs(ji,jj,jk) == 0._wp ) e3u_max_0_crs(ji,jj,jk) = e3t_1d(jk) 231 IF( e3v_max_0_crs(ji,jj,jk) == 0._wp ) e3v_max_0_crs(ji,jj,jk) = e3t_1d(jk) 232 ENDDO 233 ENDDO 234 ENDDO 229 235 230 236 #if defined key_vvl … … 281 287 CALL crs_dom_ope( gdept_0, 'MAX', 'T', tmask, gdept_0_crs, p_e3=zfse3t, psgn=1.0 ) 282 288 CALL crs_dom_ope( gdepw_0, 'MAX', 'W', tmask, gdepw_0_crs, p_e3=zfse3w, psgn=1.0 ) 289 290 DO jk = 1, jpk 291 DO ji = 1, jpi_crs 292 DO jj = 1, jpj_crs 293 IF( gdept_0_crs(ji,jj,jk) .LE. 0._wp ) gdept_0_crs(ji,jj,jk) = gdept_1d(jk) 294 IF( gdepw_0_crs(ji,jj,jk) .LE. 0._wp ) gdepw_0_crs(ji,jj,jk) = gdepw_1d(jk) 295 ENDDO 296 ENDDO 297 ENDDO 298 283 299 #if defined key_vvl 284 300 gdept_n_crs(:,:,:) = gdept_0_crs(:,:,:) -
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/TOP_SRC/TRP/trcnxt.F90
r6772 r7210 27 27 !!---------------------------------------------------------------------- 28 28 USE oce_trc ! ocean dynamics and tracers variables 29 USE trc, ONLY : nittrc000, tra, jptra,rdttrc,trb, trn,tra,ctrcnm 29 USE trc, ONLY : nittrc000, tra, jptra,rdttrc,trb, trn,tra,ctrcnm,sbc_trc,sbc_trc_b ! ocean passive tracers variables 30 30 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 31 31 USE prtctl_trc ! Print control for debbuging -
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/TOP_SRC/TRP/trcsbc.F90
r6772 r7210 17 17 !!---------------------------------------------------------------------- 18 18 USE oce_trc ! ocean dynamics and active tracers variables 19 USE trc , ONLY : trn,tra,ln_top_euler,rdttrc,nittrc000,ln_rsttr,numrtr,ctrcnm,jptra,numrtw,nn_ice_tr,lrst_trc 19 USE trc , ONLY : trn,tra,ln_top_euler,rdttrc,nittrc000,ln_rsttr,numrtr,ctrcnm,jptra,numrtw,nn_ice_tr,lrst_trc,sbc_trc_b,sbc_trc 20 20 USE prtctl_trc ! Print control for debbuging 21 21 USE iom , ONLY : iom_varid, iom_get, iom_rstput,jpdom_autoglo -
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/TOP_SRC/TRP/trctrp.F90
r7207 r7210 35 35 USE zpshde_crs ! partial step: hor. derivative (zps_hde routine) 36 36 USE dom_oce , ONLY : ln_crs, ln_isfcav 37 USE crs , ONLY : jpi_crs,jpj_crs,wn_crs,ln_crs_top ,sbc_trc_crs,sbc_trc_b_crs37 USE crs , ONLY : jpi_crs,jpj_crs,wn_crs,ln_crs_top 38 38 USE ldfslp_crs 39 39 #if defined key_agrif -
branches/2015/dev_r5003_MERCATOR6_CRS/NEMOGCM/NEMO/TOP_SRC/oce_trc.F90
r6772 r7210 211 211 USE crs , ONLY : emp_b => emp_b_crs !: freshwater budget: volume flux [Kg/m2/s] 212 212 USE crs , ONLY : sfx => sfx_crs !: freshwater budget: concentration/dillution [Kg/m2/s] 213 USE crs , ONLY : sbc_trc_b => sbc_trc_b_crs !: freshwater budget: volume flux [Kg/m2/s]214 USE crs , ONLY : sbc_trc => sbc_trc_crs !: freshwater budget: volume flux [Kg/m2/s]215 213 USE crs , ONLY : fmmflx => fmmflx_crs !: freshwater budget: volume flux [Kg/m2/s] 216 214 USE crs , ONLY : rnf => rnf_crs !: river runoff [Kg/m2/s] … … 442 440 USE sbcrnf , ONLY : h_rnf => h_rnf !: river runoff [Kg/m2/s] 443 441 USE sbcrnf , ONLY : nk_rnf => nk_rnf !: depth of runoff in model level 444 USE trc , ONLY : sbc_trc_b => sbc_trc_b !: freshwater budget: volume flux [Kg/m2/s]445 USE trc , ONLY : sbc_trc => sbc_trc !: freshwater budget: volume flux [Kg/m2/s]446 442 USE trc , ONLY : trc_i => trc_i 447 443 USE trc , ONLY : trc_o => trc_o
Note: See TracChangeset
for help on using the changeset viewer.