New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 834 for trunk/NEMO/LIM_SRC_3/limdia.F90 – NEMO

Ignore:
Timestamp:
2008-03-07T18:11:35+01:00 (16 years ago)
Author:
ctlod
Message:

Clean comments and useless lines, see ticket:#72

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/LIM_SRC_3/limdia.F90

    r825 r834  
    1010#if defined key_lim3 
    1111   !!---------------------------------------------------------------------- 
    12    !!   'key_lim3' :                                   LIM sea-ice model 
     12   !!   'key_lim3' :                                   LIM3 sea-ice model 
    1313   !!---------------------------------------------------------------------- 
    1414   !!   lim_dia      : computation of the time evolution of keys var. 
     
    9595      !! * Local variables 
    9696       INTEGER  ::   jv,ji,jj,jl ! dummy loop indices 
    97        INTEGER  ::   nv          ! indice of variable  
    9897       REAL(wp), DIMENSION(jpinfmx) ::  &  
    9998          vinfor           ! temporary working space  
     
    138137                vinfor(7)  = vinfor(7)  + vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !ice volume 
    139138                vinfor(9)  = vinfor(9)  + vt_s(ji,jj)*aire(ji,jj) / 1.0e12 !snow volume 
    140 !               vinfor(11) = vinfor(11) + vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !undef ice volume 
    141 !               vinfor(13) = vinfor(13) + vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !def ice volume 
    142139                vinfor(15) = vinfor(15) + ot_i(ji,jj) *vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !mean age 
    143140                vinfor(29) = vinfor(29) + smt_i(ji,jj)*vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !mean salinity 
     141                ! the computation of this diagnostic is not reliable 
    144142                vinfor(31) = vinfor(31) + vt_i(ji,jj)*( u_ice(ji,jj)*u_ice(ji,jj) + &  
    145                                                         v_ice(ji,jj)*v_ice(ji,jj) )*aire(ji,jj)/1.0e12 !ice vel 
     143                                                        v_ice(ji,jj)*v_ice(ji,jj) )*aire(ji,jj)/1.0e12  
    146144                vinfor(53) = vinfor(53) + fsalt(ji,jj)*aire(ji,jj) / 1.0e12 !salt flux 
    147145                vinfor(55) = vinfor(55) + fsbri(ji,jj)*aire(ji,jj) / 1.0e12 !brine drainage flux 
    148146                vinfor(57) = vinfor(57) + fseqv(ji,jj)*aire(ji,jj) / 1.0e12 !equivalent salt flux 
    149 !slightly modified this 
    150147                vinfor(59) = vinfor(59) + sst_io(ji,jj)*at_i(ji,jj)*aire(ji,jj) / 1.0e12  !SST 
    151148                vinfor(61) = vinfor(61) + sss_io(ji,jj)*at_i(ji,jj)*aire(ji,jj) / 1.0e12  !SSS 
     
    157154                vinfor(75) = vinfor(75) + v_i(ji,jj,4)*aire(ji,jj) / 1.0e12 !ice volume 
    158155                vinfor(77) = vinfor(77) + v_i(ji,jj,5)*aire(ji,jj) / 1.0e12 !ice volume 
    159 !               vinfor(79) = vinfor(79) + v_i(ji,jj,6)*aire(ji,jj) / 1.0e12 !ice volume 
    160156                vinfor(79) = 0.0 
    161157                vinfor(81) = vinfor(81) + fmass(ji,jj)*aire(ji,jj) / 1.0e12 ! mass flux 
    162 !               vinfor(83) = vinfor(83) + ht_i(ji,jj,5)*aire(ji,jj) / 1.0e12 ! mass flux 
    163158             ENDIF 
    164159          END DO 
     
    173168       END DO 
    174169 
    175 !      DO jl = ice_cat_bounds(2,1), ice_cat_bounds(3,2) 
    176 !         DO jj = njeq, jpjm1 
    177 !            DO ji = fs_2, fs_jpim1   ! vector opt. 
    178 !               vinfor(13) = vinfor(13) + v_i(ji,jj,jl)*aire(ji,jj) / 1.0e12 !def ice volume (inc. rafted ice) 
    179 !            END DO 
    180 !         END DO 
    181 !      END DO 
    182170       vinfor(13) = 0.0 
    183171 
    184172       vinfor(15) = vinfor(15) / vinfor(7) ! these have to be divided by total ice volume to have the 
    185173       vinfor(29) = vinfor(29) / vinfor(7) ! right value 
    186 !      vinfor(31) = vinfor(31) / vinfor(7) 
    187174       vinfor(31) = SQRT( vinfor(31) / MAX( vinfor(7) , epsi06 ) ) 
    188175       vinfor(67) = vinfor(67) / vinfor(7) 
     
    192179       vinfor(57) = vinfor(57) / vinfor(5) !  
    193180       vinfor(79) = vinfor(79) / vinfor(5) ! 
    194 !      vinfor(83) = vinfor(83) / vinfor(5) ! 
    195181 
    196182       zindb      = 1.0 - MAX(0.0,SIGN(1.0,-vinfor(3))) ! 
     
    273259       !! Fram strait in ORCA2 = 5 points 
    274260       !! export = -v_ice*e1t*ddtb*at_i or -v_ice*e1t*ddtb*at_i*h_i 
    275 !      jj = 137 
    276261       jj = 136 ! C grid 
    277262       vinfor(83) = 0.0 
    278263       vinfor(84) = 0.0 
    279 !      WRITE(numout,*) ' Fram Strait Export ' 
    280264       DO ji = 134, 138 
    281 !         vinfor(83) = vinfor(83) - ( v_ice(ji,jj) + v_ice(ji+1,jj) ) / 2.0 * &  
    282 !                                     e1t(ji,jj)*at_i(ji,jj)*rdt_ice / 1.0e12 
    283 !         vinfor(84) = vinfor(84) - ( v_ice(ji,jj) + v_ice(ji+1,jj) ) / 2.0 * &  
    284 !                                     e1t(ji,jj)*vt_i(ji,jj)*rdt_ice / 1.0e12 
    285 ! C grid 
    286265          vinfor(83) = vinfor(83) - v_ice(ji,jj) * &  
    287266                                      e1t(ji,jj)*at_i(ji,jj)*rdt_ice / 1.0e12 
    288267          vinfor(84) = vinfor(84) - v_ice(ji,jj) * &  
    289268                                      e1t(ji,jj)*vt_i(ji,jj)*rdt_ice / 1.0e12 
    290 !         WRITE(numout,*) 
    291 !         WRITE(numout,*) ' ji , jj : ', ji, jj 
    292 !         WRITE(numout,*) ' v_ice ji  -jj  : ', v_ice(ji,jj) 
    293 !         WRITE(numout,*) ' v_ice ji+1-jj  : ', v_ice(ji+1,jj) 
    294 !         WRITE(numout,*) ' e1t(ji,jj) : ', e1t(ji,jj) 
    295 !         WRITE(numout,*) ' at_i(ji,jj) : ', at_i(ji,jj) 
    296 !         WRITE(numout,*) ' rdt_ice  : ', rdt_ice 
    297 !         WRITE(numout,*) ' area export : ', vinfor(83) 
    298 !         WRITE(numout,*) ' vol  export : ', vinfor(84) 
    299269       END DO 
    300270 
     
    311281                vinfor(8)  = vinfor(8)  + vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !ice volume 
    312282                vinfor(10) = vinfor(10) + vt_s(ji,jj)*aire(ji,jj) / 1.0e12 !snow volume 
    313 !               vinfor(12) = vinfor(12) + vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !undef ice volume 
    314 !               vinfor(14) = vinfor(14) + vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !def ice volume 
    315283                vinfor(16) = vinfor(16) + ot_i(ji,jj)*vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !mean age 
    316284                vinfor(30) = vinfor(30) + smt_i(ji,jj)*vt_i(ji,jj)*aire(ji,jj) / 1.0e12 !mean salinity 
    317 !               vinfor(32) = vinfor(32) + u_ice(ji,jj)*u_ice(ji,jj) + v_ice(ji,jj)*v_ice(ji,jj) !ice vel 
     285                ! this diagnostic is not well computed (weighted by vol instead 
     286                ! of area) 
    318287                vinfor(32) = vinfor(32) + vt_i(ji,jj)*( u_ice(ji,jj)*u_ice(ji,jj) + &  
    319288                                                        v_ice(ji,jj)*v_ice(ji,jj) )*aire(ji,jj)/1.0e12 !ice vel 
     
    324293                vinfor(62) = vinfor(62) + sss_io(ji,jj)*at_i(ji,jj)*aire(ji,jj) / 1.0e12  !SSS 
    325294                vinfor(66) = vinfor(66) + et_s(ji,jj)/1.0e9*aire(ji,jj) / 1.0e12 ! snow temperature 
    326                 vinfor(68) = vinfor(68) + et_i(ji,jj)/1.0e9*aire(ji,jj) / 1.0e12       ! ice heat content 
     295                vinfor(68) = vinfor(68) + et_i(ji,jj)/1.0e9*aire(ji,jj) / 1.0e12 ! ice enthalpy 
    327296                vinfor(70) = vinfor(70) + v_i(ji,jj,1)*aire(ji,jj) / 1.0e12 !ice volume 
    328297                vinfor(72) = vinfor(72) + v_i(ji,jj,2)*aire(ji,jj) / 1.0e12 !ice volume 
     
    330299                vinfor(76) = vinfor(76) + v_i(ji,jj,4)*aire(ji,jj) / 1.0e12 !ice volume 
    331300                vinfor(78) = vinfor(78) + v_i(ji,jj,5)*aire(ji,jj) / 1.0e12 !ice volume 
    332 !               vinfor(80) = vinfor(80) + v_i(ji,jj,6)*aire(ji,jj) / 1.0e12 ! mass flux 
    333301                vinfor(80) = 0.0 
    334302                vinfor(82) = vinfor(82) + fmass(ji,jj)*aire(ji,jj) / 1.0e12 ! mass flux 
    335 !               vinfor(84) = vinfor(84) + ht_i(ji,jj,5)*aire(ji,jj) / 1.0e12 ! mass flux 
    336303             ENDIF 
    337304          END DO 
     
    346313       END DO 
    347314 
    348 !      DO jl = ice_cat_bounds(2,1), ice_cat_bounds(3,2) 
    349 !         DO jj = 2, njeqm1 
    350 !            DO ji = fs_2, fs_jpim1   ! vector opt. 
    351 !               vinfor(14) = vinfor(14) + v_i(ji,jj,jl)*aire(ji,jj) / 1.0e12 !def ice volume (inc. rafted ice) 
    352 !            END DO 
    353 !         END DO 
    354 !      END DO 
    355315       vinfor(14) = 0.0 
    356316 
    357317       zindb      = 1.0 - MAX(0.0,SIGN(1.0,-vinfor(8)))  
    358        vinfor(16) = zindb * vinfor(16) / MAX(vinfor(8),epsi06) ! these have to be divided by total ice volume to have the 
    359        vinfor(30) = zindb * vinfor(30) / MAX(vinfor(8),epsi06) ! right value 
     318       vinfor(16) = zindb * vinfor(16) / MAX(vinfor(8),epsi06) ! these have to be divided by ice vol 
     319       vinfor(30) = zindb * vinfor(30) / MAX(vinfor(8),epsi06) !  
    360320       vinfor(32) = zindb * SQRT( vinfor(32) / MAX( vinfor(8) , epsi06 ) ) 
    361        vinfor(68) = zindb * vinfor(68) / MAX(vinfor(8),epsi06) ! right value 
     321       vinfor(68) = zindb * vinfor(68) / MAX(vinfor(8),epsi06) !  
    362322 
    363323       zindb      = 1.0 - MAX(0.0,SIGN(1.0,-vinfor(6)))  
    364        vinfor(54) = zindb * vinfor(54) / MAX(vinfor(6),epsi06) ! these have to be divided by total ice extent to have the 
    365        vinfor(56) = zindb * vinfor(56) / MAX(vinfor(6),epsi06) ! right value  
     324       vinfor(54) = zindb * vinfor(54) / MAX(vinfor(6),epsi06) ! these have to be divided by ice extt 
     325       vinfor(56) = zindb * vinfor(56) / MAX(vinfor(6),epsi06) !  
    366326       vinfor(58) = zindb * vinfor(58) / MAX(vinfor(6),epsi06) !  
    367327       vinfor(80) = zindb * vinfor(80) / MAX(vinfor(6),epsi06) ! 
     
    408368       END DO 
    409369       zindb      = 1.0 - MAX(0.0,SIGN(1.0,-vinfor(4))) ! 
    410        vinfor(64) = zindb * vinfor(64) / MAX(vinfor(4),epsi06) ! these have to be divided by total ice extent to have the 
     370       vinfor(64) = zindb * vinfor(64) / MAX(vinfor(4),epsi06) ! divide by ice extt 
    411371       !! 2.2) Diagnostics dependent on age 
    412372       !!------------------------------------ 
     
    472432       !! history : 
    473433       !!  8.5  ! 03-08 (C. Ethe) original code 
     434       !!  9.0  ! 08-03 (M. Vancoppenolle) LIM3 
    474435       !!------------------------------------------------------------------- 
    475436       NAMELIST/namicedia/fmtinf, nfrinf, ninfo, ntmoy 
     
    479440          &          ndeb ,     & 
    480441          &          irecl 
    481  
    482        INTEGER  ::   nv            ! indice of variable  
    483442 
    484443       REAL(wp) ::   zxx0, zxx1    ! temporary scalars 
Note: See TracChangeset for help on using the changeset viewer.