- Timestamp:
- 2018-10-29T11:44:36+01:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_AMM15_package/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90
r10246 r10248 1029 1029 ssu_m(:,:) = frcv(jpr_ocx1)%z3(:,:,1) 1030 1030 ub (:,:,1) = ssu_m(:,:) ! will be used in sbcice_lim in the call of lim_sbc_tau 1031 un (:,:,1) = ssu_m(:,:) ! will be used in sbc_cpl_snd if atmosphere coupling 1031 1032 CALL iom_put( 'ssu_m', ssu_m ) 1032 1033 ENDIF … … 1034 1035 ssv_m(:,:) = frcv(jpr_ocy1)%z3(:,:,1) 1035 1036 vb (:,:,1) = ssv_m(:,:) ! will be used in sbcice_lim in the call of lim_sbc_tau 1037 vn (:,:,1) = ssv_m(:,:) ! will be used in sbc_cpl_snd if atmosphere coupling 1036 1038 CALL iom_put( 'ssv_m', ssv_m ) 1037 1039 ENDIF … … 1743 1745 ztmp3(:,:,1) = SUM( tn_ice * a_i, dim=3 ) / SUM( a_i, dim=3 ) 1744 1746 ELSEWHERE 1745 ztmp3(:,:,1) = rt0 ! TODO: Is freezing point a good default? (Maybe SST is better?)1747 ztmp3(:,:,1) = rt0 1746 1748 END WHERE 1747 1749 CASE default ; CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_temp%clcat' ) … … 1774 1776 ! ! ------------------------- ! 1775 1777 IF( ssnd(jps_albice)%laction ) THEN ! ice 1776 SELECT CASE( sn_snd_alb%cldes ) 1777 CASE( 'ice' ) ; ztmp3(:,:,1:jpl) = alb_ice(:,:,1:jpl) 1778 CASE( 'weighted ice' ) ; ztmp3(:,:,1:jpl) = alb_ice(:,:,1:jpl) * a_i(:,:,1:jpl) 1779 CASE default ; CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_alb%cldes' ) 1778 SELECT CASE( sn_snd_alb%cldes ) 1779 CASE( 'ice' ) 1780 SELECT CASE( sn_snd_alb%clcat ) 1781 CASE( 'yes' ) 1782 ztmp3(:,:,1:jpl) = alb_ice(:,:,1:jpl) 1783 CASE( 'no' ) 1784 WHERE( SUM( a_i, dim=3 ) /= 0. ) 1785 ztmp1(:,:) = SUM( alb_ice (:,:,1:jpl) * a_i(:,:,1:jpl), dim=3 ) / SUM( a_i(:,:,1:jpl), dim=3 ) 1786 ELSEWHERE 1787 ztmp1(:,:) = albedo_oce_mix(:,:) 1788 END WHERE 1789 CASE default ; CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_alb%clcat' ) 1790 END SELECT 1791 CASE( 'weighted ice' ) ; 1792 SELECT CASE( sn_snd_alb%clcat ) 1793 CASE( 'yes' ) 1794 ztmp3(:,:,1:jpl) = alb_ice(:,:,1:jpl) * a_i(:,:,1:jpl) 1795 CASE( 'no' ) 1796 WHERE( fr_i (:,:) > 0. ) 1797 ztmp1(:,:) = SUM ( alb_ice(:,:,1:jpl) * a_i(:,:,1:jpl), dim=3 ) 1798 ELSEWHERE 1799 ztmp1(:,:) = 0. 1800 END WHERE 1801 CASE default ; CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_ice%clcat' ) 1802 END SELECT 1803 CASE default ; CALL ctl_stop( 'sbc_cpl_snd: wrong definition of sn_snd_alb%cldes' ) 1780 1804 END SELECT 1781 CALL cpl_snd( jps_albice, isec, ztmp3, info ) 1782 ENDIF 1805 1806 SELECT CASE( sn_snd_alb%clcat ) 1807 CASE( 'yes' ) 1808 CALL cpl_snd( jps_albice, isec, ztmp3, info ) !-> MV this has never been checked in coupled mode 1809 CASE( 'no' ) 1810 CALL cpl_snd( jps_albice, isec, RESHAPE ( ztmp1, (/jpi,jpj,1/) ), info ) 1811 END SELECT 1812 ENDIF 1813 1783 1814 IF( ssnd(jps_albmix)%laction ) THEN ! mixed ice-ocean 1784 1815 ztmp1(:,:) = albedo_oce_mix(:,:) * zfr_l(:,:)
Note: See TracChangeset
for help on using the changeset viewer.