Changeset 3982 for branches/2013/dev_r3406_CNRS_LIM3
- Timestamp:
- 2013-07-18T12:44:32+02:00 (11 years ago)
- Location:
- branches/2013/dev_r3406_CNRS_LIM3/NEMOGCM/NEMO/LIM_SRC_3
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_r3406_CNRS_LIM3/NEMOGCM/NEMO/LIM_SRC_3/limsbc.F90
r3977 r3982 109 109 INTEGER :: ifvt, i1mfr, idfr ! some switches 110 110 INTEGER :: iflt, ial, iadv, ifral, ifrdv 111 REAL(wp) :: zinda, z indb, zfons, zpme ! local scalars111 REAL(wp) :: zinda, zfons, zpme ! local scalars 112 112 REAL(wp) :: zfmm ! IOVINO freezing minus melting (F-M) 113 113 REAL(wp), POINTER, DIMENSION(:,:) :: zfcm1 , zfcm2 ! solar/non solar heat fluxes 114 114 REAL(wp), POINTER, DIMENSION(:,:,:) :: zalb, zalbp ! 2D/3D workspace 115 REAL(wp) :: zzfcm1, zfscmbq ! clem: for light penetration 115 116 !!--------------------------------------------------------------------- 116 117 … … 127 128 DO ji = 1, jpi 128 129 zinda = 1.0 - MAX( rzero , SIGN( rone , - ( 1.0 - pfrld(ji,jj) ) ) ) 129 zindb = 1.0 - MAX( rzero , SIGN( rone , - iatte(ji,jj) ) )130 130 ifvt = zinda * MAX( rzero , SIGN( rone, - phicif(ji,jj) ) ) !subscripts are bad here 131 131 i1mfr = 1.0 - MAX( rzero , SIGN( rone , - at_i(ji,jj) ) ) … … 151 151 ! computation the solar flux at ocean surface 152 152 zfcm1(ji,jj) = pfrld(ji,jj) * qsr(ji,jj) + & 153 & zindb * ( 1. - pfrld(ji,jj) ) * fstric(ji,jj) / MAX( iatte(ji,jj), epsi20)153 & ( 1. - pfrld(ji,jj) ) * fstric(ji,jj) / ( 1.0 - zinda + zinda * iatte(ji,jj) ) 154 154 ! fstric Solar flux transmitted trough the ice 155 155 ! qsr Net short wave heat flux on free ocean 156 156 ! new line 157 fscmbq(ji,jj) = zindb * ( 1.0 - pfrld(ji,jj) ) * fstric(ji,jj) / MAX( iatte(ji,jj), epsi20 ) 157 fscmbq(ji,jj) = ( 1.0 - pfrld(ji,jj) ) * fstric(ji,jj) / ( 1.0 - zinda + zinda * iatte(ji,jj) ) 158 159 ! solar flux and fscmbq with light penetration (clem) 160 zzfcm1 = pfrld(ji,jj) * qsr(ji,jj) * oatte(ji,jj) + ( 1. - pfrld(ji,jj) ) * fstric(ji,jj) 161 zfscmbq = ( 1.0 - pfrld(ji,jj) ) * fstric(ji,jj) 158 162 159 163 ! computation the non solar heat flux at ocean surface 160 zfcm2(ji,jj) = - zfcm1(ji,jj) & 161 & + iflt * ( fscmbq(ji,jj) ) & ! total abl -> fscmbq is given to the ocean 162 ! fscmbq and ffltbif are obsolete 163 ! & + iflt * ffltbif(ji,jj) !!! only if one category is used 164 zfcm2(ji,jj) = - zzfcm1 & 165 & + iflt * zfscmbq & ! total abl -> fscmbq is given to the ocean 164 166 & + ifral * ( ial * qcmif(ji,jj) + (1 - ial) * qldif(ji,jj) ) * r1_rdtice & 165 167 & + ifrdv * ( qfvbq(ji,jj) + qdtcn(ji,jj) ) * r1_rdtice & -
branches/2013/dev_r3406_CNRS_LIM3/NEMOGCM/NEMO/LIM_SRC_3/limthd.F90
r3979 r3982 185 185 zinda = tms(ji,jj) * (1.0 - MAX( zzero , SIGN( zone , - at_i(ji,jj) ) ) ) 186 186 ! clem: set up ocean and ice attenuation to 1 (i.e. no attenuation) when there is no ice (zinda = 0) 187 iatte(ji,jj) = (1.0 - zinda ) + zinda * iatte(ji,jj)188 oatte(ji,jj) = (1.0 - zinda ) + zinda * oatte(ji,jj)187 !iatte(ji,jj) = (1.0 - zinda ) + zinda * iatte(ji,jj) 188 !oatte(ji,jj) = (1.0 - zinda ) + zinda * oatte(ji,jj) 189 189 ! ! solar irradiance transmission at the mixed layer bottom and used in the lead heat budget 190 190 ! ! practically no "direct lateral ablation"
Note: See TracChangeset
for help on using the changeset viewer.