- Timestamp:
- 2018-11-07T18:25:49+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2018/dev_r9866_HPC_03_globcom/src/ICE/icectl.F90
- Property svn:keywords set to Id
r9604 r10288 45 45 !!---------------------------------------------------------------------- 46 46 !! NEMO/ICE 4.0 , NEMO Consortium (2018) 47 !! $Id : icectl.F90 5043 2015-01-28 16:44:18Z clem$48 !! Software governed by the CeCILL licen ce (./LICENSE)47 !! $Id$ 48 !! Software governed by the CeCILL license (see ./LICENSE) 49 49 !!---------------------------------------------------------------------- 50 50 CONTAINS … … 93 93 & ) * e1e2t(:,:) ) * zconv 94 94 95 pdiag_v = glob_sum( SUM( v_i * rhoi c + v_s * rhosn, dim=3 ) * e1e2t * zconv )96 97 pdiag_s = glob_sum( SUM( sv_i * rhoi c, dim=3 ) * e1e2t * zconv )95 pdiag_v = glob_sum( SUM( v_i * rhoi + v_s * rhos, dim=3 ) * e1e2t * zconv ) 96 97 pdiag_s = glob_sum( SUM( sv_i * rhoi , dim=3 ) * e1e2t * zconv ) 98 98 99 99 pdiag_t = glob_sum( ( SUM( SUM( e_i(:,:,1:nlay_i,:), dim=4 ), dim=3 ) & … … 120 120 121 121 ! outputs 122 zv = ( ( glob_sum( SUM( v_i * rhoi c + v_s * rhosn, dim=3 ) * e1e2t ) * zconv &122 zv = ( ( glob_sum( SUM( v_i * rhoi + v_s * rhos, dim=3 ) * e1e2t ) * zconv & 123 123 & - pdiag_v ) * r1_rdtice - zfv ) * rday 124 124 125 zs = ( ( glob_sum( SUM( sv_i * rhoi c, dim=3 ) * e1e2t ) * zconv &125 zs = ( ( glob_sum( SUM( sv_i * rhoi , dim=3 ) * e1e2t ) * zconv & 126 126 & - pdiag_s ) * r1_rdtice + zfs ) * rday 127 127 … … 131 131 132 132 ! zvtrp and zetrp must be close to 0 if the advection scheme is conservative 133 zvtrp = glob_sum( ( diag_trp_vi * rhoi c + diag_trp_vs * rhosn) * e1e2t ) * zconv * rday134 zetrp = glob_sum( ( diag_trp_ei + diag_trp_es) * e1e2t ) * zconv133 zvtrp = glob_sum( ( diag_trp_vi * rhoi + diag_trp_vs * rhos ) * e1e2t ) * zconv * rday 134 zetrp = glob_sum( ( diag_trp_ei + diag_trp_es ) * e1e2t ) * zconv 135 135 136 136 zvmin = glob_min( v_i ) … … 148 148 IF ( ABS( zs ) > zs_sill ) WRITE(numout,*) 'violation saline [psu*Mt/day] (',cd_routine,') = ',zs 149 149 IF ( ABS( zt ) > zt_sill ) WRITE(numout,*) 'violation enthalpy [GW] (',cd_routine,') = ',zt 150 IF ( ABS(zvtrp ) > zv_sill .AND. cd_routine == 'icedyn_adv' ) THEN151 WRITE(numout,*) 'violation vtrp [Mt/day] (',cd_routine,') = ',zvtrp152 WRITE(numout,*) 'violation etrp [GW] (',cd_routine,') = ',zetrp153 ENDIF154 150 IF ( zvmin < -epsi10 ) WRITE(numout,*) 'violation v_i<0 [m] (',cd_routine,') = ',zvmin 155 151 IF ( zamax > MAX(rn_amax_n,rn_amax_s)+epsi10 .AND. cd_routine /= 'icedyn_adv' .AND. cd_routine /= 'icedyn_rdgrft' ) & 156 152 & WRITE(numout,*) 'violation a_i>amax (',cd_routine,') = ',zamax 157 153 IF ( zamin < -epsi10 ) WRITE(numout,*) 'violation a_i<0 (',cd_routine,') = ',zamin 154 !clem: the following check fails when using UM3-5 advection scheme (see comments in icedyn_adv.F90) 155 ! IF ( ABS(zvtrp ) > zv_sill .AND. cd_routine == 'icedyn_adv' ) THEN 156 ! WRITE(numout,*) 'violation vtrp [Mt/day] (',cd_routine,') = ',zvtrp 157 ! WRITE(numout,*) 'violation etrp [GW] (',cd_routine,') = ',zetrp 158 ! ENDIF 158 159 ENDIF 159 160 ! … … 189 190 190 191 ! heat flux 191 zhfx = glob_sum( ( hfx_in - hfx_out- diag_heat - diag_trp_ei - diag_trp_es &192 zhfx = glob_sum( ( qt_atm_oi - qt_oce_ai - diag_heat - diag_trp_ei - diag_trp_es & 192 193 ! & - SUM( qevap_ice * a_i_b, dim=3 ) & !!clem: I think this line must be commented (but need check) 193 194 & ) * e1e2t ) * zconv … … 382 383 DO jj = 1, jpj 383 384 DO ji = 1, jpi 384 ztmelts = - tmut * sz_i(ji,jj,jk,jl) + rt0385 ztmelts = -rTmlt * sz_i(ji,jj,jk,jl) + rt0 385 386 IF( t_i(ji,jj,jk,jl) >= ztmelts .AND. v_i(ji,jj,jl) > 1.e-10 & 386 387 & .AND. a_i(ji,jj,jl) > 0._wp ) THEN … … 572 573 WRITE(numout,*) 573 574 WRITE(numout,*) ' hfx_mass : ', hfx_thd(ji,jj) + hfx_dyn(ji,jj) + hfx_snw(ji,jj) + hfx_res(ji,jj) 574 WRITE(numout,*) ' hfx_in : ', hfx_in(ji,jj)575 WRITE(numout,*) ' hfx_out : ', hfx_out(ji,jj)575 WRITE(numout,*) ' qt_atm_oi : ', qt_atm_oi(ji,jj) 576 WRITE(numout,*) ' qt_oce_ai : ', qt_oce_ai(ji,jj) 576 577 WRITE(numout,*) ' dhc : ', diag_heat(ji,jj) 577 578 WRITE(numout,*) … … 579 580 WRITE(numout,*) ' hfx_thd : ', hfx_thd(ji,jj) 580 581 WRITE(numout,*) ' hfx_res : ', hfx_res(ji,jj) 581 WRITE(numout,*) ' fhtur : ', fhtur(ji,jj)582 WRITE(numout,*) ' qsb_ice_bot : ', qsb_ice_bot(ji,jj) 582 583 WRITE(numout,*) ' qlead : ', qlead(ji,jj) * r1_rdtice 583 584 WRITE(numout,*)
Note: See TracChangeset
for help on using the changeset viewer.