Difference between revisions of "Dissipation"

From Planets
Jump to: navigation, search
Line 1: Line 1:
 
Note that there are some slides from the LMDZ Earth Climate Model tutorial sessions:
 
Note that there are some slides from the LMDZ Earth Climate Model tutorial sessions:
 
https://lmdz.lmd.jussieu.fr/utilisateurs/formation/winter_2024  
 
https://lmdz.lmd.jussieu.fr/utilisateurs/formation/winter_2024  
in the "Dynamics: grid/temporal discretization/stability/dissipation" course which can be helpful to learn about dissipation in the PCM.
+
in the "Dynamics: grid/temporal discretization/stability/dissipation" course which can be helpful to learn about dissipation in the PCM,
 +
why it is there, how it is handled, and what are the underlying parameters.
  
 
== Description==
 
== Description==
In the LMD grid point model, nonlinear interactions between explicitly resolved scales
+
In the LMDZ grid point model, nonlinear interactions between explicitly resolved scales
 
and subgrid-scale processes are parameterized by applying a scale-selective horizontal dissipation operator based on an $$n$$ time iterated Laplacian $$\Delta^n$$. For the grid point model, for
 
and subgrid-scale processes are parameterized by applying a scale-selective horizontal dissipation operator based on an $$n$$ time iterated Laplacian $$\Delta^n$$. For the grid point model, for
 
instance, this can be written:  
 
instance, this can be written:  
Line 14: Line 15:
 
\end{align}
 
\end{align}
  
where $$q$$ is a field component on which disspation is applied, $$\delta x$$ is the smallest horizontal distance represented in the model and $$\tau_{diss}$$ is the dissipation timescale for a structure of scale $$\delta x$$. These operators are necessary to ensure the grid point model numerical stability. In practice, the operator is separately applied to three components :  
+
where $$q$$ is a field component on which dissipation is applied, $$\delta x$$ is the smallest horizontal distance represented in the model and $$\tau_{diss}$$ is the dissipation timescale for a structure of scale $$\delta x$$. These operators are necessary to ensure the grid point model numerical stability. In practice, the operator is separately applied to three components :  
 
* the divergence of the flow,  
 
* the divergence of the flow,  
 
* the vorticity of the flow,
 
* the vorticity of the flow,
 
* potential temperature.
 
* potential temperature.
  
We classically use n = 1 for the divergence of the flow and n = 2 for flow vorticity and potential temperature.
+
We classically use n = 1 for the divergence of the flow (<code>nitergdiv=1</code> in [[The_run.def_Input_File|run.def]]) and n = 2 for flow vorticity and potential temperature (<code>nitergrot=2</code> and <code>niterh=2</code> in [[The_run.def_Input_File|run.def]]).
  
 
== How to change it in the model ==
 
== How to change it in the model ==
Line 27: Line 28:
 
*nitergrot
 
*nitergrot
 
*niterh  
 
*niterh  
for the values of $$n$$ on each field, and the associated time scales $$\tau$$:  
+
for the values of $$n$$ on each field, and the associated time scales $$\tau$$ (in s):  
 
*tetagdiv
 
*tetagdiv
 
*tetagrot
 
*tetagrot
Line 34: Line 35:
 
In [[The_run.def_Input_File|run.def]], there is also a key ''idissip'' (depreciated) or ''dissip_period'' which is the rate (in dynamical steps) at which to apply the dissipation (and thus impacts on the overall time step of the dissipation).
 
In [[The_run.def_Input_File|run.def]], there is also a key ''idissip'' (depreciated) or ''dissip_period'' which is the rate (in dynamical steps) at which to apply the dissipation (and thus impacts on the overall time step of the dissipation).
  
In addition there are multiplicative factors on the dissipation that are applied going to the upper layers of the atmosphere (as it has been noted that usually more dissipation is required in the upper atmospher than the lower atmosphere). These coefficients are:
+
In addition there are multiplicative factors on the dissipation that are applied going to the upper layers of the atmosphere (as it has been noted that usually more dissipation is required in the upper atmosphere than the lower atmosphere). These coefficients are:
 
* dissip_fac_mid : dissipation multiplicative factor in the middle atmosphere
 
* dissip_fac_mid : dissipation multiplicative factor in the middle atmosphere
 
