source: LMDZ5/trunk/libf/phylmd/phys_output_var_mod.F90 @ 1757

Last change on this file since 1757 was 1753, checked in by idelkadi, 12 years ago

Concerns energy conservation.


The source terms of the TKE prognostic equation are diagnosed
from the tendencies (du, dv, dT) associated with subrgrid scale
motions and treated as an additional heat source.
Controled by a new key, iflag_ener_conserv :

0 no conservation

-1 old adhoc correction for kinetic E only (used for CMIP5)

1 conservation
101 conversion from kinetic to heat only
110 conversion from potential to heat only

iflag_ener_conserv=-1 kept as default value for a test period
iflag_ener_conserv=1 is the advisable value
Concerns clesphys.h, and conf_phys.F90
New routine : ener_conserv.F90, called by physic.
New outputs :
bils_ec, contribution to the energy budget of the column of the

additional heat source (in W/m2)

bils_kinetic : change kinetic energy of the column in physics (W/m2)
bils_enthalp : idem for the total column enthalphy
bils_latent : idem for latent heat
Modified files : clesphys.h, conf_phys_m.F90, physiq.F,

phys_output_mod.F90, phys_output_var_mod.F90, phys_output_write.h,
ener_conserv.F90

File size: 1.5 KB
Line 
1!
2! phys_local_var_mod.F90 1327 2010-03-17 15:33:56Z idelkadi $
3
4      MODULE phys_output_var_mod
5
6      use dimphy
7! Variables outputs pour les ecritures des sorties
8!======================================================================
9!
10!
11!======================================================================
12! Declaration des variables
13
14      REAL, SAVE, ALLOCATABLE :: snow_o(:), zfra_o(:)
15!$OMP THREADPRIVATE(snow_o, zfra_o)
16      INTEGER, save, ALLOCATABLE ::  itau_con(:)       ! Nombre de pas ou rflag <= 1
17      REAL, ALLOCATABLE :: bils_ec(:) ! Contribution of energy conservation
18      REAL, ALLOCATABLE :: bils_kinetic(:) ! bilan de chaleur au sol, kinetic
19      REAL, ALLOCATABLE :: bils_enthalp(:) ! bilan de chaleur au sol
20      REAL, ALLOCATABLE :: bils_latent(:) ! bilan de chaleur au sol
21
22!$OMP THREADPRIVATE(itau_con)
23
24CONTAINS
25
26!======================================================================
27SUBROUTINE phys_output_var_init
28use dimphy
29
30IMPLICIT NONE
31
32      allocate(snow_o(klon), zfra_o(klon))
33      allocate(itau_con(klon))
34      allocate (bils_ec(klon),bils_kinetic(klon),bils_enthalp(klon),bils_latent(klon))
35
36END SUBROUTINE phys_output_var_init
37
38!======================================================================
39SUBROUTINE phys_output_var_end
40use dimphy
41IMPLICIT NONE
42
43      deallocate(snow_o,zfra_o,itau_con)
44      deallocate (bils_ec,bils_kinetic,bils_enthalp,bils_latent)
45
46END SUBROUTINE phys_output_var_end
47
48END MODULE phys_output_var_mod
Note: See TracBrowser for help on using the repository browser.