Thermal plume model Generic PCM
From Planets
Contents
Overview of the Thermal plume model
The Thermal Plume Model (TPM) is a parametrisation of the vertical transport related to the small-scale convective processes. It is based on a mass flux approach, meaning it is a nonlocal scheme which allows mixing between layers that are not directly adjacent.
How to use it?
In a 1D rcm1d run
The TPM is activated in callphys.def with
calltherm = .True.
Remember to also turn off the convective adjustment scheme (as it default value is .True.), to use only one parametrisation of convection
calladj = .False.
Then, several options may be used to tune the model
dqimpl = .True. ! .true. Flag for thermcell_dq version (True : implicit scheme || False : explicit scheme) dvimpl = .False. ! .false. Flag for specific u, v mixing (True : thermcell_dv2 || False : thermcell_dq) r_aspect_thermals = 2.0 ! 1.0 Aspect ratio of the thermals (width / height) tau_thermals = 0.0 ! 0. Relaxation time betalpha = 0.9 ! 0.9 - between 0 (e=d=0) and 1 (rho*fraca=cst) afact = 0.9 ! 2./3. - buoyancy acceleration efficiency, between 0 and 1 fact_epsilon = 1.e-4 ! 2.e-3 - turbulence and friction deceleration alpha_max = 0.7 ! 0.7 Maximal permitted updraft fraction fomass_max = 0.5 ! 0.5 Maximal permitted outgoing layer mass fraction pres_limit = 1.e3 ! 1.e5 Minimum pressure level above which thermals cannot be triggered nu = 0.0 ! 0. Geometrical contributions to entrainment and detrainment linf = 1.0 ! 1.0 linf is used to set the lowest possible first level because we allow it ! to begin higher than the surface. It is set to 2 in order to remove the ! first layer for gas giant. ! If there is a surface, it has to be set to 1. ! If someone want to call more than once the thermal plume model in some ! grid points, this variable may become a saved array of INTEGER with size ngrid.
In a 3D DYNAMICO run
Physical description of the TPM
Implementation in the Generic PCM
Code
Edition history
Authors: F. Hourdin, C. Rio, A. Mathieu, A. Boissinot, A. Le Saux
Version du 09.02.07
Calculation of vertical transport in the boundary layer in the presence of explicitly represented “thermals” with cloud processes Rewriting from a paper listing in Habas, 14/02/00 Thermal energy is assumed to be homogeneous and dissipated by mixing with its surroundings. The length l_mix controls the mixing efficiency. The transport of the different species is calculated by taking into account: 1. upward mass flux 2. downward mass flux 3. entrainment 4. a detrainment
Modif 2013/01/04 (FH hourdin@lmd.jussieu.fr)
Introduction of an implicit computation of vertical advection in the environment of thermal plumes in thermcell_dq impl = 0 : explicit ; impl = 1 : implicit ; impl =-1 : old version controled by iflag_thermals = 15, 16 run with impl=-1 : numerical convergence with NPv3 17, 18 run with impl=1 : more stable 15 and 17 correspond to the activation of the stratocumulus "bidouille"
Major changes 2018-19 (AB alexandre.boissinot@lmd.jussieu.fr)
New detr and entre formulae (no longer alimentation) lmin can be greater than 1 Mix every tracer Can stack verticaly multiple plumes (it makes thermcell_dv2 unusable for the moment)
Modif 2024 (ALS, arthur.le-saux@lmd.ipsl.fr)
Implementation to take into account generic tracers