source: trunk/LMDZ.MARS/libf/phymars/meso_inc/meso_inc_les.F @ 503

Last change on this file since 503 was 503, checked in by acolaitis, 13 years ago

Mesoscale/Les?. Added improvments to mode 21. Corrected variable names for new subgrid gustiness definitions.

File size: 2.2 KB
Line 
1         if (.not.callrichsl) then
2       
3             DO ig=1,ngrid
4!! sensible heat flux in W/m2
5
6             sensheat(ig) = zflubid(ig)-capcal(ig)*zdtsdif(ig)
7
8!! u star in similarity theory in m/s
9             ustar(ig) = 0.4
10     .               * sqrt( pu(ig,1)*pu(ig,1) + pv(ig,1)*pv(ig,1) )
11     .               / log( 1.E+0 + zzlay(ig,1)/z0_default )
12             ENDDO
13
14         else
15
16            DO ig=1,ngrid
17
18! New SL parametrization, correct formulation for sensheat :
19
20            sensheat(ig) = (pplay(ig,1)/(r*pt(ig,1)))*cpp
21     &        *sqrt(pu(ig,1)*pu(ig,1) + pv(ig,1)*pv(ig,1)
22     &        + (log(1.+0.7*wstar(ig) + 2.3*wstar(ig)**2)**2))
23     &        *zcdh(ig)*(tsurf(ig)-zh(ig,1))
24
25! New SL parametrization, ustar is more accurately computed in vdif_cd :
26
27            ustar(ig) = sqrt(zcdv(ig)*
28     &   (pu(ig,1)*pu(ig,1) + pv(ig,1)*pv(ig,1)
29     &     + (log(1.+0.7*wstar(ig) + 2.3*wstar(ig)**2)**2))
30     &                     )
31
32            ENDDO   
33
34         endif  !of if callrichsl
35
36!         write (*,*) 'PHYS HFX cp zdts', sensheat(100), zflubid(100),
37!     .       capcal(100),
38!     .       zdtsdif(100)
39!         write (*,*) 'PHYS UST', ustar(100)
40
41!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
42!!! LES LES
43       IF (flag_LES) THEN       
44
45         write (*,*) '************************************************'
46         write (*,*) '** LES mode: the difv part is only used to'
47         write (*,*) '**  provide HFX and UST to the dynamics'
48         write (*,*) '** NB: - dudif, dvdif, dhdif, dqdif are set to 0'
49         write (*,*) '**     - tsurf is updated'     
50         write (*,*) '************************************************'
51
52         DO ig=1,ngrid
53          wstar(ig)=0.  !! no additional gustiness needed in surface layer (see vdifc.F)
54          DO l=1,nlayer
55            zdvdif(ig,l) = 0.
56            zdudif(ig,l) = 0.
57            zdhdif(ig,l) = 0.
58            DO iq=1, nq
59              zdqdif(ig,l,iq) = 0.
60              zdqsdif(ig,iq) = 0. !! sortir de la boucle
61            ENDDO
62          ENDDO
63         ENDDO
64      ENDIF
65!!! LES LES       
66!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Note: See TracBrowser for help on using the repository browser.