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