Changeset 834 for trunk/NEMO/LIM_SRC_3/limdyn.F90
- Timestamp:
- 2008-03-07T18:11:35+01:00 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/LIM_SRC_3/limdyn.F90
r825 r834 6 6 #if defined key_lim3 7 7 !!---------------------------------------------------------------------- 8 !! 'key_lim3' : LIMsea-ice model8 !! 'key_lim3' : LIM3 sea-ice model 9 9 !!---------------------------------------------------------------------- 10 10 !! lim_dyn : computes ice velocities … … 36 36 37 37 !!---------------------------------------------------------------------- 38 !! LIM 2.0, UCL-LOCEAN-IPSL (2005)38 !! LIM 3.0, UCL-ASTR-LOCEAN-IPSL (2008) 39 39 !! $Header: /home/opalod/NEMOCVSROOT/NEMO/LIM_SRC/limdyn.F90,v 1.5 2005/03/27 18:34:41 opalod Exp $ 40 40 !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt … … 58 58 !! 1.0 ! 01-04 (LIM) Original code 59 59 !! 2.0 ! 02-08 (C. Ethe, G. Madec) F90, mpp 60 !! 3.0 ! 2007-03 (M.A. Morales Maqueda, S. Bouillon, M. Vancoppenolle) LIM3, EVP, C-grid 60 !! 3.0 ! 2007-03 (M.A. Morales Maqueda, S. Bouillon, M. Vancoppenolle) 61 !! LIM3, EVP, C-grid 61 62 !!------------------------------------------------------------------------------------ 62 63 !! * Local variables 63 INTEGER :: ji, jj , jl! dummy loop indices64 INTEGER :: ji, jj ! dummy loop indices 64 65 INTEGER :: i_j1, i_jpj ! Starting/ending j-indices for rheology 65 ! nemo modif 66 ! jhemis ! jhemis = 1 (NH) ; jhemis = -1 (SH) 66 67 67 REAL(wp) :: & 68 68 ztairx, ztairy, & ! tempory scalars … … 70 70 ztglx , ztgly , & 71 71 zt11, zt12, zt21, zt22 , & 72 zustm, zsfrld, zsfrldm4,&72 zustm, & 73 73 zsfrldmx2, zsfrldmy2, & 74 74 zu_ice, zv_ice, ztair2 75 ! nemo modif 75 76 76 REAL(wp),DIMENSION(jpj) :: & 77 77 zind, & ! i-averaged indicator of sea-ice … … 86 86 IF ( ln_limdyn ) THEN 87 87 88 ! Mean ice and snow thicknesses. 89 88 ! ocean velocity 90 89 u_oce(:,:) = u_io(:,:) * tmu(:,:) 91 90 v_oce(:,:) = v_io(:,:) * tmv(:,:) … … 94 93 old_v_ice(:,:) = v_ice(:,:) * tmv(:,:) 95 94 96 ! !Rheology (ice dynamics)97 ! !========95 ! Rheology (ice dynamics) 96 ! ======== 98 97 99 98 ! Define the j-limits where ice rheology is computed … … 105 104 IF(ln_ctl) CALL prt_ctl_info( 'lim_dyn : i_j1 = ', ivar1=i_j1, clinfo2=' ij_jpj = ', ivar2=i_jpj ) 106 105 CALL lim_rhg( i_j1, i_jpj ) 107 108 106 ELSE ! optimization of the computational area 109 107 … … 124 122 i_j1 = MAX( 1, i_j1-1 ) 125 123 IF(ln_ctl) CALL prt_ctl_info( 'lim_dyn : NH i_j1 = ', ivar1=i_j1, clinfo2=' ij_jpj = ', ivar2=i_jpj ) 126 127 124 CALL lim_rhg( i_j1, i_jpj ) 128 125 … … 169 166 ENDIF 170 167 171 ! !Ice-Ocean stress172 ! !================168 ! Ice-Ocean stress 169 ! ================ 173 170 DO jj = 2, jpjm1 174 ! jhemis = SIGN(1, jj - jeq )175 ! zsang = REAL(jhemis) * sangvg176 !nemo new version modif177 171 zsang = SIGN(1.e0, gphif(1,jj-1) ) * sangvg 178 172 … … 193 187 ztairy = ( 2.0 - at_i(ji,jj) - at_i(ji,jj+1) ) * gtauy(ji,jj) / cai * cao 194 188 195 ! ! test on oscillations196 ! ztairx = 0.0197 ! ztairy = 0.0198 199 189 zsfrldmx2 = at_i(ji,jj) + at_i(ji+1,jj) 200 190 zsfrldmy2 = at_i(ji,jj) + at_i(ji,jj+1) … … 208 198 ztglx = zsfrldmx2 * rhoco * zmod * ( cangvg * zu_ice - zsang * zv_ice ) 209 199 ztgly = zsfrldmy2 * rhoco * zmod * ( cangvg * zv_ice + zsang * zu_ice ) 210 211 ! ! test on oscillations 212 ! ztglx = 0.0 213 ! ztgly = 0.0 200 ! 201 ! ! IMPORTANT 202 ! ! these lignes are bound to prevent numerical oscillations 203 ! ! in the ice-ocean stress 204 ! ! They are physically ill-based. There is a cleaner solution 205 ! ! to try (remember discussion in Paris Gurvan) 206 ! 214 207 ztglx = ztglx * exp( - zmod / 0.5 ) 215 208 ztgly = ztglx * exp( - zmod / 0.5 ) … … 281 274 CALL prt_ctl(tab2d_1=at_i , clinfo1=' lim_dyn : at_i :') 282 275 ENDIF 283 284 !OPA9_DYN LIM2.1 2005285 !END OPA9_DYN LIM2.1 2005286 276 287 277 END SUBROUTINE lim_dyn
Note: See TracChangeset
for help on using the changeset viewer.