Changeset 10009 for NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/SBC
- Timestamp:
- 2018-07-29T11:23:51+02:00 (6 years ago)
- Location:
- NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/SBC
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/SBC/sbccpl.F90
r9939 r10009 32 32 USE cpl_oasis3 ! OASIS3 coupling 33 33 USE geo2ocean ! 34 USE oce , ONLY : tsn, un, vn, ssh n, ub, vb, sshb, fraqsr_1lev34 USE oce , ONLY : tsn, un, vn, ssh, ub, vb, fraqsr_1lev 35 35 USE ocealb ! 36 36 USE eosbn2 ! … … 2467 2467 IF( ln_apr_dyn ) THEN 2468 2468 IF( kt /= nit000 ) THEN 2469 ztmp1(:,:) = ssh b(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) )2469 ztmp1(:,:) = ssh(:,:,Nbb) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 2470 2470 ELSE 2471 ztmp1(:,:) = ssh b(:,:)2471 ztmp1(:,:) = ssh(:,:,Nbb) 2472 2472 ENDIF 2473 2473 ELSE 2474 ztmp1(:,:) = ssh n(:,:)2474 ztmp1(:,:) = ssh(:,:,Nnn) 2475 2475 ENDIF 2476 2476 CALL cpl_snd( jps_wlev , isec, RESHAPE ( ztmp1, (/jpi,jpj,1/) ), info ) … … 2482 2482 ! ! removed inverse barometer ssh when Patm 2483 2483 ! forcing is used (for sea-ice dynamics) 2484 IF( ln_apr_dyn ) THEN ; ztmp1(:,:) = ssh b(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) )2485 ELSE ; ztmp1(:,:) = ssh n(:,:)2484 IF( ln_apr_dyn ) THEN ; ztmp1(:,:) = ssh(:,:,Nbb) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 2485 ELSE ; ztmp1(:,:) = ssh(:,:,Nnn) 2486 2486 ENDIF 2487 2487 CALL cpl_snd( jps_ssh , isec, RESHAPE ( ztmp1 , (/jpi,jpj,1/) ), info ) 2488 2489 2488 ENDIF 2490 2489 ! ! SSS -
NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/SBC/sbcfwb.F90
r9939 r10009 127 127 a_fwb_b = a_fwb ! mean sea level taking into account the ice+snow 128 128 ! sum over the global domain 129 a_fwb = glob_sum( e1e2t(:,:) * ( ssh n(:,:) + snwice_mass(:,:) * r1_rho0 ) )129 a_fwb = glob_sum( e1e2t(:,:) * ( ssh(:,:,Nnn) + snwice_mass(:,:) * r1_rho0 ) ) 130 130 a_fwb = a_fwb * 1.e+3 / ( area * rday * 365. ) ! convert in Kg/m3/s = mm/s 131 131 !!gm ! !!bug 365d year -
NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/SBC/sbcice_cice.F90
r10001 r10009 227 227 IF( .NOT.ln_rstart ) THEN 228 228 IF( ln_ice_embd ) THEN ! embedded sea-ice: deplete the initial ssh below sea-ice area 229 sshn(:,:) = sshn(:,:) - snwice_mass(:,:) * r1_rho0 230 sshb(:,:) = sshb(:,:) - snwice_mass(:,:) * r1_rho0 231 232 !!gm This should be put elsewhere.... (same remark for limsbc) 233 !!gm especially here it is assumed zstar coordinate, but it can be ztilde.... 234 IF( .NOT.ln_linssh ) THEN 229 ssh(:,:,Nnn) = ssh(:,:,Nnn) - snwice_mass(:,:) * r1_rho0 230 ssh(:,:,Nbb) = ssh(:,:,Nbb) - snwice_mass(:,:) * r1_rho0 231 ! 232 IF( .NOT.ln_linssh ) THEN ! modified the now and before vertical mesh and scale factors 235 233 ! 236 DO jk = 1,jpkm1 ! adjust initial vertical scale factors 237 e3t_n(:,:,jk) = e3t_0(:,:,jk) * ( 1._wp + sshn(:,:) * r1_ht_0(:,:) ) 238 e3t_b(:,:,jk) = e3t_0(:,:,jk) * ( 1._wp + sshb(:,:) * r1_ht_0(:,:) ) 239 END DO 240 e3t_a(:,:,:) = e3t_b(:,:,:) 241 ! Reconstruction of all vertical scale factors at now and before time-steps 242 ! ============================================================================= 243 ! Horizontal scale factor interpolations 244 ! -------------------------------------- 245 CALL dom_vvl_interpol( e3t_b(:,:,:), e3u_b(:,:,:), 'U' ) 246 CALL dom_vvl_interpol( e3t_b(:,:,:), e3v_b(:,:,:), 'V' ) 247 CALL dom_vvl_interpol( e3t_n(:,:,:), e3u_n(:,:,:), 'U' ) 248 CALL dom_vvl_interpol( e3t_n(:,:,:), e3v_n(:,:,:), 'V' ) 249 CALL dom_vvl_interpol( e3u_n(:,:,:), e3f_n(:,:,:), 'F' ) 250 ! Vertical scale factor interpolations 251 ! ------------------------------------ 252 CALL dom_vvl_interpol( e3t_n(:,:,:), e3w_n (:,:,:), 'W' ) 253 CALL dom_vvl_interpol( e3u_n(:,:,:), e3uw_n(:,:,:), 'UW' ) 254 CALL dom_vvl_interpol( e3v_n(:,:,:), e3vw_n(:,:,:), 'VW' ) 255 CALL dom_vvl_interpol( e3u_b(:,:,:), e3uw_b(:,:,:), 'UW' ) 256 CALL dom_vvl_interpol( e3v_b(:,:,:), e3vw_b(:,:,:), 'VW' ) 257 ! t- and w- points depth 258 ! ---------------------- 259 gdept_n(:,:,1) = 0.5_wp * e3w_n(:,:,1) 260 gdepw_n(:,:,1) = 0.0_wp 261 gde3w_n(:,:,1) = gdept_n(:,:,1) - sshn(:,:) 262 DO jk = 2, jpk 263 gdept_n(:,:,jk) = gdept_n(:,:,jk-1) + e3w_n(:,:,jk) 264 gdepw_n(:,:,jk) = gdepw_n(:,:,jk-1) + e3t_n(:,:,jk-1) 265 gde3w_n(:,:,jk) = gdept_n(:,:,jk ) - sshn (:,:) 266 END DO 234 ! !* BEFORE fields : 235 CALL ssh2e3_before ! set: hu , hv , r1_hu, r1_hv 236 ! ! e3t, e3w, e3u, e3uw, e3v, e3vw 237 ! 238 ! !* NOW fields : 239 CALL ssh2e3_now ! set: ht , hu , hv , r1_hu, r1_hv 240 ! ! e3t, e3w, e3u, e3uw, e3v, e3vw, e3f 241 ! ! gdept_n, gdepw_n, gde3w_n 267 242 ENDIF 268 243 ENDIF … … 290 265 ENDIF 291 266 292 ztmp(:,:) =0.0267 ztmp(:,:) = 0._wp 293 268 294 269 ! Aggregate ice concentration already set in cice_sbc_out (or cice_sbc_init on -
NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/SBC/sbcssm.F90
r9939 r10009 75 75 sss_m(:,:) = zts(:,:,jp_sal) 76 76 ! ! removed inverse barometer ssh when Patm forcing is used (for sea-ice dynamics) 77 IF( ln_apr_dyn ) THEN ; ssh_m(:,:) = ssh n(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) )78 ELSE ; ssh_m(:,:) = ssh n(:,:)77 IF( ln_apr_dyn ) THEN ; ssh_m(:,:) = ssh(:,:,Nnn) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 78 ELSE ; ssh_m(:,:) = ssh(:,:,Nnn) 79 79 ENDIF 80 80 ! … … 98 98 sss_m(:,:) = zcoef * zts(:,:,jp_sal) 99 99 ! ! removed inverse barometer ssh when Patm forcing is used (for sea-ice dynamics) 100 IF( ln_apr_dyn ) THEN ; ssh_m(:,:) = zcoef * ( ssh n(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) )101 ELSE ; ssh_m(:,:) = zcoef * sshn(:,:)100 IF( ln_apr_dyn ) THEN ; ssh_m(:,:) = zcoef * ( ssh(:,:,Nnn) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) ) 101 ELSE ; ssh_m(:,:) = zcoef * ssh(:,:,Nnn) 102 102 ENDIF 103 103 ! … … 126 126 sss_m(:,:) = sss_m(:,:) + zts(:,:,jp_sal) 127 127 ! ! removed inverse barometer ssh when Patm forcing is used (for sea-ice dynamics) 128 IF( ln_apr_dyn ) THEN ; ssh_m(:,:) = ssh_m(:,:) + ssh n(:,:) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) )129 ELSE ; ssh_m(:,:) = ssh_m(:,:) + ssh n(:,:)128 IF( ln_apr_dyn ) THEN ; ssh_m(:,:) = ssh_m(:,:) + ssh(:,:,Nnn) - 0.5 * ( ssh_ib(:,:) + ssh_ibb(:,:) ) 129 ELSE ; ssh_m(:,:) = ssh_m(:,:) + ssh(:,:,Nnn) 130 130 ENDIF 131 131 ! … … 247 247 ENDIF 248 248 sss_m(:,:) = tsn (:,:,1,jp_sal) 249 ssh_m(:,:) = ssh n (:,:)249 ssh_m(:,:) = ssh (:,:,Nnn) 250 250 e3t_m(:,:) = e3t_n(:,:,1) 251 251 frq_m(:,:) = 1._wp
Note: See TracChangeset
for help on using the changeset viewer.