Changeset 2528 for trunk/NEMOGCM/NEMO/LIM_SRC_2/limtrp_2.F90
- Timestamp:
- 2010-12-27T18:33:53+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/LIM_SRC_2/limtrp_2.F90
- Property svn:eol-style deleted
r1922 r2528 7 7 !! 2.0 ! 2001-05 (G. Madec, R. Hordoir) opa norm 8 8 !! - ! 2004-01 (G. Madec, C. Ethe) F90, mpp 9 !! 3.3 ! 2009-05 (G. Garric, C. Bricaud) addition of the lim2_evp case 9 10 !!---------------------------------------------------------------------- 10 11 #if defined key_lim2 … … 32 33 PUBLIC lim_trp_2 ! called by sbc_ice_lim_2 33 34 34 REAL(wp), PUBLIC :: bound = 0.e0 !: boundary condit. (0.0 no-slip, 1.0 free-slip) 35 36 REAL(wp) :: & ! constant values 37 epsi06 = 1.e-06 , & 38 epsi03 = 1.e-03 , & 39 epsi16 = 1.e-16 , & 40 rzero = 0.e0 , & 41 rone = 1.e0 35 REAL(wp), PUBLIC :: bound = 0.e0 !: boundary condit. (0.0 no-slip, 1.0 free-slip) 36 37 REAL(wp) :: epsi06 = 1.e-06 ! constant values 38 REAL(wp) :: epsi03 = 1.e-03 39 REAL(wp) :: epsi16 = 1.e-16 40 REAL(wp) :: rzero = 0.e0 41 REAL(wp) :: rone = 1.e0 42 42 43 43 !! * Substitution 44 44 # include "vectopt_loop_substitute.h90" 45 45 !!---------------------------------------------------------------------- 46 !! NEMO/LIM 3.2, UCL-LOCEAN-IPSL (2010)46 !! NEMO/LIM2 3.3 , UCL - NEMO Consortium (2010) 47 47 !! $Id$ 48 !! Software governed by the CeCILL licence ( modipsl/doc/NEMO_CeCILL.txt)48 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 49 49 !!---------------------------------------------------------------------- 50 50 … … 87 87 ! ice velocities at ocean U- and V-points (zui_u,zvi_v) 88 88 ! --------------------------------------- 89 zvbord = 1.0 + ( 1.0 - bound ) ! zvbord=2 no-slip, =0 free slip boundary conditions 90 DO jj = 1, jpjm1 91 DO ji = 1, jpim1 ! NO vector opt. 92 zui_u(ji,jj) = ( u_ice(ji+1,jj ) + u_ice(ji+1,jj+1) ) / ( MAX( tmu(ji+1,jj ) + tmu(ji+1,jj+1), zvbord ) ) 93 zvi_v(ji,jj) = ( v_ice(ji ,jj+1) + v_ice(ji+1,jj+1) ) / ( MAX( tmu(ji ,jj+1) + tmu(ji+1,jj+1), zvbord ) ) 94 END DO 95 END DO 96 CALL lbc_lnk( zui_u, 'U', -1. ) ; CALL lbc_lnk( zvi_v, 'V', -1. ) ! Lateral boundary conditions 97 89 IF( lk_lim2_vp ) THEN ! VP rheology : B-grid sea-ice dynamics (I-point ice velocity) 90 zvbord = 1._wp + ( 1._wp - bound ) ! zvbord=2 no-slip, =0 free slip boundary conditions 91 DO jj = 1, jpjm1 92 DO ji = 1, jpim1 ! NO vector opt. 93 zui_u(ji,jj) = ( u_ice(ji+1,jj) + u_ice(ji+1,jj+1) ) / ( MAX( tmu(ji+1,jj)+tmu(ji+1,jj+1), zvbord ) ) 94 zvi_v(ji,jj) = ( v_ice(ji,jj+1) + v_ice(ji+1,jj+1) ) / ( MAX( tmu(ji,jj+1)+tmu(ji+1,jj+1), zvbord ) ) 95 END DO 96 END DO 97 CALL lbc_lnk( zui_u, 'U', -1. ) ; CALL lbc_lnk( zvi_v, 'V', -1. ) ! Lateral boundary conditions 98 ! 99 ELSE ! EVP rheology : C-grid sea-ice dynamics (u- & v-points ice velocity) 100 zui_u(:,:) = u_ice(:,:) ! EVP rheology: ice (u,v) at u- and v-points 101 zvi_v(:,:) = v_ice(:,:) 102 ENDIF 98 103 99 104 ! CFL test for stability 100 105 ! ---------------------- 101 zcfl = 0. e0106 zcfl = 0._wp 102 107 zcfl = MAX( zcfl, MAXVAL( ABS( zui_u(1:jpim1, : ) ) * rdt_ice / e1u(1:jpim1, : ) ) ) 103 108 zcfl = MAX( zcfl, MAXVAL( ABS( zvi_v( : ,1:jpjm1) ) * rdt_ice / e2v( : ,1:jpjm1) ) ) … … 109 114 ! content of properties 110 115 ! --------------------- 111 zs0sn (:,:) = hsnm(:,:) * area(:,:)! Snow volume.112 zs0ice(:,:) = hicm(:,:) * area(:,:)! Ice volume.116 zs0sn (:,:) = hsnm(:,:) * area (:,:) ! Snow volume. 117 zs0ice(:,:) = hicm(:,:) * area (:,:) ! Ice volume. 113 118 zs0a (:,:) = ( 1.0 - frld(:,:) ) * area (:,:) ! Surface covered by ice. 114 119 zs0c0 (:,:) = tbif(:,:,1) / rt0_snow * zs0sn (:,:) ! Heat content of the snow layer. … … 188 193 ! DO jj = 1, jpjm1 ! NB: has not to be defined on jpj line and jpi row 189 194 ! DO ji = 1 , fs_jpim1 ! vector opt. 190 ! IF( MIN( zs0a(ji,jj) , zs0a(ji+1,jj) ) == 0.e0 ) pahu(ji,jj) = 0. e0191 ! IF( MIN( zs0a(ji,jj) , zs0a(ji,jj+1) ) == 0.e0 ) pahv(ji,jj) = 0. e0195 ! IF( MIN( zs0a(ji,jj) , zs0a(ji+1,jj) ) == 0.e0 ) pahu(ji,jj) = 0._wp 196 ! IF( MIN( zs0a(ji,jj) , zs0a(ji,jj+1) ) == 0.e0 ) pahv(ji,jj) = 0._wp 192 197 ! END DO 193 198 ! END DO
Note: See TracChangeset
for help on using the changeset viewer.