Difference between revisions of "Thermal plume model Generic PCM"
From Planets
(Created page with " == Description of the Thermal plume model == == Implementation in the Generic PCM == == How to use it? == == References ==") |
(→In a 1D rcm1d run) |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | == | + | == 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 == | == 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 | ||
+ | |||
== References == | == References == | ||
+ | |||
+ | [[Category:Generic-Model]] | ||
+ | [[Category:Generic-DYNAMICO]] |
Latest revision as of 11:18, 30 April 2025
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