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 6121 for trunk – NEMO

Changeset 6121 for trunk


Ignore:
Timestamp:
2015-12-18T13:31:45+01:00 (8 years ago)
Author:
vancop
Message:

sbccpl.F90 ticket 1654

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90

    r5836 r6121  
    17391739                     ztmp3(:,:,1) = SUM( tn_ice * a_i, dim=3 ) / SUM( a_i, dim=3 ) 
    17401740                  ELSEWHERE 
    1741                      ztmp3(:,:,1) = rt0 ! TODO: Is freezing point a good default? (Maybe SST is better?) 
     1741                     ztmp3(:,:,1) = rt0 
    17421742                  END WHERE 
    17431743               CASE default   ;   CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_temp%clcat' ) 
     
    17701770      !                                                      ! ------------------------- ! 
    17711771      IF( ssnd(jps_albice)%laction ) THEN                         ! ice  
    1772          SELECT CASE( sn_snd_alb%cldes ) 
    1773          CASE( 'ice'          )   ; ztmp3(:,:,1:jpl) = alb_ice(:,:,1:jpl) 
    1774          CASE( 'weighted ice' )   ; ztmp3(:,:,1:jpl) = alb_ice(:,:,1:jpl) * a_i(:,:,1:jpl) 
    1775          CASE default             ; CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_alb%cldes' ) 
     1772          SELECT CASE( sn_snd_alb%cldes ) 
     1773          CASE( 'ice' ) 
     1774             SELECT CASE( sn_snd_alb%clcat ) 
     1775             CASE( 'yes' )    
     1776                ztmp3(:,:,1:jpl) = alb_ice(:,:,1:jpl) 
     1777             CASE( 'no' ) 
     1778                WHERE( SUM( a_i, dim=3 ) /= 0. ) 
     1779                   ztmp1(:,:) = SUM( alb_ice (:,:,1:jpl) * a_i(:,:,1:jpl), dim=3 ) / SUM( a_i(:,:,1:jpl), dim=3 ) 
     1780                ELSEWHERE 
     1781                   ztmp1(:,:) = albedo_oce_mix(:,:) 
     1782                END WHERE 
     1783             CASE default   ;   CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_alb%clcat' ) 
     1784             END SELECT 
     1785          CASE( 'weighted ice' )   ; 
     1786             SELECT CASE( sn_snd_alb%clcat ) 
     1787             CASE( 'yes' )    
     1788                ztmp3(:,:,1:jpl) =  alb_ice(:,:,1:jpl) * a_i(:,:,1:jpl) 
     1789             CASE( 'no' ) 
     1790                WHERE( fr_i (:,:) > 0. ) 
     1791                   ztmp1(:,:) = SUM (  alb_ice(:,:,1:jpl) * a_i(:,:,1:jpl), dim=3 ) 
     1792                ELSEWHERE 
     1793                   ztmp1(:,:) = 0. 
     1794                END WHERE 
     1795             CASE default   ;   CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_ice%clcat' ) 
     1796             END SELECT 
     1797          CASE default      ;   CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_alb%cldes' ) 
    17761798         END SELECT 
    1777          CALL cpl_snd( jps_albice, isec, ztmp3, info ) 
    1778       ENDIF 
     1799 
     1800         SELECT CASE( sn_snd_alb%clcat ) 
     1801            CASE( 'yes' )    
     1802               CALL cpl_snd( jps_albice, isec, ztmp3, info )      !-> MV this has never been checked in coupled mode 
     1803            CASE( 'no'  )    
     1804               CALL cpl_snd( jps_albice, isec, RESHAPE ( ztmp1, (/jpi,jpj,1/) ), info )  
     1805         END SELECT 
     1806      ENDIF 
     1807 
    17791808      IF( ssnd(jps_albmix)%laction ) THEN                         ! mixed ice-ocean 
    17801809         ztmp1(:,:) = albedo_oce_mix(:,:) * zfr_l(:,:) 
Note: See TracChangeset for help on using the changeset viewer.