- Timestamp:
- 2020-11-09T16:48:35+01:00 (3 years ago)
- Location:
- NEMO/branches/2020/test_12905_xios_restart
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/test_12905_xios_restart
- Property svn:externals
-
old new 3 3 ^/utils/build/mk@HEAD mk 4 4 ^/utils/tools@HEAD tools 5 ^/vendors/AGRIF/dev @HEADext/AGRIF5 ^/vendors/AGRIF/dev_r12970_AGRIF_CMEMS ext/AGRIF 6 6 ^/vendors/FCM@HEAD ext/FCM 7 7 ^/vendors/IOIPSL@HEAD ext/IOIPSL 8 8 9 9 # SETTE 10 ^/utils/CI/ r12931_sette_ticket2462@HEADsette10 ^/utils/CI/sette@13559 sette
-
- Property svn:externals
-
NEMO/branches/2020/test_12905_xios_restart/tests/BENCH/MY_SRC/usrdef_sbc.F90
r12740 r13751 99 99 REAL(wp), DIMENSION(jpi,jpj) :: z2d ! 2D workspace 100 100 INTEGER :: ji, jj 101 INTEGER :: igloi, igloj ! to be removed in the future, see comment bellow 101 102 !!--------------------------------------------------------------------- 102 103 #if defined key_si3 … … 104 105 ! 105 106 ! define unique value on each point. z2d ranging from 0.05 to -0.05 106 DO_2D_11_11 107 z2d(ji,jj) = 0.1 * ( 0.5 - REAL( nimpp + ji - 1 + ( njmpp + jj - 2 ) * jpiglo, wp ) / REAL( jpiglo * jpjglo, wp ) ) 107 ! 108 ! WARNING: to keep compatibility with the trunk that was including periodocity into the input data, 109 ! we must define z2d as bellow. 110 ! Once we decide to forget trunk compatibility, we must simply define z2d as: 111 !!$ DO_2D( 0, 0, 0, 0 ) 112 !!$ z2d(ji,jj) = 0.1 * ( 0.5 - REAL( mig0_oldcmp(ji) + (mjg0_oldcmp(jj)-1) * Ni0glo, wp ) / REAL( Ni0glo * Nj0glo, wp ) ) 113 !!$ END_2D 114 igloi = Ni0glo + 2 * COUNT( (/ jperio == 1 .OR. jperio == 4 .OR. jperio == 6 .OR. jperio == 7 /) ) 115 igloj = Nj0glo + 2 * COUNT( (/ jperio == 2 .OR. jperio == 7 /) ) + 1 * COUNT( (/ jperio >= 4 .AND. jperio <= 6 /) ) 116 DO_2D( 0, 0, 0, 0 ) 117 z2d(ji,jj) = 0.1 * ( 0.5 - REAL( mig0_oldcmp(ji) + (mjg0_oldcmp(jj)-1) * igloi, wp ) / REAL( igloi * igloj, wp ) ) 108 118 END_2D 109 utau_ice(:,:) = 0.1_wp + 110 vtau_ice(:,:) = 0.1_wp + 119 utau_ice(:,:) = 0.1_wp + z2d(:,:) 120 vtau_ice(:,:) = 0.1_wp + z2d(:,:) 111 121 112 122 CALL lbc_lnk_multi( 'usrdef_sbc', utau_ice, 'U', -1., vtau_ice, 'V', -1. ) … … 127 137 REAL(wp), DIMENSION(:,:,:), INTENT(in) :: phi ! ice thickness 128 138 !! 129 REAL(wp) :: zfr1, zfr2 ! local variables130 139 REAL(wp), DIMENSION(jpi,jpj) :: zsnw ! snw distribution after wind blowing 131 140 !!--------------------------------------------------------------------- … … 162 171 qsr_tot (:,:) = at_i_b(:,:) * qsr_oce(:,:) + SUM( a_i_b(:,:,:) * qsr_ice(:,:,:), dim=3 ) 163 172 164 ! --- shortwave radiation transmitted below the surface (W/m2, see Grenfell Maykut 77) --- ! 165 zfr1 = ( 0.18 * ( 1.0 - cldf_ice ) + 0.35 * cldf_ice ) ! transmission when hi>10cm 166 zfr2 = ( 0.82 * ( 1.0 - cldf_ice ) + 0.65 * cldf_ice ) ! zfr2 such that zfr1 + zfr2 to equal 1 167 ! 168 WHERE ( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) < 0.1_wp ) ! linear decrease from hi=0 to 10cm 169 qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * ( zfr1 + zfr2 * ( 1._wp - phi(:,:,:) * 10._wp ) ) 170 ELSEWHERE( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) >= 0.1_wp ) ! constant (zfr1) when hi>10cm 171 qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * zfr1 172 ELSEWHERE ! zero when hs>0 173 qtr_ice_top(:,:,:) = 0._wp 174 END WHERE 173 ! --- shortwave radiation transmitted thru the surface scattering layer (W/m2) --- ! 174 qtr_ice_top(:,:,:) = 0._wp 175 175 176 #endif 176 177
Note: See TracChangeset
for help on using the changeset viewer.