Ignore:
Timestamp:
2017-05-29T16:58:42+02:00 (3 years ago)
Author:
vancop
Message:

More on melt ponds in LIM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_r6859_LIM3_meltponds/NEMOGCM/NEMO/LIM_SRC_3/limistate.F90

    r8061 r8085  
    8787      INTEGER    :: ji, jj, jk, jl             ! dummy loop indices 
    8888      REAL(wp)   :: ztmelts, zdh 
    89       INTEGER    :: i_hemis, i_fill, jl0   
    90       REAL(wp)   :: zarg, zV, zconv, zdv  
     89      INTEGER    :: i_hemis, i_fill, jl0 
     90      REAL(wp)   :: zarg, zV, zconv, zdv, z1_jpl  
    9191      REAL(wp), POINTER, DIMENSION(:,:)   :: zswitch    ! ice indicator 
    9292      REAL(wp), POINTER, DIMENSION(:,:)   :: zht_i_ini, zat_i_ini, zvt_i_ini            !data from namelist or nc file 
     
    378378         tn_ice (:,:,:) = t_su (:,:,:) 
    379379 
     380         ! MV MP 2016 
     381         ! Melt pond volume and fraction 
     382          
     383         z1_jpl =  1. / REAL(jpl) 
     384    
     385         SELECT CASE ( nn_pnd_scheme ) 
     386    
     387            CASE ( 0 )           !--- Prescribed melt ponds 
     388    
     389               DO jl = 1, jpl 
     390    
     391                  a_ip(:,:,jl) = rn_apnd * z1_jpl * zswitch(:,:) 
     392                  v_ip(:,:,jl) = 0.1 * zswitch(:,:) * a_ip(:,:,jl) 
     393    
     394               END DO 
     395    
     396            CASE ( 1, 2 )        !--- Prognostic melt ponds 
     397    
     398               DO jl = 1, jpl 
     399    
     400                  a_ip(:,:,jl) = 0.1 * zswitch(:,:) 
     401                  v_ip(:,:,jl) = 0.1 * zswitch(:,:) * a_ip(:,:,jl) 
     402    
     403               END DO 
     404    
     405         END SELECT 
     406    
     407         ! END MV MP 2016 
     408 
    380409      ELSE ! if ln_limini=false 
    381410         a_i  (:,:,:) = 0._wp 
     
    401430         END DO 
    402431 
     432         ! MV MP 2016 
     433         a_ip(:,:,:)      = 0._wp 
     434         v_ip(:,:,:)      = 0._wp 
     435         h_ip(:,:,:)      = 0._wp 
     436         a_ip_frac(:,:,:) = 0._wp 
     437         ! END MV MP 2016 
     438 
    403439      ENDIF ! ln_limini 
    404440       
     
    408444      END DO 
    409445 
    410       ! MV MP 2016 
    411  
    412       ! For now, we just assume that melt ponds are absent initially 
    413       ! We probably have to revise this and code it as for all other sea ice variables later on 
    414       ! 
    415       !-------------------------------------------------------------------- 
    416       ! X) Melt pond variables 
    417       !-------------------------------------------------------------------- 
    418       ! 
    419       !IF ( ln_pnd   ) THEN 
    420       SELECT CASE ( nn_pnd_scheme ) 
    421  
    422          z1_jpl =  1 / REAL(jpl) 
    423  
    424          CASE ( 0 )           !--- Prescribed melt ponds 
    425  
    426             DO jl = 1, jpl 
    427  
    428                a_ip(:,:,jl) = rn_apnd * z1_jpl * zswitch(:,:) 
    429                h_ip(:,:,jl) = 0.1 * zswitch(:,:) 
    430  
    431             END DO 
    432  
    433          CASE ( 1, 2 )        !--- Prognostic melt ponds 
    434  
    435             DO jl = 1, jpl 
    436  
    437                a_ip(:,:,jl) = 0.1 * zswitch(:,:) 
    438                h_ip(:,:,jl) = 0.1 * zswitch(:,:) 
    439  
    440             END DO 
    441  
    442       END SELECT 
    443  
    444       v_ip(:,:,:)      = a_ip(:,:,:)  * h_i_p(:,:,:) 
    445       a_ip_frac(:,:,:) = a_ip(:,:,:) / a_i(:,:,:) 
    446  
    447       ! END MV MP 2016 
    448  
    449446      !-------------------------------------------------------------------- 
    450447      ! 4) Global ice variables for output diagnostics                    |  
     
    491488 
    492489      ! MV MP 2016 
    493       IF ( nn_pnd_scheme > 1 ) THEN 
     490      IF ( nn_pnd_scheme >= 1 ) THEN 
    494491         sxap  (:,:,:) = 0._wp    ; sxvp  (:,:,:) = 0._wp  
    495492         syap  (:,:,:) = 0._wp    ; syvp  (:,:,:) = 0._wp  
Note: See TracChangeset for help on using the changeset viewer.