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 12402 for NEMO/branches/UKMO/NEMO_4.0.1_fix_cpl/src/OCE/SBC/sbccpl.F90 – NEMO

Ignore:
Timestamp:
2020-02-18T16:53:58+01:00 (4 years ago)
Author:
dancopsey
Message:

Add melt pond lid code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/UKMO/NEMO_4.0.1_fix_cpl/src/OCE/SBC/sbccpl.F90

    r12388 r12402  
    21222122      INTEGER, INTENT(in) ::   kt 
    21232123      ! 
     2124      REAL(wp), PARAMETER :: pnd_lid_max = 0.015                  !  pond lid thickness above which the ponds disappear from the albedo calculation 
     2125      REAL(wp), PARAMETER :: pnd_lid_min = 0.005                  !  pond lid thickness below which the full pond area is used in the albedo calculation 
     2126                                                                  ! Note: these two variables are mirrored in icealb.F90 (maybe put them in one place...) 
     2127      ! 
    21242128      INTEGER ::   ji, jj, jl   ! dummy loop indices 
    21252129      INTEGER ::   isec, info   ! local integer 
     
    21272131      REAL(wp), DIMENSION(jpi,jpj)     ::   zfr_l, ztmp1, ztmp2, zotx1, zoty1, zotz1, zitx1, zity1, zitz1 
    21282132      REAL(wp), DIMENSION(jpi,jpj,jpl) ::   ztmp3, ztmp4    
     2133      REAL(wp), DIMENSION(jpi,jpj,jpl) ::   lfrac_pnd                 ! The fraction of the meltpond exposed (not inder a frozen lid) 
     2134 
    21292135      !!---------------------------------------------------------------------- 
    21302136      ! 
     
    23412347            SELECT CASE( sn_snd_mpnd%clcat )   
    23422348            CASE( 'yes' )   
    2343                ztmp3(:,:,1:jpl) =  a_ip_frac(:,:,1:jpl) 
     2349 
     2350               ! Calculate how much meltpond is exposed (not under a frozen lid) 
     2351               lfrac_pnd(:,:,1:jpl) = 1.0 
     2352               WHERE( lh_ip(:,:,1:jpl) > pnd_lid_max ) 
     2353                    lfrac_pnd(:,:,1:jpl) = 0.0 
     2354               END WHERE 
     2355               WHERE( lh_ip(:,:,1:jpl) > pnd_lid_min .AND. lh_ip(:,:,1:jpl) <= pnd_lid_max ) 
     2356                    lfrac_pnd(:,:,1:jpl) = ( lh_ip(:,:,1:jpl) - pnd_lid_min ) / (pnd_lid_max - pnd_lid_min) 
     2357               END WHERE 
     2358 
     2359               ztmp3(:,:,1:jpl) =  a_ip_frac(:,:,1:jpl) * lfrac_pnd(:,:,1:jpl) 
    23442360               ztmp4(:,:,1:jpl) =  h_ip(:,:,1:jpl) 
     2361 
    23452362            CASE( 'no' )   
    23462363               ztmp3(:,:,:) = 0.0   
Note: See TracChangeset for help on using the changeset viewer.