Changeset 1816 for LMDZ5/trunk
- Timestamp:
- Jul 25, 2013, 10:33:44 AM (11 years ago)
- Location:
- LMDZ5/trunk/libf/phylmd
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/hbtm.F
r1279 r1816 4 4 5 5 SUBROUTINE HBTM(knon, paprs, pplay, 6 . t2m,t10m,q2m,q10m,ustar, 6 . t2m,t10m,q2m,q10m,ustar,wstar, 7 7 . flux_t,flux_q,u,v,t,q, 8 8 . pblh,cape,EauLiq,ctei,pblT, … … 54 54 REAL q2m(klon), q10m(klon) ! q a 2 et 10m 55 55 REAL ustar(klon) 56 REAL wstar(klon) ! w*, convective velocity scale 56 57 REAL paprs(klon,klev+1) ! pression a inter-couche (Pa) 57 58 REAL pplay(klon,klev) ! pression au milieu de couche (Pa) … … 158 159 REAL fak1(klon) ! k*ustar*pblh 159 160 REAL fak2(klon) ! k*wm*pblh 160 REAL fak3(klon) ! fakn*wst r/wm161 REAL fak3(klon) ! fakn*wstar/wm 161 162 REAL pblk(klon) ! level eddy diffusivity for momentum 162 163 REAL pr(klon) ! Prandtl number for eddy diffusivities … … 164 165 REAL zh(klon) ! zmzp / pblh 165 166 REAL zzh(klon) ! (1-(zmzp/pblh))**2 166 REAL wstr(klon) ! w*, convective velocity scale167 167 REAL zm(klon) ! current level height 168 168 REAL zp(klon) ! current level height + one level up … … 625 625 wm(i) = ustar(i)*phiminv(i) 626 626 fak2(i) = wm(i)*pblh(i)*vk 627 wst r(i) = (heatv(i)*RG*pblh(i)/zxt)**onet628 fak3(i) = fakn*wst r(i)/wm(i)627 wstar(i) = (heatv(i)*RG*pblh(i)/zxt)**onet 628 fak3(i) = fakn*wstar(i)/wm(i) 629 629 ENDIF 630 630 c Computes Theta_e for thermal (all cases : to be modified) -
LMDZ5/trunk/libf/phylmd/pbl_surface_mod.F90
r1787 r1816 174 174 t, q, u, v, & 175 175 pplay, paprs, pctsrf, & 176 ts, alb1, alb2,ustar, u10m, v10m,&176 ts, alb1, alb2,ustar, u10m, v10m,wstar, & 177 177 lwdown_m, cdragh, cdragm, zu1, zv1, & 178 178 alb1_m, alb2_m, zxsens, zxevap, & … … 294 294 REAL, DIMENSION(klon, nbsrf), INTENT(INOUT) :: alb2 ! albedo in near infra-red SW interval 295 295 REAL, DIMENSION(klon, nbsrf), INTENT(INOUT) :: ustar ! u* (m/s) 296 REAL, DIMENSION(klon, nbsrf+1), INTENT(INOUT) :: wstar ! w* (m/s) 296 297 REAL, DIMENSION(klon, nbsrf), INTENT(INOUT) :: u10m ! u speed at 10m 297 298 REAL, DIMENSION(klon, nbsrf), INTENT(INOUT) :: v10m ! v speed at 10m … … 406 407 REAL, DIMENSION(klon) :: yt2m, yq2m, yu10m 407 408 REAL, DIMENSION(klon) :: yustar 409 REAL, DIMENSION(klon) :: ywstar 408 410 REAL, DIMENSION(klon) :: ywindsp 409 411 REAL, DIMENSION(klon) :: yt10m, yq10m … … 1065 1067 q2m(:,nsrf) = 0. 1066 1068 ustar(:,nsrf) = 0. 1069 wstar(:,nsrf) = 0. 1067 1070 u10m(:,nsrf) = 0. 1068 1071 v10m(:,nsrf) = 0. … … 1145 1148 1146 1149 ! print*,'OK pbl 5' 1147 CALL HBTM(knon, ypaprs, ypplay, &1148 yt2m,yt10m,yq2m,yq10m,yustar, &1150 CALL hbtm(knon, ypaprs, ypplay, & 1151 yt2m,yt10m,yq2m,yq10m,yustar,ywstar, & 1149 1152 y_flux_t,y_flux_q,yu,yv,yt,yq, & 1150 1153 ypblh,ycapCL,yoliqCL,ycteiCL,ypblT, & … … 1154 1157 i = ni(j) 1155 1158 pblh(i,nsrf) = ypblh(j) 1159 wstar(i,nsrf) = ywstar(j) 1156 1160 plcl(i,nsrf) = ylcl(j) 1157 1161 capCL(i,nsrf) = ycapCL(j) … … 1215 1219 s_therm(:) = 0.0 ; s_trmb1(:) = 0.0 1216 1220 s_trmb2(:) = 0.0 ; s_trmb3(:) = 0.0 1221 wstar(:,is_ave)=0. 1217 1222 1218 1223 ! print*,'OK pbl 9' … … 1233 1238 zq2m(i) = zq2m(i) + q2m(i,nsrf) * pctsrf(i,nsrf) 1234 1239 zustar(i) = zustar(i) + ustar(i,nsrf) * pctsrf(i,nsrf) 1240 wstar(i,is_ave)=wstar(i,is_ave)+wstar(i,nsrf)*pctsrf(i,nsrf) 1235 1241 zu10m(i) = zu10m(i) + u10m(i,nsrf) * pctsrf(i,nsrf) 1236 1242 zv10m(i) = zv10m(i) + v10m(i,nsrf) * pctsrf(i,nsrf) -
LMDZ5/trunk/libf/phylmd/phys_output_ctrlout_mod.F90
r1813 r1816 93 93 ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'ustar_sic', & 94 94 "Friction velocity "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)) /) 95 96 TYPE(ctrl_out), SAVE, DIMENSION(5) :: o_wstar = (/ & 97 ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_ter', & 98 "Friction velocity "//clnsurf(1),"m/s", (/ ('', i=1, 6) /)), & 99 ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_lic', & 100 "Friction velocity "//clnsurf(2),"m/s", (/ ('', i=1, 6) /)), & 101 ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_oce', & 102 "Friction velocity "//clnsurf(3),"m/s", (/ ('', i=1, 6) /)), & 103 ctrl_out((/ 10, 6, 10, 10, 10, 10 /),'wstar_sic', & 104 "Friction velocity "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)), & 105 ctrl_out((/ 5, 5, 10, 10, 10, 10 /),'wstar', & 106 "w* convective velocity "//clnsurf(4),"m/s", (/ ('', i=1, 6) /)) /) 95 107 96 108 TYPE(ctrl_out), SAVE, DIMENSION(4) :: o_u10m_srf = (/ & -
LMDZ5/trunk/libf/phylmd/phys_output_write_mod.F90
r1813 r1816 319 319 320 320 ENDDO 321 DO nsrf=1,nbsrf+1 322 CALL histwrite_phy(o_wstar(nsrf), wstar(1 : klon, nsrf)) 323 ENDDO 324 321 325 CALL histwrite_phy(o_cdrm, cdragm) 322 326 CALL histwrite_phy(o_cdrh, cdragh) -
LMDZ5/trunk/libf/phylmd/physiq.F
r1813 r1816 1999 1999 e t_seri, q_seri, u_seri, v_seri, 2000 2000 e pplay, paprs, pctsrf, 2001 + ftsol, falb1, falb2, ustar, u10m, v10m,2001 + ftsol,falb1,falb2,ustar,u10m,v10m,wstar, 2002 2002 s sollwdown, cdragh, cdragm, u1, v1, 2003 2003 s albsol1, albsol2, sens, evap, … … 3640 3640 END IF 3641 3641 3642 wstar=0. ! FH 2013/07/22 a corriger des que dans pbl_surface_mod3643 3642 call phytrac ( 3644 3643 I itap, days_elapsed+1, jH_cur, debut,
Note: See TracChangeset
for help on using the changeset viewer.