Changeset 108 for trunk/libf/dyn3d/inidissip.F
- Timestamp:
- Apr 12, 2011, 11:16:02 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/libf/dyn3d/inidissip.F
r1 r108 31 31 INTEGER l,ij,idum,ii 32 32 REAL tetamin 33 REAL pseudoz33 REAL Pup 34 34 35 35 REAL ran1 … … 177 177 c -------------------------------------------------- 178 178 179 if (ok_strato .and. llm==39) then 180 do l=1,llm 181 pseudoz=8.*log(preff/presnivs(l)) 182 zvert(l)=1+ 183 s (tanh((pseudoz-dissip_zref)/dissip_deltaz)+1.)/2. 184 s *(dissip_factz-1.) 185 enddo 186 else 187 DO l=1,llm 188 zvert(l)=1. 189 ENDDO 190 fact=2. 191 DO l = 1, llm 192 zz = 1. - preff/presnivs(l) 193 zvert(l)= fact -( fact-1.)/( 1.+zz*zz ) 194 ENDDO 179 c First step: going from 1 to dissip_fac_mid (in gcm.def) 180 c============ 181 DO l=1,llm 182 zz = 1. - preff/presnivs(l) 183 zvert(l)= dissip_fac_mid -( dissip_fac_mid-1.)/( 1.+zz*zz ) 184 ENDDO 185 186 write(*,*) 'Dissipation : ' 187 write(*,*) 'Multiplication de la dissipation en altitude :', 188 write(*,*) ' dissip_fac_mid =', dissip_fac_mid 189 190 c Second step if ok_strato: from dissip_fac_mid to dissip_fac_up (in gcm.def) 191 c========================== 192 c Utilisation de la fonction tangente hyperbolique pour augmenter 193 c arbitrairement la dissipation et donc la stabilite du modele a 194 c partir d'une certaine altitude. 195 196 c Le facteur multiplicatif de basse atmosphere etant deja pris 197 c en compte, il faut diviser le facteur multiplicatif de haute 198 c atmosphere par celui-ci. 199 200 if (ok_strato) then 201 202 Pup = dissip_pupstart*exp(-0.5*dissip_deltaz/dissip_hdelta) 203 do l=1,llm 204 zvert(l)= zvert(l)*(1.0+( (dissip_fac_up/dissip_fac_mid-1) 205 & *(1-(0.5*(1+tanh(-6./dissip_deltaz* 206 & (-dissip_hdelta*log(presnivs(l)/Pup)) )))) )) 207 enddo 208 209 write(*,*) ' dissip_fac_up =', dissip_fac_up 210 write(*,*) 'Transition mid /up: Pupstart,delta =', 211 & dissip_pupstart,'Pa', dissip_deltaz , '(km)' 212 195 213 endif 196 214
Note: See TracChangeset
for help on using the changeset viewer.