Changeset 276 for trunk/LMDZ.MARS/libf
- Timestamp:
- Sep 1, 2011, 3:11:19 PM (13 years ago)
- Location:
- trunk/LMDZ.MARS/libf/phymars
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/phymars/calltherm_mars.F90
r268 r276 87 87 ! =================== 88 88 89 r_aspect_thermals=2.! ultimately conrols the amount of mass going through the thermals89 ! r_aspect_thermals ! ultimately conrols the amount of mass going through the thermals 90 90 ! decreasing it increases the thermals effect. Tests at gcm resolution 91 91 ! shows that too low values destabilize the model 92 92 ! when changing this value, one should check that the surface layer model 93 93 ! outputs the correct Cd*u and Ch*u through changing the gustiness coefficient beta 94 95 96 #ifdef MESOSCALE 97 nsplit_thermals=2 98 r_aspect_thermals=0.7 99 #else 94 100 nsplit_thermals=40 101 r_aspect_thermals=2. 102 #endif 103 95 104 call getin("nsplit_thermals",nsplit_thermals) 96 105 -
trunk/LMDZ.MARS/libf/phymars/vdif_cd.F
r268 r276 61 61 c Local(2): 62 62 c --------- 63 REAL z1,zcd0 63 64 64 65 REAL rib(ngrid) ! Bulk Richardson number … … 81 82 REAL ite 82 83 REAL residual 83 REAL zu2 84 REAL zu2(ngrid) 84 85 c----------------------------------------------------------------------- 85 86 c couche de surface: … … 90 91 c Original formulation : 91 92 92 !DO ig=1,ngrid93 !z1=1.E+0 + pz(ig,1)/pz0(ig)94 !zcd0=karman/log(z1)95 !zcd0=zcd0*zcd096 !pcdv(ig)=zcd097 !pcdh(ig)=zcd098 !ENDDO99 93 c DO ig=1,ngrid 94 c z1=1.E+0 + pz(ig,1)/pz0(ig) 95 c zcd0=karman/log(z1) 96 c zcd0=zcd0*zcd0 97 c pcdv(ig)=zcd0 98 c pcdh(ig)=zcd0 99 c ENDDO 100 100 101 ! print*,'old : cd,ch; ',pcdv,pcdh 101 102 … … 109 110 pz0tcomp(:) = 0.1*pz0(:) 110 111 rib(:)=0. 112 111 113 pcdv(:)=0. 112 114 pcdh(:)=0. … … 143 145 ! zu2=pu(ig,1)*pu(ig,1) + pv(ig,1)*pv(ig,1) 144 146 ! zu2=MAX(pu(ig,1)*pu(ig,1) + pv(ig,1)*pv(ig,1),wmax(ig)**2) 145 zu2= pu(ig,1)*pu(ig,1) + pv(ig,1)*pv(ig,1) + (1.*wmax(ig))**2147 zu2(ig)= pu(ig,1)*pu(ig,1) + pv(ig,1)*pv(ig,1) + (1.*wmax(ig))**2 146 148 147 149 ! we add the wmax to simulate … … 157 159 & *(((log(pz(ig,1)/pz0(ig)))**2)/(log(pz(ig,1)/pz0t))) 158 160 & *(ph(ig,1)-pts(ig)) 159 & /zu2 161 & /zu2(ig) 160 162 161 163 else … … 195 197 endif 196 198 197 reynolds(ig)=karman*sqrt(fm(ig))*sqrt(pu(ig,1)**2 + pv(ig,1)**2) 199 reynolds(ig)=karman*sqrt(fm(ig)) 200 & *sqrt(zu2(ig)) 201 c & *sqrt(pu(ig,1)**2 + pv(ig,1)**2) 198 202 & *pz0(ig)/(log(z1z0)*nu) 199 203 pz0tcomp(ig)=pz0(ig)*exp(-karman*7.3* … … 229 233 ! & 'Prandtl nb','no units', 230 234 ! & 0,prandtl) 231 ! 235 ! call WRITEDIAGFI(ngrid,'Re', 232 236 ! & 'Reynolds nb','no units', 233 237 ! & 0,reynolds) … … 236 240 ! & 2,pz0tcomp) 237 241 242 238 243 RETURN 239 244 END
Note: See TracChangeset
for help on using the changeset viewer.