* dissip_fac_up : dissipation multiplicative factor in the upper atmosphere
 
* dissip_fac_up : dissipation multiplicative factor in the upper atmosphere
  
 
== Good to know rules and rules of thumb ==  
 
== Good to know rules and rules of thumb ==  
* If your simulation shows numerical instabilities, a good idea is to increase dissipation. This means decreasing parameters $$\tau$$.
+
* If your simulation shows numerical instabilities, a good idea is to increase dissipation. This means decreasing parameters $$\tau$$ and/or increasing dissip_fac_up (and to a lesser extent dissip_fac_mid).
 
* Optimal values for the dissipation timescales depends on the resolution of the horizontal grid. The higher the resolution, the more dissipation we need.
 
* Optimal values for the dissipation timescales depends on the resolution of the horizontal grid. The higher the resolution, the more dissipation we need.
 
* Because dissipation is applied using an Explicit Euler time marching scheme, it is liable to be unstable if the time step is too large. This is tested at run-time by the model which will generate an error message of the likes of:
 
* Because dissipation is applied using an Explicit Euler time marching scheme, it is liable to be unstable if the time step is too large. This is tested at run-time by the model which will generate an error message of the likes of:

Revision as of 15:57, 21 August 2025

Note that there are some slides from the LMDZ Earth Climate Model tutorial sessions: https://lmdz.lmd.jussieu.fr/utilisateurs/formation/winter_2024 in the "Dynamics: grid/temporal discretization/stability/dissipation" course which can be helpful to learn about dissipation in the PCM, why it is there, how it is handled, and what are the underlying parameters.

Description

In the LMDZ grid point model, nonlinear interactions between explicitly resolved scales and subgrid-scale processes are parameterized by applying a scale-selective horizontal dissipation operator based on an $$n$$ time iterated Laplacian $$\Delta^n$$. For the grid point model, for instance, this can be written:


\begin{align} \label{def:Wns} \frac{\partial q}{\partial t} = \frac{(-1)^n}{\tau_{diss}}(\delta x)^{2n}\Delta^nq \end{align}

where $$q$$ is a field component on which dissipation is applied, $$\delta x$$ is the smallest horizontal distance represented in the model and $$\tau_{diss}$$ is the dissipation timescale for a structure of scale $$\delta x$$. These operators are necessary to ensure the grid point model numerical stability. In practice, the operator is separately applied to three components :

  • the divergence of the flow,
  • the vorticity of the flow,
  • potential temperature.

We classically use n = 1 for the divergence of the flow (nitergdiv=1 in run.def) and n = 2 for flow vorticity and potential temperature (nitergrot=2 and niterh=2 in run.def).

How to change it in the model

In practice, the values of $$n$$ and $$\tau_{diss}$$ are prescribed in the run.def with the keys:

  • nitergdiv
  • nitergrot
  • niterh

for the values of $$n$$ on each field, and the associated time scales $$\tau$$ (in s):

  • tetagdiv
  • tetagrot
  • tetatemp

In run.def, there is also a key idissip (depreciated) or dissip_period which is the rate (in dynamical steps) at which to apply the dissipation (and thus impacts on the overall time step of the dissipation).

In addition there are multiplicative factors on the dissipation that are applied going to the upper layers of the atmosphere (as it has been noted that usually more dissipation is required in the upper atmosphere than the lower atmosphere). These coefficients are:

  • dissip_fac_mid : dissipation multiplicative factor in the middle atmosphere
  • dissip_fac_up : dissipation multiplicative factor in the upper atmosphere

Good to know rules and rules of thumb

  • If your simulation shows numerical instabilities, a good idea is to increase dissipation. This means decreasing parameters $$\tau$$ and/or increasing dissip_fac_up (and to a lesser extent dissip_fac_mid).
  • Optimal values for the dissipation timescales depends on the resolution of the horizontal grid. The higher the resolution, the more dissipation we need.
  • Because dissipation is applied using an Explicit Euler time marching scheme, it is liable to be unstable if the time step is too large. This is tested at run-time by the model which will generate an error message of the likes of:
STOP : lateral dissipation is too intense and will
    generate instabilities in the model !
 You must increase tetah (or increase dissip_period
              or increase day_step)