source: LMDZ5/trunk/libf/phylmd/indicesol.h @ 1761

Last change on this file since 1761 was 1761, checked in by Laurent Fairhead, 11 years ago

New version of Mellor et Yamada pronostic TKE

... based on energy transfer from the mean state.

The new version is yamada_c.
It must be called after vertical diffusion rather than just before
since the source terms u_z w'u' + v_z w'theta' and g/theta w'theta'
are diagnosed from the vertical diffusion (as energy loss from the mean
state) rather than computed as K (u_z2+v_z2) or g/\theta K theta_z
(where _z means vertical derivative).
The call to this version is controled by iflag_pbl.

iflag_pbl = 20 : with TKE computed at interfaces between layers
iflag_pbl = 25 : with TKE computed within the layer
In both cases, the dissipation of turbulence is translated into heat, and
passed to the physics as dtdiss (temperature tendency due to dissipation

of TKE).

The diffusion coefficient being computed after dissipation, it must be
kept for diffusion at the next time step, and thus be stored in the
restartphy file.
This coefficient must be computed and stored for each sub-surface.

A new way of managing subsurface variables is introduced.
For arrays of the form X(:,nbsrf) are extented to X(:,nbsrf+1), where
is_ave=nbsrf+1, is an additional sub-surface which contains the averaged values.

coef_diff_turb_mod.F90 : change of flags.
ener_conserv.F90 : energy conservation must not be applied in those

cases

indicesol.h : definition of is_ave
pbl_surface_mod.F90 : call to yamada_c and changes in the management of

coefh/coefm

physiq.F : Change in the initialisation of pmflxr/s and

modified calls to pbl_surface_mod (introduction
of dtdiss, initialisation
of pbl_tke and coefh in 1D).

phys_local_var_mod.F90 : declaration of d_t_diss
phys_output_mod.F90 : new outputs (bils_tke and bils_diss) and

coefh->coefh(:,:,is_ave)

phys_state_var_mod.F90 : modified declaration for coefh and coefm

(nbsrf -> nbsrf+1)

FH

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 905 bytes
Line 
1!
2! $Header$
3!
4!
5!  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre
6!                 veillez à n'utiliser que des ! pour les commentaires
7!                 et à bien positionner les & des lignes de continuation
8!                 (les placer en colonne 6 et en colonne 73)
9!
10!
11      INTEGER nbsrf
12      PARAMETER (nbsrf=4) ! nombre de sous-fractions pour une maille
13!
14      INTEGER is_oce
15      PARAMETER (is_oce=3) ! ocean
16      INTEGER is_sic
17      PARAMETER (is_sic=4) ! glace de mer
18      INTEGER is_ter
19      PARAMETER (is_ter=1) ! terre
20      INTEGER is_lic
21      PARAMETER (is_lic=2) ! glacier continental
22!
23      INTEGER is_ave
24      PARAMETER (is_ave=nbsrf+1) ! glacier continental
25!
26      REAL epsfra
27      PARAMETER (epsfra=1.0E-05)
28!
29      CHARACTER(len=3) clnsurf(nbsrf)
30      DATA clnsurf/'ter', 'lic', 'oce', 'sic'/
31      SAVE clnsurf
32!$OMP THREADPRIVATE(clnsurf)
Note: See TracBrowser for help on using the repository browser.