Difference between revisions of "Thermal plume model Generic PCM"

From Planets
Jump to: navigation, search
(In a 1D rcm1d run)
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
  
== Description of the Thermal plume model ==
+
== 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 ==
Line 9: Line 43:
 
=== Edition history ===
 
=== Edition history ===
  
  Authors: F. Hourdin, C. Rio, A. Mathieu, A. Boissinot, A. Le Saux
+
Authors: F. Hourdin, C. Rio, A. Mathieu, A. Boissinot, A. Le Saux
 +
 
 +
Version du 09.02.07
  
Version du 09.02.07
 
 
   Calculation of vertical transport in the boundary layer in the presence of explicitly represented “thermals” with cloud processes
 
   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
 
   Rewriting from a paper listing in Habas, 14/02/00
 
 
   Thermal energy is assumed to be homogeneous and dissipated by mixing with its surroundings.  
 
   Thermal energy is assumed to be homogeneous and dissipated by mixing with its surroundings.  
 
   The length l_mix controls the mixing efficiency.
 
   The length l_mix controls the mixing efficiency.
 
 
   The transport of the different species is calculated by taking into account:
 
   The transport of the different species is calculated by taking into account:
 
     1. upward mass flux
 
     1. upward mass flux
Line 25: Line 57:
 
     4. a detrainment
 
     4. a detrainment
  
Modif 2013/01/04 (FH hourdin@lmd.jussieu.fr)
+
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
 
     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
 
     impl = 0 : explicit ; impl = 1 : implicit ; impl =-1 : old version
Line 33: Line 66:
 
     15 and 17 correspond to the activation of the stratocumulus "bidouille"
 
     15 and 17 correspond to the activation of the stratocumulus "bidouille"
 
   
 
   
Major changes 2018-19 (AB alexandre.boissinot@lmd.jussieu.fr)
+
Major changes 2018-19 (AB alexandre.boissinot@lmd.jussieu.fr)
 
     New detr and entre formulae (no longer alimentation)
 
     New detr and entre formulae (no longer alimentation)
 
     lmin can be greater than 1
 
     lmin can be greater than 1
Line 39: Line 72:
 
     Can stack verticaly multiple plumes (it makes thermcell_dv2 unusable for the moment)
 
     Can stack verticaly multiple plumes (it makes thermcell_dv2 unusable for the moment)
  
Modif 2024 (ALS, arthur.le-saux@lmd.ipsl.fr)
+
Modif 2024 (ALS, arthur.le-saux@lmd.ipsl.fr)
 
     Implementation to take into account generic tracers
 
     Implementation to take into account generic tracers
  
== 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 to use only one parametrisation of convection
 
calladj  = .True.
 
 
Then, several options may be used to tune the model
 
dvimpl              = .False.
 
dqimpl              = .True.
 
r_aspect_thermals    = 2.0
 
tau_thermals        = 0.0
 
betalpha            = 0.9
 
afact                = 0.9
 
fact_epsilon        = 1.e-4
 
alpha_max            = 0.7
 
fomass_max          = 0.5
 
pres_limit          = 1.e3
 
nu                  = 0.0
 
 
 
 
=== In a 3D DYNAMICO run ===
 
  
 
== References ==
 
== References ==

Latest revision as of 11:18, 30 April 2025

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


References