Ignore:
Timestamp:
2012-11-02T07:38:20+01:00 (8 years ago)
Author:
gm
Message:

Branch: dev_r3385_NOCS04_HAMF; #665. bug correction in limdia for Fram strait transport

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2012/dev_r3385_NOCS04_HAMF/NEMOGCM/NEMO/LIM_SRC_3/limdia.F90

    r3524 r3525  
    7171      !!              the temporal evolution of some key variables 
    7272      !!------------------------------------------------------------------- 
    73       INTEGER  ::   jv, ji, jj, jl   ! dummy loop indices 
    74       REAL(wp) ::   zshift_date      ! date from the minimum ice extent 
    75       REAL(wp) ::   zday, zday_min   ! current day, day of minimum extent 
    76       REAL(wp) ::   zafy, zamy       ! temporary area of fy and my ice 
     73      INTEGER  ::   jv, ji, jj, jl       ! dummy loop indices 
     74      INTEGER  ::   ii0, ii1, ij0, ij1   ! temporary integer 
     75      REAL(wp) ::   zshift_date          ! date from the minimum ice extent 
     76      REAL(wp) ::   zday, zday_min       ! current day, day of minimum extent 
     77      REAL(wp) ::   zafy, zamy           ! temporary area of fy and my ice 
    7778      REAL(wp) ::   zindb 
    78       REAL(wp), DIMENSION(jpinfmx) ::   vinfor           ! temporary working space  
     79      REAL(wp), DIMENSION(jpinfmx) ::   vinfor   ! 1D workspace  
    7980      !!------------------------------------------------------------------- 
    8081 
     
    232233      vinfor(51) = zindb*vinfor(51) / MAX(vinfor(27),epsi06) 
    233234 
    234       !! Fram Strait Export 
    235 !!gm BUG : hard coded ORCA2 case !!!   ===>>>> to be removed !!!! 
    236 !!gm       moreover, this is NOT the correct way of evaluating a ice transport ! 
    237 !!gm                 mass of snow + ice is missing and a j, j+1 is also missing 
    238 !!gm BUG in MPP case !  
    239       !! 83 = area export 
    240       !! 84 = volume export 
    241       !! Fram strait in ORCA2 = 5 points 
    242       !! export = -v_ice*e1t*ddtb*at_i or -v_ice*e1t*ddtb*at_i*h_i 
    243       jj = 136 ! C grid 
    244       vinfor(83) = 0.0 
    245       vinfor(84) = 0.0 
    246       DO ji = 134, 138 
    247          vinfor(83) = vinfor(83) - v_ice(ji,jj) * e1t(ji,jj)*at_i(ji,jj)*rdt_ice * 1.e-12_wp 
    248          vinfor(84) = vinfor(84) - v_ice(ji,jj) * e1t(ji,jj)*vt_i(ji,jj)*rdt_ice * 1.e-12_wp 
    249       END DO 
    250 !!gm en BUG 
     235      IF( cp_cfg == "orca" ) THEN   !* ORCA configuration : Fram Strait Export 
     236         SELECT CASE ( jp_cfg ) 
     237         CASE ( 2 )                          ! ORCA_R2 
     238            ij0 = 136   ;   ij1 = 136              ! Fram strait : 83 = area export 
     239            ii0 = 134   ;   ii1 = 138              !               84 = volume export 
     240            DO jj = mj0(ij0):mj1(ij1) 
     241               DO ji = mi0(ii0):mi1(ii1) 
     242                  vinfor(83) = vinfor(83) - v_ice(ji,jj) * e1t(ji,jj)*at_i(ji,jj)*rdt_ice * 1.e-12_wp 
     243                  vinfor(84) = vinfor(84) - v_ice(ji,jj) * e1t(ji,jj)*vt_i(ji,jj)*rdt_ice * 1.e-12_wp 
     244               END DO 
     245            END DO 
     246!!gm   just above, this is NOT the correct way of evaluating the transport ! 
     247!!gm        mass of snow is missing and v_ice should be the mean between jj and jj+1 
     248!!gm   Other ORCA configurations should be added 
     249      ENDIF 
    251250 
    252251      !!------------------------------------------------------------------- 
Note: See TracChangeset for help on using the changeset viewer.