<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dbardet</id>
		<title>Planets - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dbardet"/>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Special:Contributions/Dbardet"/>
		<updated>2026-06-10T22:30:12Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.7</generator>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2728</id>
		<title>How to Cite</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2728"/>
				<updated>2025-04-30T12:44:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* gas giants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Main reference to cite the Generic PCM =&lt;br /&gt;
&lt;br /&gt;
* Forget et al., 2022-2023 (the documentation will be officially released at the time of the Forget et al. publication)&lt;br /&gt;
&lt;br /&gt;
= How to cite? (process by process) =&lt;br /&gt;
&lt;br /&gt;
== Slab ocean ==&lt;br /&gt;
&lt;br /&gt;
Codron, Francis., Ekman heat transport for slab oceans, Climate Dynamics 38: 379-389 (2012)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
== CO2 ice clouds ==&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
== etc. ==&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
= List of all references (using the Generic PCM) =&lt;br /&gt;
&lt;br /&gt;
=== terrestrial exoplanets ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Forget, F.; Selsis, F.; Millour, E.; Charnay, B. and Madeleine, J.-B., Gliese 581d is the First Discovered Terrestrial-mass Exoplanet in the Habitable Zone, The Astrophysical Journal, vol.733, pp.L48 (2011)&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
Bolmont, E.; Libert, A. S.; Leconte, J.; &amp;amp; Selsis, F., Habitability of planets on eccentric orbits: Limits of the mean flux approximation, Astronomy &amp;amp; Astrophysics, vol.591, pp.A106 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Leconte, J.; Selsis, F.; Bolmont, E.; Forget, F.; Ribas, I.; Raymond, S. N. and Anglada-Escudé, G., The habitability of Proxima Centauri b. II. Possible climates and observability, Astronomy and Astrophysics, vol.596, pp.A112 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Leconte, J.; Charnay, B. and Tobie, G., CO2 condensation is a serious limit to the deglaciation of Earth-like planets, Earth and Planetary Science Letters, vol.476, pp.11 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Leconte, J.; Forget, F.; Selsis, F.; Tobie, G.; Caldas, A.; Naar, J. and Gillon, M., Modeling climate diversity, tidal dynamics and the fate of volatiles on TRAPPIST-1 planets, Astronomy and Astrophysics, vol.612, pp.A86 (2018)&lt;br /&gt;
&lt;br /&gt;
Fauchez, T. J.; Turbet, M.; Villanueva, G. L.; Wolf, E. T.; Arney, G.; Kopparapu, R. K.; Lincowski, A.; Mandell, A.; de Wit, J.; Pidhorodetska, D.; Domagal-Goldman, S. D. and Stevenson, K. B., Impact of Clouds and Hazes on the Simulated JWST Transmission Spectra of Habitable Zone Planets in the TRAPPIST-1 System, The Astrophysical Journal, vol.887, pp.194 (2019)&lt;br /&gt;
&lt;br /&gt;
=== super-Earths ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptunes ===&lt;br /&gt;
&lt;br /&gt;
Benjamin's two papers on GJ1214b&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Blain, D.; Bézard, B.; Leconte, J.; Turbet, M. and Falco, A., Formation and dynamics of water clouds on temperate sub-Neptunes: the example of K2-18b, Astronomy and Astrophysics, vol.646, pp.A171 (2021)&lt;br /&gt;
&lt;br /&gt;
=== LES ===&lt;br /&gt;
Lefèvre, M.; Turbet, M. and Pierrehumbert, R., 3D Convection-resolving Model of Temperate, Tidally Locked Exoplanets, The Astrophysical Journal, vol.913, pp.101 (2021)&lt;br /&gt;
&lt;br /&gt;
== paleoclimates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Le Hir, G.; Fluteau, F.; Forget, F. and Catling, D. C., A warm or a cold early Earth? New insights from a 3-D climate-carbon model, Earth and Planetary Science Letters, vol.474, pp.97 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Mars ===&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R.; Forget, F.; Millour, E.; Head, J. W.; Madeleine, J. B. and Charnay, B., Global modelling of the early martian climate under a denser CO2 atmosphere: Water cycle and ice evolution, Icarus, vol.222, pp.1 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Kerber, L.; Pierrehumbert, R. T.; Forget, F. and Head, J. W., Comparison of &amp;quot;warm and wet&amp;quot; and &amp;quot;cold and icy&amp;quot; scenarios for early Mars in a 3-D climate model, Journal of Geophysical Research (Planets), vol.120, pp.1201 (2015)&lt;br /&gt;
&lt;br /&gt;
Kerber, L.; Forget, F. and Wordsworth, R., Sulfur in the early martian atmosphere revisited: Experiments with a 3-D Global Climate Model, Icarus, vol.261, pp.133 (2015)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Head, J. W. and Wordsworth, R., 3D modelling of the climatic impact of outflow channel formation events on early Mars, Icarus, vol.288, pp.10 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M. and Forget, F., The paradoxes of the Late Hesperian Mars ocean, Scientific Reports, vol.9, pp.5717 (2019)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Gillmann, C.; Forget, F.; Baudin, B.; Palumbo, A.; Head, J. and Karatekin, O., The environmental effects of very large bolide impacts on early Mars explored with a hierarchy of numerical models, Icarus, vol.335, pp.113419 (2020)&lt;br /&gt;
&lt;br /&gt;
=== Venus ===&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Titan ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Tobie, G.; Sotin, C. and Wordsworth, R., Titan's past and future: 3D modeling of a pure nitrogen atmosphere and geological implications, Icarus, vol.241, pp.269 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.07.009&lt;br /&gt;
&lt;br /&gt;
== future climates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R. and Pottier, A., Increased insolation threshold for runaway greenhouse processes on Earth-like planets, Nature, vol.504, pp.268 (2013)&lt;br /&gt;
&lt;br /&gt;
== Gas giants ==&lt;br /&gt;
&lt;br /&gt;
=== Saturn ===&lt;br /&gt;
&lt;br /&gt;
''' Saturn radiative transfer model '''&lt;br /&gt;
&lt;br /&gt;
Guerlet, S.; Spiga, A.; Sylvestre, M.; Indurain, M.; Fouchet, T.; Leconte, J.; Millour, E.; Wordsworth, R.; Capderou, M.; Bézard, B. and Forget, F., Global climate modeling of Saturn’s atmosphere. Part I: Evaluation of the radiative transfer model, Icarus, vol.238, pp.110 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.05.010&lt;br /&gt;
&lt;br /&gt;
''' Saturn's tropospheric dynamics with DYNAMICO Generic-PCM  '''&lt;br /&gt;
&lt;br /&gt;
Spiga, A.; Guerlet, S.; Millour, E.; Indurain, M.; Meurdesoif, Y.; Cabanes, S.; Dubos, T.; Leconte, J.; Boissinot, A.; Lebonnois, S.; Sylvestre, M. and Fouchet, T., Global climate modeling of Saturn's atmosphere. Part II: Multi-annual high-resolution dynamical simulations, Icarus, vol.335, pp.113377 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2019.07.011&lt;br /&gt;
&lt;br /&gt;
''' Saturn's statistical analysis of the zonostrophic tropospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Cabanes, S.; Spiga, A. and Young, R. M. B ., Global climate modeling of Saturn's atmosphere. Part III: Global statistical picture of zonostrophic turbulence in high-resolution 3D-turbulent simulations, Icarus, vol.345, pp. 113705 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113705&lt;br /&gt;
&lt;br /&gt;
''' Saturn's stratospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A.;  Guerlet, S.;  Cabanes, S.;  Millour, E. and Boissinot, A., Global climate modeling of Saturn's atmosphere. Part IV: Stratospheric equatorial oscillation, Icarus, vol.354, pp. 114042 (2021)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.114042 &lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A. and  Guerlet, S., Joint evolution of equatorial oscillation and inter-hemispheric circulation in Saturn’s stratosphere, Nature Astronomy (2022)&lt;br /&gt;
DOI: 10.1038/s41550-022-01670-7&lt;br /&gt;
&lt;br /&gt;
''' Saturn's large-scale vortices analysis in its tropospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Donnelly, P. T.; Spiga, A.; Guerlet, S.; James, M. K. and Bardet, D., Global climate modelling of Saturn's atmosphere, Part V: Large-scale vortices, Icarus, vol.425, pp.116302 (2025)&lt;br /&gt;
DOI: 10.1016/j.icarus.2024.116302&lt;br /&gt;
&lt;br /&gt;
=== Jupiter ===&lt;br /&gt;
''' Jupiter radiative transfer model '''&lt;br /&gt;
&lt;br /&gt;
Guerlet, S.;  Spiga, A.;  Delattre, H. and  Fouchet, T., Radiative-equilibrium model of Jupiter's atmosphere and application to estimating stratospheric circulations, Icarus, vol.351, pp. 113935 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113935&lt;br /&gt;
&lt;br /&gt;
''' Jupiter's tropospheric circulation with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Boissinot, A.; Spiga, A.; Guerlet, S.; Cabanes, S. and Bardet, D., Global climate modeling of the Jupiter troposphere and effect of dry and moist convection on jets, Astronomy and Astrophysics, vol.687, pp.A274 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202245220&lt;br /&gt;
&lt;br /&gt;
== Ice giants ==&lt;br /&gt;
Clément, N.; Leconte, J.; Spiga, A.; Guerlet, S.; Selsis, F.; Milcareck, G.; Teinturier, L.; Cavalié, T.; Moreno, R.; Lellouch, E. and Carrión-González, Ó., Storms and convection on Uranus and Neptune: Impact of methane abundance revealed by a 3D cloud-resolving model, Astronomy and Astrophysics, vol.690, pp.A227 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202348936&lt;br /&gt;
&lt;br /&gt;
Milcareck, G.; Guerlet, S.; Montmessin, F.; Spiga, A.; Leconte, J.; Millour, E.; Clément, N.; Fletcher, L. N.; Roman, M. T.; Lellouch, E.; Moreno, R.; Cavalié, T. and Carrión-González, Ó., Radiative-convective models of the atmospheres of Uranus and Neptune: Heating sources and seasonal effects, Astronomy and Astrophysics, vol.686, pp.A303 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202348987&lt;br /&gt;
&lt;br /&gt;
=== Uranus ===&lt;br /&gt;
&lt;br /&gt;
=== Neptune ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2727</id>
		<title>How to Cite</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2727"/>
				<updated>2025-04-30T12:42:31Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* gas giants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Main reference to cite the Generic PCM =&lt;br /&gt;
&lt;br /&gt;
* Forget et al., 2022-2023 (the documentation will be officially released at the time of the Forget et al. publication)&lt;br /&gt;
&lt;br /&gt;
= How to cite? (process by process) =&lt;br /&gt;
&lt;br /&gt;
== Slab ocean ==&lt;br /&gt;
&lt;br /&gt;
Codron, Francis., Ekman heat transport for slab oceans, Climate Dynamics 38: 379-389 (2012)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
== CO2 ice clouds ==&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
== etc. ==&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
= List of all references (using the Generic PCM) =&lt;br /&gt;
&lt;br /&gt;
=== terrestrial exoplanets ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Forget, F.; Selsis, F.; Millour, E.; Charnay, B. and Madeleine, J.-B., Gliese 581d is the First Discovered Terrestrial-mass Exoplanet in the Habitable Zone, The Astrophysical Journal, vol.733, pp.L48 (2011)&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
Bolmont, E.; Libert, A. S.; Leconte, J.; &amp;amp; Selsis, F., Habitability of planets on eccentric orbits: Limits of the mean flux approximation, Astronomy &amp;amp; Astrophysics, vol.591, pp.A106 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Leconte, J.; Selsis, F.; Bolmont, E.; Forget, F.; Ribas, I.; Raymond, S. N. and Anglada-Escudé, G., The habitability of Proxima Centauri b. II. Possible climates and observability, Astronomy and Astrophysics, vol.596, pp.A112 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Leconte, J.; Charnay, B. and Tobie, G., CO2 condensation is a serious limit to the deglaciation of Earth-like planets, Earth and Planetary Science Letters, vol.476, pp.11 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Leconte, J.; Forget, F.; Selsis, F.; Tobie, G.; Caldas, A.; Naar, J. and Gillon, M., Modeling climate diversity, tidal dynamics and the fate of volatiles on TRAPPIST-1 planets, Astronomy and Astrophysics, vol.612, pp.A86 (2018)&lt;br /&gt;
&lt;br /&gt;
Fauchez, T. J.; Turbet, M.; Villanueva, G. L.; Wolf, E. T.; Arney, G.; Kopparapu, R. K.; Lincowski, A.; Mandell, A.; de Wit, J.; Pidhorodetska, D.; Domagal-Goldman, S. D. and Stevenson, K. B., Impact of Clouds and Hazes on the Simulated JWST Transmission Spectra of Habitable Zone Planets in the TRAPPIST-1 System, The Astrophysical Journal, vol.887, pp.194 (2019)&lt;br /&gt;
&lt;br /&gt;
=== super-Earths ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptunes ===&lt;br /&gt;
&lt;br /&gt;
Benjamin's two papers on GJ1214b&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Blain, D.; Bézard, B.; Leconte, J.; Turbet, M. and Falco, A., Formation and dynamics of water clouds on temperate sub-Neptunes: the example of K2-18b, Astronomy and Astrophysics, vol.646, pp.A171 (2021)&lt;br /&gt;
&lt;br /&gt;
=== LES ===&lt;br /&gt;
Lefèvre, M.; Turbet, M. and Pierrehumbert, R., 3D Convection-resolving Model of Temperate, Tidally Locked Exoplanets, The Astrophysical Journal, vol.913, pp.101 (2021)&lt;br /&gt;
&lt;br /&gt;
== paleoclimates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Le Hir, G.; Fluteau, F.; Forget, F. and Catling, D. C., A warm or a cold early Earth? New insights from a 3-D climate-carbon model, Earth and Planetary Science Letters, vol.474, pp.97 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Mars ===&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R.; Forget, F.; Millour, E.; Head, J. W.; Madeleine, J. B. and Charnay, B., Global modelling of the early martian climate under a denser CO2 atmosphere: Water cycle and ice evolution, Icarus, vol.222, pp.1 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Kerber, L.; Pierrehumbert, R. T.; Forget, F. and Head, J. W., Comparison of &amp;quot;warm and wet&amp;quot; and &amp;quot;cold and icy&amp;quot; scenarios for early Mars in a 3-D climate model, Journal of Geophysical Research (Planets), vol.120, pp.1201 (2015)&lt;br /&gt;
&lt;br /&gt;
Kerber, L.; Forget, F. and Wordsworth, R., Sulfur in the early martian atmosphere revisited: Experiments with a 3-D Global Climate Model, Icarus, vol.261, pp.133 (2015)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Head, J. W. and Wordsworth, R., 3D modelling of the climatic impact of outflow channel formation events on early Mars, Icarus, vol.288, pp.10 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M. and Forget, F., The paradoxes of the Late Hesperian Mars ocean, Scientific Reports, vol.9, pp.5717 (2019)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Gillmann, C.; Forget, F.; Baudin, B.; Palumbo, A.; Head, J. and Karatekin, O., The environmental effects of very large bolide impacts on early Mars explored with a hierarchy of numerical models, Icarus, vol.335, pp.113419 (2020)&lt;br /&gt;
&lt;br /&gt;
=== Venus ===&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Titan ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Tobie, G.; Sotin, C. and Wordsworth, R., Titan's past and future: 3D modeling of a pure nitrogen atmosphere and geological implications, Icarus, vol.241, pp.269 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.07.009&lt;br /&gt;
&lt;br /&gt;
== future climates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R. and Pottier, A., Increased insolation threshold for runaway greenhouse processes on Earth-like planets, Nature, vol.504, pp.268 (2013)&lt;br /&gt;
&lt;br /&gt;
== gas giants ==&lt;br /&gt;
&lt;br /&gt;
=== Saturn ===&lt;br /&gt;
&lt;br /&gt;
''' Saturn radiative transfer model '''&lt;br /&gt;
&lt;br /&gt;
Guerlet, S.; Spiga, A.; Sylvestre, M.; Indurain, M.; Fouchet, T.; Leconte, J.; Millour, E.; Wordsworth, R.; Capderou, M.; Bézard, B. and Forget, F., Global climate modeling of Saturn’s atmosphere. Part I: Evaluation of the radiative transfer model, Icarus, vol.238, pp.110 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.05.010&lt;br /&gt;
&lt;br /&gt;
''' Saturn's tropospheric dynamics with DYNAMICO Generic-PCM  '''&lt;br /&gt;
&lt;br /&gt;
Spiga, A.; Guerlet, S.; Millour, E.; Indurain, M.; Meurdesoif, Y.; Cabanes, S.; Dubos, T.; Leconte, J.; Boissinot, A.; Lebonnois, S.; Sylvestre, M. and Fouchet, T., Global climate modeling of Saturn's atmosphere. Part II: Multi-annual high-resolution dynamical simulations, Icarus, vol.335, pp.113377 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2019.07.011&lt;br /&gt;
&lt;br /&gt;
''' Saturn's statistical analysis of the zonostrophic tropospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Cabanes, S.; Spiga, A. and Young, R. M. B ., Global climate modeling of Saturn's atmosphere. Part III: Global statistical picture of zonostrophic turbulence in high-resolution 3D-turbulent simulations, Icarus, vol.345, pp. 113705 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113705&lt;br /&gt;
&lt;br /&gt;
''' Saturn's stratospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A.;  Guerlet, S.;  Cabanes, S.;  Millour, E. and Boissinot, A., Global climate modeling of Saturn's atmosphere. Part IV: Stratospheric equatorial oscillation, Icarus, vol.354, pp. 114042 (2021)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.114042 &lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A. and  Guerlet, S., Joint evolution of equatorial oscillation and inter-hemispheric circulation in Saturn’s stratosphere, Nature Astronomy (2022)&lt;br /&gt;
DOI: 10.1038/s41550-022-01670-7&lt;br /&gt;
&lt;br /&gt;
''' Saturn's large-scale vortices analysis in its tropospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Donnelly, P. T.; Spiga, A.; Guerlet, S.; James, M. K. and Bardet, D., Global climate modelling of Saturn's atmosphere, Part V: Large-scale vortices, Icarus, vol.425, pp.116302 (2025)&lt;br /&gt;
DOI: 10.1016/j.icarus.2024.116302&lt;br /&gt;
&lt;br /&gt;
=== Jupiter ===&lt;br /&gt;
''' Jupiter radiative transfer model '''&lt;br /&gt;
&lt;br /&gt;
Guerlet, S.;  Spiga, A.;  Delattre, H. and  Fouchet, T., Radiative-equilibrium model of Jupiter's atmosphere and application to estimating stratospheric circulations, Icarus, vol.351, pp. 113935 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113935&lt;br /&gt;
&lt;br /&gt;
''' Jupiter's tropospheric circulation with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Boissinot, A.; Spiga, A.; Guerlet, S.; Cabanes, S. and Bardet, D., Global climate modeling of the Jupiter troposphere and effect of dry and moist convection on jets, Astronomy and Astrophysics, vol.687, pp.A274 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202245220&lt;br /&gt;
&lt;br /&gt;
=== Uranus ===&lt;br /&gt;
&lt;br /&gt;
=== Neptune ===&lt;br /&gt;
Clément, N.; Leconte, J.; Spiga, A.; Guerlet, S.; Selsis, F.; Milcareck, G.; Teinturier, L.; Cavalié, T.; Moreno, R.; Lellouch, E. and Carrión-González, Ó., Storms and convection on Uranus and Neptune: Impact of methane abundance revealed by a 3D cloud-resolving model, Astronomy and Astrophysics, vol.690, pp.A227 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202348936&lt;br /&gt;
&lt;br /&gt;
Milcareck, G.; Guerlet, S.; Montmessin, F.; Spiga, A.; Leconte, J.; Millour, E.; Clément, N.; Fletcher, L. N.; Roman, M. T.; Lellouch, E.; Moreno, R.; Cavalié, T. and Carrión-González, Ó., Radiative-convective models of the atmospheres of Uranus and Neptune: Heating sources and seasonal effects, Astronomy and Astrophysics, vol.686, pp.A303 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202348987&lt;br /&gt;
&lt;br /&gt;
[[Category:Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2722</id>
		<title>How to Cite</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2722"/>
				<updated>2025-04-30T10:09:56Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* gas giants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Main reference to cite the Generic PCM =&lt;br /&gt;
&lt;br /&gt;
* Forget et al., 2022-2023 (the documentation will be officially released at the time of the Forget et al. publication)&lt;br /&gt;
&lt;br /&gt;
= How to cite? (process by process) =&lt;br /&gt;
&lt;br /&gt;
== Slab ocean ==&lt;br /&gt;
&lt;br /&gt;
Codron, Francis., Ekman heat transport for slab oceans, Climate Dynamics 38: 379-389 (2012)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
== CO2 ice clouds ==&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
== etc. ==&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
= List of all references (using the Generic PCM) =&lt;br /&gt;
&lt;br /&gt;
=== terrestrial exoplanets ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Forget, F.; Selsis, F.; Millour, E.; Charnay, B. and Madeleine, J.-B., Gliese 581d is the First Discovered Terrestrial-mass Exoplanet in the Habitable Zone, The Astrophysical Journal, vol.733, pp.L48 (2011)&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
Bolmont, E.; Libert, A. S.; Leconte, J.; &amp;amp; Selsis, F., Habitability of planets on eccentric orbits: Limits of the mean flux approximation, Astronomy &amp;amp; Astrophysics, vol.591, pp.A106 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Leconte, J.; Selsis, F.; Bolmont, E.; Forget, F.; Ribas, I.; Raymond, S. N. and Anglada-Escudé, G., The habitability of Proxima Centauri b. II. Possible climates and observability, Astronomy and Astrophysics, vol.596, pp.A112 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Leconte, J.; Charnay, B. and Tobie, G., CO2 condensation is a serious limit to the deglaciation of Earth-like planets, Earth and Planetary Science Letters, vol.476, pp.11 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Leconte, J.; Forget, F.; Selsis, F.; Tobie, G.; Caldas, A.; Naar, J. and Gillon, M., Modeling climate diversity, tidal dynamics and the fate of volatiles on TRAPPIST-1 planets, Astronomy and Astrophysics, vol.612, pp.A86 (2018)&lt;br /&gt;
&lt;br /&gt;
Fauchez, T. J.; Turbet, M.; Villanueva, G. L.; Wolf, E. T.; Arney, G.; Kopparapu, R. K.; Lincowski, A.; Mandell, A.; de Wit, J.; Pidhorodetska, D.; Domagal-Goldman, S. D. and Stevenson, K. B., Impact of Clouds and Hazes on the Simulated JWST Transmission Spectra of Habitable Zone Planets in the TRAPPIST-1 System, The Astrophysical Journal, vol.887, pp.194 (2019)&lt;br /&gt;
&lt;br /&gt;
=== super-Earths ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptunes ===&lt;br /&gt;
&lt;br /&gt;
Benjamin's two papers on GJ1214b&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Blain, D.; Bézard, B.; Leconte, J.; Turbet, M. and Falco, A., Formation and dynamics of water clouds on temperate sub-Neptunes: the example of K2-18b, Astronomy and Astrophysics, vol.646, pp.A171 (2021)&lt;br /&gt;
&lt;br /&gt;
=== LES ===&lt;br /&gt;
Lefèvre, M.; Turbet, M. and Pierrehumbert, R., 3D Convection-resolving Model of Temperate, Tidally Locked Exoplanets, The Astrophysical Journal, vol.913, pp.101 (2021)&lt;br /&gt;
&lt;br /&gt;
== paleoclimates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Le Hir, G.; Fluteau, F.; Forget, F. and Catling, D. C., A warm or a cold early Earth? New insights from a 3-D climate-carbon model, Earth and Planetary Science Letters, vol.474, pp.97 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Mars ===&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R.; Forget, F.; Millour, E.; Head, J. W.; Madeleine, J. B. and Charnay, B., Global modelling of the early martian climate under a denser CO2 atmosphere: Water cycle and ice evolution, Icarus, vol.222, pp.1 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Kerber, L.; Pierrehumbert, R. T.; Forget, F. and Head, J. W., Comparison of &amp;quot;warm and wet&amp;quot; and &amp;quot;cold and icy&amp;quot; scenarios for early Mars in a 3-D climate model, Journal of Geophysical Research (Planets), vol.120, pp.1201 (2015)&lt;br /&gt;
&lt;br /&gt;
Kerber, L.; Forget, F. and Wordsworth, R., Sulfur in the early martian atmosphere revisited: Experiments with a 3-D Global Climate Model, Icarus, vol.261, pp.133 (2015)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Head, J. W. and Wordsworth, R., 3D modelling of the climatic impact of outflow channel formation events on early Mars, Icarus, vol.288, pp.10 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M. and Forget, F., The paradoxes of the Late Hesperian Mars ocean, Scientific Reports, vol.9, pp.5717 (2019)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Gillmann, C.; Forget, F.; Baudin, B.; Palumbo, A.; Head, J. and Karatekin, O., The environmental effects of very large bolide impacts on early Mars explored with a hierarchy of numerical models, Icarus, vol.335, pp.113419 (2020)&lt;br /&gt;
&lt;br /&gt;
=== Venus ===&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Titan ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Tobie, G.; Sotin, C. and Wordsworth, R., Titan's past and future: 3D modeling of a pure nitrogen atmosphere and geological implications, Icarus, vol.241, pp.269 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.07.009&lt;br /&gt;
&lt;br /&gt;
== future climates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R. and Pottier, A., Increased insolation threshold for runaway greenhouse processes on Earth-like planets, Nature, vol.504, pp.268 (2013)&lt;br /&gt;
&lt;br /&gt;
== gas giants ==&lt;br /&gt;
&lt;br /&gt;
=== Saturn ===&lt;br /&gt;
&lt;br /&gt;
''' Saturn radiative transfer model '''&lt;br /&gt;
&lt;br /&gt;
Guerlet, S.; Spiga, A.; Sylvestre, M.; Indurain, M.; Fouchet, T.; Leconte, J.; Millour, E.; Wordsworth, R.; Capderou, M.; Bézard, B. and Forget, F., Global climate modeling of Saturn’s atmosphere. Part I: Evaluation of the radiative transfer model, Icarus, vol.238, pp.110 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.05.010&lt;br /&gt;
&lt;br /&gt;
''' Saturn's tropospheric dynamics with DYNAMICO Generic-PCM  '''&lt;br /&gt;
&lt;br /&gt;
Spiga, A.; Guerlet, S.; Millour, E.; Indurain, M.; Meurdesoif, Y.; Cabanes, S.; Dubos, T.; Leconte, J.; Boissinot, A.; Lebonnois, S.; Sylvestre, M. and Fouchet, T., Global climate modeling of Saturn's atmosphere. Part II: Multi-annual high-resolution dynamical simulations, Icarus, vol.335, pp.113377 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2019.07.011&lt;br /&gt;
&lt;br /&gt;
''' Saturn's statistical analysis of the zonostrophic tropospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Cabanes, S.; Spiga, A. and Young, R. M. B ., Global climate modeling of Saturn's atmosphere. Part III: Global statistical picture of zonostrophic turbulence in high-resolution 3D-turbulent simulations, Icarus, vol.345, pp. 113705 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113705&lt;br /&gt;
&lt;br /&gt;
''' Saturn's stratospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A.;  Guerlet, S.;  Cabanes, S.;  Millour, E. and Boissinot, A., Global climate modeling of Saturn's atmosphere. Part IV: Stratospheric equatorial oscillation, Icarus, vol.354, pp. 114042 (2021)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.114042 &lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A. and  Guerlet, S., Joint evolution of equatorial oscillation and inter-hemispheric circulation in Saturn’s stratosphere, Nature Astronomy (2022)&lt;br /&gt;
DOI: 10.1038/s41550-022-01670-7&lt;br /&gt;
&lt;br /&gt;
''' Saturn's large-scale vortices analysis in its tropospheric dynamics with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Donnelly, P. T.; Spiga, A.; Guerlet, S.; James, M. K. and Bardet, D., Global climate modelling of Saturn's atmosphere, Part V: Large-scale vortices, Icarus, vol.425, pp.116302 (2025)&lt;br /&gt;
DOI: 10.1016/j.icarus.2024.116302&lt;br /&gt;
&lt;br /&gt;
=== Jupiter ===&lt;br /&gt;
''' Jupiter radiative transfer model '''&lt;br /&gt;
&lt;br /&gt;
Guerlet, S.;  Spiga, A.;  Delattre, H. and  Fouchet, T., Radiative-equilibrium model of Jupiter's atmosphere and application to estimating stratospheric circulations, Icarus, vol.351, pp. 113935 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113935&lt;br /&gt;
&lt;br /&gt;
''' Jupiter's tropospheric circulation with DYNAMICO Generic-PCM '''&lt;br /&gt;
&lt;br /&gt;
Boissinot, A.; Spiga, A.; Guerlet, S.; Cabanes, S. and Bardet, D., Global climate modeling of the Jupiter troposphere and effect of dry and moist convection on jets, Astronomy and Astrophysics, vol.687, pp.A274 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202245220&lt;br /&gt;
&lt;br /&gt;
=== Uranus ===&lt;br /&gt;
&lt;br /&gt;
=== Neptune ===&lt;br /&gt;
&lt;br /&gt;
Milcareck, G.; Guerlet, S.; Montmessin, F.; Spiga, A.; Leconte, J.; Millour, E.; Clément, N.; Fletcher, L. N.; Roman, M. T.; Lellouch, E.; Moreno, R.; Cavalié, T. and Carrión-González, Ó., Radiative-convective models of the atmospheres of Uranus and Neptune: Heating sources and seasonal effects, Astronomy and Astrophysics, vol.686, pp.A303 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202348987&lt;br /&gt;
&lt;br /&gt;
[[Category:Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2718</id>
		<title>How to Cite</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2718"/>
				<updated>2025-04-30T09:56:38Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* gas giants */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Main reference to cite the Generic PCM =&lt;br /&gt;
&lt;br /&gt;
* Forget et al., 2022-2023 (the documentation will be officially released at the time of the Forget et al. publication)&lt;br /&gt;
&lt;br /&gt;
= How to cite? (process by process) =&lt;br /&gt;
&lt;br /&gt;
== Slab ocean ==&lt;br /&gt;
&lt;br /&gt;
Codron, Francis., Ekman heat transport for slab oceans, Climate Dynamics 38: 379-389 (2012)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
== CO2 ice clouds ==&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
== etc. ==&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
= List of all references (using the Generic PCM) =&lt;br /&gt;
&lt;br /&gt;
=== terrestrial exoplanets ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Forget, F.; Selsis, F.; Millour, E.; Charnay, B. and Madeleine, J.-B., Gliese 581d is the First Discovered Terrestrial-mass Exoplanet in the Habitable Zone, The Astrophysical Journal, vol.733, pp.L48 (2011)&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
Bolmont, E.; Libert, A. S.; Leconte, J.; &amp;amp; Selsis, F., Habitability of planets on eccentric orbits: Limits of the mean flux approximation, Astronomy &amp;amp; Astrophysics, vol.591, pp.A106 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Leconte, J.; Selsis, F.; Bolmont, E.; Forget, F.; Ribas, I.; Raymond, S. N. and Anglada-Escudé, G., The habitability of Proxima Centauri b. II. Possible climates and observability, Astronomy and Astrophysics, vol.596, pp.A112 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Leconte, J.; Charnay, B. and Tobie, G., CO2 condensation is a serious limit to the deglaciation of Earth-like planets, Earth and Planetary Science Letters, vol.476, pp.11 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Leconte, J.; Forget, F.; Selsis, F.; Tobie, G.; Caldas, A.; Naar, J. and Gillon, M., Modeling climate diversity, tidal dynamics and the fate of volatiles on TRAPPIST-1 planets, Astronomy and Astrophysics, vol.612, pp.A86 (2018)&lt;br /&gt;
&lt;br /&gt;
Fauchez, T. J.; Turbet, M.; Villanueva, G. L.; Wolf, E. T.; Arney, G.; Kopparapu, R. K.; Lincowski, A.; Mandell, A.; de Wit, J.; Pidhorodetska, D.; Domagal-Goldman, S. D. and Stevenson, K. B., Impact of Clouds and Hazes on the Simulated JWST Transmission Spectra of Habitable Zone Planets in the TRAPPIST-1 System, The Astrophysical Journal, vol.887, pp.194 (2019)&lt;br /&gt;
&lt;br /&gt;
=== super-Earths ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptunes ===&lt;br /&gt;
&lt;br /&gt;
Benjamin's two papers on GJ1214b&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Blain, D.; Bézard, B.; Leconte, J.; Turbet, M. and Falco, A., Formation and dynamics of water clouds on temperate sub-Neptunes: the example of K2-18b, Astronomy and Astrophysics, vol.646, pp.A171 (2021)&lt;br /&gt;
&lt;br /&gt;
=== LES ===&lt;br /&gt;
Lefèvre, M.; Turbet, M. and Pierrehumbert, R., 3D Convection-resolving Model of Temperate, Tidally Locked Exoplanets, The Astrophysical Journal, vol.913, pp.101 (2021)&lt;br /&gt;
&lt;br /&gt;
== paleoclimates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Le Hir, G.; Fluteau, F.; Forget, F. and Catling, D. C., A warm or a cold early Earth? New insights from a 3-D climate-carbon model, Earth and Planetary Science Letters, vol.474, pp.97 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Mars ===&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R.; Forget, F.; Millour, E.; Head, J. W.; Madeleine, J. B. and Charnay, B., Global modelling of the early martian climate under a denser CO2 atmosphere: Water cycle and ice evolution, Icarus, vol.222, pp.1 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Kerber, L.; Pierrehumbert, R. T.; Forget, F. and Head, J. W., Comparison of &amp;quot;warm and wet&amp;quot; and &amp;quot;cold and icy&amp;quot; scenarios for early Mars in a 3-D climate model, Journal of Geophysical Research (Planets), vol.120, pp.1201 (2015)&lt;br /&gt;
&lt;br /&gt;
Kerber, L.; Forget, F. and Wordsworth, R., Sulfur in the early martian atmosphere revisited: Experiments with a 3-D Global Climate Model, Icarus, vol.261, pp.133 (2015)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Head, J. W. and Wordsworth, R., 3D modelling of the climatic impact of outflow channel formation events on early Mars, Icarus, vol.288, pp.10 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M. and Forget, F., The paradoxes of the Late Hesperian Mars ocean, Scientific Reports, vol.9, pp.5717 (2019)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Gillmann, C.; Forget, F.; Baudin, B.; Palumbo, A.; Head, J. and Karatekin, O., The environmental effects of very large bolide impacts on early Mars explored with a hierarchy of numerical models, Icarus, vol.335, pp.113419 (2020)&lt;br /&gt;
&lt;br /&gt;
=== Venus ===&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Titan ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Tobie, G.; Sotin, C. and Wordsworth, R., Titan's past and future: 3D modeling of a pure nitrogen atmosphere and geological implications, Icarus, vol.241, pp.269 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.07.009&lt;br /&gt;
&lt;br /&gt;
== future climates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R. and Pottier, A., Increased insolation threshold for runaway greenhouse processes on Earth-like planets, Nature, vol.504, pp.268 (2013)&lt;br /&gt;
&lt;br /&gt;
== gas giants ==&lt;br /&gt;
&lt;br /&gt;
=== Saturn ===&lt;br /&gt;
&lt;br /&gt;
==== Saturn radiative transfer model ====&lt;br /&gt;
Guerlet, S.; Spiga, A.; Sylvestre, M.; Indurain, M.; Fouchet, T.; Leconte, J.; Millour, E.; Wordsworth, R.; Capderou, M.; Bézard, B. and Forget, F., Global climate modeling of Saturn’s atmosphere. Part I: Evaluation of the radiative transfer model, Icarus, vol.238, pp.110 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.05.010&lt;br /&gt;
&lt;br /&gt;
==== Saturn's tropospheric dynamics with DYNAMICO Generic-PCM  ====&lt;br /&gt;
Spiga, A.; Guerlet, S.; Millour, E.; Indurain, M.; Meurdesoif, Y.; Cabanes, S.; Dubos, T.; Leconte, J.; Boissinot, A.; Lebonnois, S.; Sylvestre, M. and Fouchet, T., Global climate modeling of Saturn's atmosphere. Part II: Multi-annual high-resolution dynamical simulations, Icarus, vol.335, pp.113377 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2019.07.011&lt;br /&gt;
&lt;br /&gt;
==== Saturn's statistical analysis of the zonostrophic tropospheric dynamics with DYNAMICO Generic-PCM ====&lt;br /&gt;
Cabanes, S.; Spiga, A. and Young, R. M. B ., Global climate modeling of Saturn's atmosphere. Part III: Global statistical picture of zonostrophic turbulence in high-resolution 3D-turbulent simulations, Icarus, vol.345, pp. 113705 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113705&lt;br /&gt;
&lt;br /&gt;
==== Saturn's stratospheric dynamics with DYNAMICO Generic-PCM ====&lt;br /&gt;
Bardet, D.;  Spiga, A.;  Guerlet, S.;  Cabanes, S.;  Millour, E. and Boissinot, A., Global climate modeling of Saturn's atmosphere. Part IV: Stratospheric equatorial oscillation, Icarus, vol.354, pp. 114042 (2021)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.114042 &lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A. and  Guerlet, S., Joint evolution of equatorial oscillation and inter-hemispheric circulation in Saturn’s stratosphere, Nature Astronomy (2022)&lt;br /&gt;
DOI: 10.1038/s41550-022-01670-7&lt;br /&gt;
&lt;br /&gt;
==== Saturn's large-scale vortices analysis in its tropospheric dynamics with DYNAMICO Generic-PCM ====&lt;br /&gt;
Donnelly, P. T.; Spiga, A.; Guerlet, S.; James, M. K. and Bardet, D., Global climate modelling of Saturn's atmosphere, Part V: Large-scale vortices, Icarus, vol.425, pp.116302 (2025)&lt;br /&gt;
DOI: 10.1016/j.icarus.2024.116302&lt;br /&gt;
&lt;br /&gt;
=== Jupiter ===&lt;br /&gt;
==== Jupiter radiative transfer model ====&lt;br /&gt;
Guerlet, S.;  Spiga, A.;  Delattre, H. and  Fouchet, T., Radiative-equilibrium model of Jupiter's atmosphere and application to estimating stratospheric circulations, Icarus, vol.351, pp. 113935 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113935&lt;br /&gt;
&lt;br /&gt;
==== Jupiter's tropospheric circulation with DYNAMICO Generic-PCM ====&lt;br /&gt;
Boissinot, A.; Spiga, A.; Guerlet, S.; Cabanes, S. and Bardet, D., Global climate modeling of the Jupiter troposphere and effect of dry and moist convection on jets, Astronomy and Astrophysics, vol.687, pp.A274 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202245220&lt;br /&gt;
&lt;br /&gt;
=== Uranus ===&lt;br /&gt;
&lt;br /&gt;
=== Neptune ===&lt;br /&gt;
&lt;br /&gt;
Milcareck, G.; Guerlet, S.; Montmessin, F.; Spiga, A.; Leconte, J.; Millour, E.; Clément, N.; Fletcher, L. N.; Roman, M. T.; Lellouch, E.; Moreno, R.; Cavalié, T. and Carrión-González, Ó., Radiative-convective models of the atmospheres of Uranus and Neptune: Heating sources and seasonal effects, Astronomy and Astrophysics, vol.686, pp.A303 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202348987&lt;br /&gt;
&lt;br /&gt;
[[Category:Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2716</id>
		<title>How to Cite</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=How_to_Cite&amp;diff=2716"/>
				<updated>2025-04-30T09:48:45Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Jupiter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Main reference to cite the Generic PCM =&lt;br /&gt;
&lt;br /&gt;
* Forget et al., 2022-2023 (the documentation will be officially released at the time of the Forget et al. publication)&lt;br /&gt;
&lt;br /&gt;
= How to cite? (process by process) =&lt;br /&gt;
&lt;br /&gt;
== Slab ocean ==&lt;br /&gt;
&lt;br /&gt;
Codron, Francis., Ekman heat transport for slab oceans, Climate Dynamics 38: 379-389 (2012)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
== CO2 ice clouds ==&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
== etc. ==&lt;br /&gt;
&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
= List of all references (using the Generic PCM) =&lt;br /&gt;
&lt;br /&gt;
=== terrestrial exoplanets ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Forget, F.; Selsis, F.; Millour, E.; Charnay, B. and Madeleine, J.-B., Gliese 581d is the First Discovered Terrestrial-mass Exoplanet in the Habitable Zone, The Astrophysical Journal, vol.733, pp.L48 (2011)&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
Bolmont, E.; Libert, A. S.; Leconte, J.; &amp;amp; Selsis, F., Habitability of planets on eccentric orbits: Limits of the mean flux approximation, Astronomy &amp;amp; Astrophysics, vol.591, pp.A106 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Leconte, J.; Selsis, F.; Bolmont, E.; Forget, F.; Ribas, I.; Raymond, S. N. and Anglada-Escudé, G., The habitability of Proxima Centauri b. II. Possible climates and observability, Astronomy and Astrophysics, vol.596, pp.A112 (2016)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Leconte, J.; Charnay, B. and Tobie, G., CO2 condensation is a serious limit to the deglaciation of Earth-like planets, Earth and Planetary Science Letters, vol.476, pp.11 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Leconte, J.; Forget, F.; Selsis, F.; Tobie, G.; Caldas, A.; Naar, J. and Gillon, M., Modeling climate diversity, tidal dynamics and the fate of volatiles on TRAPPIST-1 planets, Astronomy and Astrophysics, vol.612, pp.A86 (2018)&lt;br /&gt;
&lt;br /&gt;
Fauchez, T. J.; Turbet, M.; Villanueva, G. L.; Wolf, E. T.; Arney, G.; Kopparapu, R. K.; Lincowski, A.; Mandell, A.; de Wit, J.; Pidhorodetska, D.; Domagal-Goldman, S. D. and Stevenson, K. B., Impact of Clouds and Hazes on the Simulated JWST Transmission Spectra of Habitable Zone Planets in the TRAPPIST-1 System, The Astrophysical Journal, vol.887, pp.194 (2019)&lt;br /&gt;
&lt;br /&gt;
=== super-Earths ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R.; Selsis, F.; Millour, E. and Spiga, A., 3D climate modeling of close-in land planets: Circulation patterns, climate moist bistability, and habitability, Astronomy and Astrophysics, vol.554, pp.A69 (2013)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptunes ===&lt;br /&gt;
&lt;br /&gt;
Benjamin's two papers on GJ1214b&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Blain, D.; Bézard, B.; Leconte, J.; Turbet, M. and Falco, A., Formation and dynamics of water clouds on temperate sub-Neptunes: the example of K2-18b, Astronomy and Astrophysics, vol.646, pp.A171 (2021)&lt;br /&gt;
&lt;br /&gt;
=== LES ===&lt;br /&gt;
Lefèvre, M.; Turbet, M. and Pierrehumbert, R., 3D Convection-resolving Model of Temperate, Tidally Locked Exoplanets, The Astrophysical Journal, vol.913, pp.101 (2021)&lt;br /&gt;
&lt;br /&gt;
== paleoclimates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Wordsworth, R.; Leconte, J.; Millour, E.; Codron, F. and Spiga, A., Exploring the faint young Sun problem and the possible climates of the Archean Earth with a 3-D GCM, Journal of Geophysical Research (Atmospheres), vol.118, pp.10,414 (2013)&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Le Hir, G.; Fluteau, F.; Forget, F. and Catling, D. C., A warm or a cold early Earth? New insights from a 3-D climate-carbon model, Earth and Planetary Science Letters, vol.474, pp.97 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Mars ===&lt;br /&gt;
&lt;br /&gt;
Forget, F.; Wordsworth, R.; Millour, E.; Madeleine, J. B.; Kerber, L.; Leconte, J.; Marcq, E. and Haberle, R. M., 3D modelling of the early martian climate under a denser CO2 atmosphere: Temperatures and CO2 ice clouds, Icarus, vol.222, pp.81 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R.; Forget, F.; Millour, E.; Head, J. W.; Madeleine, J. B. and Charnay, B., Global modelling of the early martian climate under a denser CO2 atmosphere: Water cycle and ice evolution, Icarus, vol.222, pp.1 (2013)&lt;br /&gt;
&lt;br /&gt;
Wordsworth, R. D.; Kerber, L.; Pierrehumbert, R. T.; Forget, F. and Head, J. W., Comparison of &amp;quot;warm and wet&amp;quot; and &amp;quot;cold and icy&amp;quot; scenarios for early Mars in a 3-D climate model, Journal of Geophysical Research (Planets), vol.120, pp.1201 (2015)&lt;br /&gt;
&lt;br /&gt;
Kerber, L.; Forget, F. and Wordsworth, R., Sulfur in the early martian atmosphere revisited: Experiments with a 3-D Global Climate Model, Icarus, vol.261, pp.133 (2015)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Forget, F.; Head, J. W. and Wordsworth, R., 3D modelling of the climatic impact of outflow channel formation events on early Mars, Icarus, vol.288, pp.10 (2017)&lt;br /&gt;
&lt;br /&gt;
Turbet, M. and Forget, F., The paradoxes of the Late Hesperian Mars ocean, Scientific Reports, vol.9, pp.5717 (2019)&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Gillmann, C.; Forget, F.; Baudin, B.; Palumbo, A.; Head, J. and Karatekin, O., The environmental effects of very large bolide impacts on early Mars explored with a hierarchy of numerical models, Icarus, vol.335, pp.113419 (2020)&lt;br /&gt;
&lt;br /&gt;
=== Venus ===&lt;br /&gt;
&lt;br /&gt;
Turbet, M.; Bolmont, E.; Chaverot, G.; Ehrenreich, D.; Leconte, J. and Marcq, E., Day-night cloud asymmetry prevents early oceans on Venus but not on Earth, Nature, vol.598, pp.276 (2021)&lt;br /&gt;
&lt;br /&gt;
=== Titan ===&lt;br /&gt;
&lt;br /&gt;
Charnay, B.; Forget, F.; Tobie, G.; Sotin, C. and Wordsworth, R., Titan's past and future: 3D modeling of a pure nitrogen atmosphere and geological implications, Icarus, vol.241, pp.269 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.07.009&lt;br /&gt;
&lt;br /&gt;
== future climates ==&lt;br /&gt;
&lt;br /&gt;
=== Earth ===&lt;br /&gt;
&lt;br /&gt;
Leconte, J.; Forget, F.; Charnay, B.; Wordsworth, R. and Pottier, A., Increased insolation threshold for runaway greenhouse processes on Earth-like planets, Nature, vol.504, pp.268 (2013)&lt;br /&gt;
&lt;br /&gt;
== gas giants ==&lt;br /&gt;
&lt;br /&gt;
=== Saturn ===&lt;br /&gt;
&lt;br /&gt;
==== Saturn radiative transfer model ====&lt;br /&gt;
Guerlet, S.; Spiga, A.; Sylvestre, M.; Indurain, M.; Fouchet, T.; Leconte, J.; Millour, E.; Wordsworth, R.; Capderou, M.; Bézard, B. and Forget, F., Global climate modeling of Saturn’s atmosphere. Part I: Evaluation of the radiative transfer model, Icarus, vol.238, pp.110 (2014)&lt;br /&gt;
DOI: 10.1016/j.icarus.2014.05.010&lt;br /&gt;
&lt;br /&gt;
==== Saturn DYNAMICO GCM tropospheric dynamics ====&lt;br /&gt;
Spiga, A.; Guerlet, S.; Millour, E.; Indurain, M.; Meurdesoif, Y.; Cabanes, S.; Dubos, T.; Leconte, J.; Boissinot, A.; Lebonnois, S.; Sylvestre, M. and Fouchet, T., Global climate modeling of Saturn's atmosphere. Part II: Multi-annual high-resolution dynamical simulations, Icarus, vol.335, pp.113377 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2019.07.011&lt;br /&gt;
&lt;br /&gt;
==== Saturn DYNAMICO GCM statistical analysis of the zonostrophic dynamics ====&lt;br /&gt;
Cabanes, S.; Spiga, A. and Young, R. M. B ., Global climate modeling of Saturn's atmosphere. Part III: Global statistical picture of zonostrophic turbulence in high-resolution 3D-turbulent simulations, Icarus, vol.345, pp. 113705 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113705&lt;br /&gt;
&lt;br /&gt;
==== Saturn DYNAMICO GCM stratospheric dynamics ====&lt;br /&gt;
Bardet, D.;  Spiga, A.;  Guerlet, S.;  Cabanes, S.;  Millour, E. and Boissinot, A., Global climate modeling of Saturn's atmosphere. Part IV: Stratospheric equatorial oscillation, Icarus, vol.354, pp. 114042 (2021)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.114042 &lt;br /&gt;
&lt;br /&gt;
Bardet, D.;  Spiga, A. and  Guerlet, S., Joint evolution of equatorial oscillation and inter-hemispheric circulation in Saturn’s stratosphere, Nature Astronomy (2022)&lt;br /&gt;
DOI: 10.1038/s41550-022-01670-7&lt;br /&gt;
&lt;br /&gt;
=== Jupiter ===&lt;br /&gt;
==== Jupiter radiative transfer model ====&lt;br /&gt;
Guerlet, S.;  Spiga, A.;  Delattre, H. and  Fouchet, T., Radiative-equilibrium model of Jupiter's atmosphere and application to estimating stratospheric circulations, Icarus, vol.351, pp. 113935 (2020)&lt;br /&gt;
DOI: 10.1016/j.icarus.2020.113935&lt;br /&gt;
&lt;br /&gt;
==== Jupiter 3D tropospheric circulation with DYNAMICO Generic-PCM ====&lt;br /&gt;
Boissinot, A.; Spiga, A.; Guerlet, S.; Cabanes, S. and Bardet, D., Global climate modeling of the Jupiter troposphere and effect of dry and moist convection on jets, Astronomy and Astrophysics, vol.687, pp.A274 (2024)&lt;br /&gt;
DOI: 10.1051/0004-6361/202245220&lt;br /&gt;
&lt;br /&gt;
=== Uranus ===&lt;br /&gt;
&lt;br /&gt;
=== Neptune ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2711</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2711"/>
				<updated>2025-04-30T09:22:25Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), this parametrization has been implemented in the Venus PCM (F. LOTT, and S. LEBONNOIS), in the Mars PCM (G.GILLI, F. FORGET and J.LIU), and in the Generic PCM (D.BARDET and J.LIU).&lt;br /&gt;
However, we would like to draw the reader's attention to the fact that there may be some subtle differences from one model to another, which may be specific to Mars and/or Venus. But, the formalism in the Generic model is intended to remain very generic.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* Wave characteristic calculation using MOD&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* Reproducibility of the launching altitude calculation&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Reference papers'''&lt;br /&gt;
&lt;br /&gt;
Lott et al. (2012) [https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2012GL051001]&lt;br /&gt;
Lott and Guez (2013) [https://agupubs.onlinelibrary.wiley.com/doi/full/10.1002/jgrd.50705]&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]] [[Category: Mars-Model]] [[Category: Venus-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2710</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2710"/>
				<updated>2025-04-30T09:18:48Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), this parametrization has been implemented in the Venus PCM (F. LOTT, and S. LEBONNOIS), in the Mars PCM (G.GILLI, F. FORGET and J.LIU), and in the Generic PCM (D.BARDET and J.LIU).&lt;br /&gt;
However, we would like to draw the reader's attention to the fact that there may be some subtle differences from one model to another, which may be specific to Mars and/or Venus. But, the formalism in the Generic model is intended to remain very generic.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* Wave characteristic calculation using MOD&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* Reproducibility of the launching altitude calculation&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Reference papers =====&lt;br /&gt;
Lott et al. (2012) [https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2012GL051001]&lt;br /&gt;
Lott and Guez (2013) [https://agupubs.onlinelibrary.wiley.com/doi/full/10.1002/jgrd.50705]&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]] [[Category: Mars-Model]] [[Category: Venus-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2701</id>
		<title>Physics of the Generic PCM</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2701"/>
				<updated>2025-04-30T09:04:00Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Non-orographic gravity waves  nonoro_gwd_ran_mod.F90 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes the various physical parametrizations of the Generic PCM and the chronology of their call through the physical iteration. This chronology is important because some variables need to be updated by certain processes before others (examples).   &lt;br /&gt;
During one physical iteration, the code passes through multiple sub-routines each encapsulating a parametrization. The sub-routines usually take as arguments:&lt;br /&gt;
*the dynamical values of the state variables&lt;br /&gt;
*the dynamical tendencies of the state variables&lt;br /&gt;
*any additional relevant variable&lt;br /&gt;
*any additional relevant tendency&lt;br /&gt;
and it returns in general tendencies (of the state variables as well as of any other relevant variable).&lt;br /&gt;
&lt;br /&gt;
Work in progress. Need to add links.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Initialization=&lt;br /&gt;
==First call==&lt;br /&gt;
Some initializations only need to be done at the very first iteration (e.g. examples).&lt;br /&gt;
==Each call==&lt;br /&gt;
Some other initializations need to be done at each iteration (e.g. examples).&lt;br /&gt;
&lt;br /&gt;
=Radiative transfer=&lt;br /&gt;
==Correlated-k==&lt;br /&gt;
The main radiative transfer solver of the Generic PCM implements the correlated-k method, which provides a flexible and quick way to solve radiative transfer equations, particularly suited for GCMs. More informations here.&lt;br /&gt;
==Newtonian relaxation==&lt;br /&gt;
Newton was a very relaxed physicist, still inspiring us today.&lt;br /&gt;
==No atmosphere==&lt;br /&gt;
If you have no atmosphere, why do you need a GCM?&lt;br /&gt;
&lt;br /&gt;
=Vertical diffusion=&lt;br /&gt;
Compute the vertical diffusion due to turbulence in the planetary boundary layer&lt;br /&gt;
==vdifc==&lt;br /&gt;
The &amp;quot;old&amp;quot; vertical diffusion routine.&lt;br /&gt;
==turbdiff==&lt;br /&gt;
The new (and improved!) vertical diffusion routine&lt;br /&gt;
&lt;br /&gt;
=Convection=&lt;br /&gt;
Convective mixing in an atmosphere column involves non-resolved, sub-grid processes. These processes are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Thermal plume==&lt;br /&gt;
This module implements a more accurate and sophisticated parametrization of convection. More info [[Thermal_plume_model_Generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Dry convection==&lt;br /&gt;
More info [[Convective_adjustment_scheme_in_the_generic_PCM|here]].&lt;br /&gt;
==Non-orographic gravity waves:  (''nonoro_gwd_ran_mod.F90'') ==&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
&lt;br /&gt;
More info [[Non orographic gravity waves drag|here]].&lt;br /&gt;
&lt;br /&gt;
=CO2 condensation=&lt;br /&gt;
Inheriting from the Mars PCM where it is the background species, CO2 condensation is treated as a dedicated step in the Generic PCM's physics. Does that only concern CO2 as a background gas? Or does it work also if CO2 is a non-background variable gas? In any case more info here.&lt;br /&gt;
&lt;br /&gt;
=Tracers=&lt;br /&gt;
Many things can be advected by tracers in the Generic PCM, like chemical species or aerosols. Physical processes involving tracers are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Volcano==&lt;br /&gt;
This routine parameterizes a source of tracers corresponding to volcanic eruption. More information here.&lt;br /&gt;
&lt;br /&gt;
==Water/ice==&lt;br /&gt;
Water aerosols (liquid or solid) are created (resp. consumed) by condensation (resp. vaporization or sublimation), consuming (resp. releasing) latent heat in the atmosphere. In the Generic PCM, the (atmospheric part of the) water cycle is handled by various routines, as explained here.&lt;br /&gt;
&lt;br /&gt;
==Photochemistry==&lt;br /&gt;
Chemistry can turn molecules into other molecules, by the action of temperature (thermochemistry) or UV light (photochemistry). This is handled by the photochemistry routine, described [[Photochemistry|here]].&lt;br /&gt;
&lt;br /&gt;
==Generic condensation==&lt;br /&gt;
On Earth, only water condenses in the atmosphere, but on other planets (which the Generic PCM aims at simulating), many other chemicals can undergo state change. To take that into account, the Generic PCM has a flexible scheme to deal with any arbitrary species, as desbribed [[Radiative_Generic_Condensable_Specie|here]].&lt;br /&gt;
&lt;br /&gt;
==Sedimentation==&lt;br /&gt;
What goes up must come down, as explained [[Sedimentation_of_tracers_in_the_generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Updates==&lt;br /&gt;
This section essentially takes care that the condensation of a major species (e.g. water vapor in steam-rich atmospheres) affects other species, as described here.&lt;br /&gt;
&lt;br /&gt;
==Slab ocean==&lt;br /&gt;
This routine solves for big fish eating small fish, as described [[Slab_ocean_model|here]].&lt;br /&gt;
&lt;br /&gt;
==Surface==&lt;br /&gt;
The surface part of the water cycle is handled here, as the hydrology page describes.&lt;br /&gt;
&lt;br /&gt;
=Heat Conduction in the Subsurface=&lt;br /&gt;
The conduction of heat in the subsurface is solved as described [[Soil_Thermal_Conduction_in_the_Generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
=Diagnostics/write outputs=&lt;br /&gt;
Nothing very physical here, just writting the outputs! By the way, if you want to know how to output new variables in the [[diagfi.nc]] or [[XIOS]] file, check out [[Outputs|this page]].&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2700</id>
		<title>Physics of the Generic PCM</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2700"/>
				<updated>2025-04-30T09:02:27Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Non-orographic gravity waves  nonoro_gwd_ran_mod.F90 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes the various physical parametrizations of the Generic PCM and the chronology of their call through the physical iteration. This chronology is important because some variables need to be updated by certain processes before others (examples).   &lt;br /&gt;
During one physical iteration, the code passes through multiple sub-routines each encapsulating a parametrization. The sub-routines usually take as arguments:&lt;br /&gt;
*the dynamical values of the state variables&lt;br /&gt;
*the dynamical tendencies of the state variables&lt;br /&gt;
*any additional relevant variable&lt;br /&gt;
*any additional relevant tendency&lt;br /&gt;
and it returns in general tendencies (of the state variables as well as of any other relevant variable).&lt;br /&gt;
&lt;br /&gt;
Work in progress. Need to add links.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Initialization=&lt;br /&gt;
==First call==&lt;br /&gt;
Some initializations only need to be done at the very first iteration (e.g. examples).&lt;br /&gt;
==Each call==&lt;br /&gt;
Some other initializations need to be done at each iteration (e.g. examples).&lt;br /&gt;
&lt;br /&gt;
=Radiative transfer=&lt;br /&gt;
==Correlated-k==&lt;br /&gt;
The main radiative transfer solver of the Generic PCM implements the correlated-k method, which provides a flexible and quick way to solve radiative transfer equations, particularly suited for GCMs. More informations here.&lt;br /&gt;
==Newtonian relaxation==&lt;br /&gt;
Newton was a very relaxed physicist, still inspiring us today.&lt;br /&gt;
==No atmosphere==&lt;br /&gt;
If you have no atmosphere, why do you need a GCM?&lt;br /&gt;
&lt;br /&gt;
=Vertical diffusion=&lt;br /&gt;
Compute the vertical diffusion due to turbulence in the planetary boundary layer&lt;br /&gt;
==vdifc==&lt;br /&gt;
The &amp;quot;old&amp;quot; vertical diffusion routine.&lt;br /&gt;
==turbdiff==&lt;br /&gt;
The new (and improved!) vertical diffusion routine&lt;br /&gt;
&lt;br /&gt;
=Convection=&lt;br /&gt;
Convective mixing in an atmosphere column involves non-resolved, sub-grid processes. These processes are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Thermal plume==&lt;br /&gt;
This module implements a more accurate and sophisticated parametrization of convection. More info [[Thermal_plume_model_Generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Dry convection==&lt;br /&gt;
More info [[Convective_adjustment_scheme_in_the_generic_PCM|here]].&lt;br /&gt;
==Non-orographic gravity waves  ''nonoro_gwd_ran_mod.F90'' ==&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
&lt;br /&gt;
More info [[Non orographic gravity waves drag|here]].&lt;br /&gt;
&lt;br /&gt;
=CO2 condensation=&lt;br /&gt;
Inheriting from the Mars PCM where it is the background species, CO2 condensation is treated as a dedicated step in the Generic PCM's physics. Does that only concern CO2 as a background gas? Or does it work also if CO2 is a non-background variable gas? In any case more info here.&lt;br /&gt;
&lt;br /&gt;
=Tracers=&lt;br /&gt;
Many things can be advected by tracers in the Generic PCM, like chemical species or aerosols. Physical processes involving tracers are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Volcano==&lt;br /&gt;
This routine parameterizes a source of tracers corresponding to volcanic eruption. More information here.&lt;br /&gt;
&lt;br /&gt;
==Water/ice==&lt;br /&gt;
Water aerosols (liquid or solid) are created (resp. consumed) by condensation (resp. vaporization or sublimation), consuming (resp. releasing) latent heat in the atmosphere. In the Generic PCM, the (atmospheric part of the) water cycle is handled by various routines, as explained here.&lt;br /&gt;
&lt;br /&gt;
==Photochemistry==&lt;br /&gt;
Chemistry can turn molecules into other molecules, by the action of temperature (thermochemistry) or UV light (photochemistry). This is handled by the photochemistry routine, described [[Photochemistry|here]].&lt;br /&gt;
&lt;br /&gt;
==Generic condensation==&lt;br /&gt;
On Earth, only water condenses in the atmosphere, but on other planets (which the Generic PCM aims at simulating), many other chemicals can undergo state change. To take that into account, the Generic PCM has a flexible scheme to deal with any arbitrary species, as desbribed [[Radiative_Generic_Condensable_Specie|here]].&lt;br /&gt;
&lt;br /&gt;
==Sedimentation==&lt;br /&gt;
What goes up must come down, as explained [[Sedimentation_of_tracers_in_the_generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Updates==&lt;br /&gt;
This section essentially takes care that the condensation of a major species (e.g. water vapor in steam-rich atmospheres) affects other species, as described here.&lt;br /&gt;
&lt;br /&gt;
==Slab ocean==&lt;br /&gt;
This routine solves for big fish eating small fish, as described [[Slab_ocean_model|here]].&lt;br /&gt;
&lt;br /&gt;
==Surface==&lt;br /&gt;
The surface part of the water cycle is handled here, as the hydrology page describes.&lt;br /&gt;
&lt;br /&gt;
=Heat Conduction in the Subsurface=&lt;br /&gt;
The conduction of heat in the subsurface is solved as described [[Soil_Thermal_Conduction_in_the_Generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
=Diagnostics/write outputs=&lt;br /&gt;
Nothing very physical here, just writting the outputs! By the way, if you want to know how to output new variables in the [[diagfi.nc]] or [[XIOS]] file, check out [[Outputs|this page]].&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2698</id>
		<title>Physics of the Generic PCM</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2698"/>
				<updated>2025-04-30T09:00:58Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Non-orographic gravity waves */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes the various physical parametrizations of the Generic PCM and the chronology of their call through the physical iteration. This chronology is important because some variables need to be updated by certain processes before others (examples).   &lt;br /&gt;
During one physical iteration, the code passes through multiple sub-routines each encapsulating a parametrization. The sub-routines usually take as arguments:&lt;br /&gt;
*the dynamical values of the state variables&lt;br /&gt;
*the dynamical tendencies of the state variables&lt;br /&gt;
*any additional relevant variable&lt;br /&gt;
*any additional relevant tendency&lt;br /&gt;
and it returns in general tendencies (of the state variables as well as of any other relevant variable).&lt;br /&gt;
&lt;br /&gt;
Work in progress. Need to add links.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Initialization=&lt;br /&gt;
==First call==&lt;br /&gt;
Some initializations only need to be done at the very first iteration (e.g. examples).&lt;br /&gt;
==Each call==&lt;br /&gt;
Some other initializations need to be done at each iteration (e.g. examples).&lt;br /&gt;
&lt;br /&gt;
=Radiative transfer=&lt;br /&gt;
==Correlated-k==&lt;br /&gt;
The main radiative transfer solver of the Generic PCM implements the correlated-k method, which provides a flexible and quick way to solve radiative transfer equations, particularly suited for GCMs. More informations here.&lt;br /&gt;
==Newtonian relaxation==&lt;br /&gt;
Newton was a very relaxed physicist, still inspiring us today.&lt;br /&gt;
==No atmosphere==&lt;br /&gt;
If you have no atmosphere, why do you need a GCM?&lt;br /&gt;
&lt;br /&gt;
=Vertical diffusion=&lt;br /&gt;
Compute the vertical diffusion due to turbulence in the planetary boundary layer&lt;br /&gt;
==vdifc==&lt;br /&gt;
The &amp;quot;old&amp;quot; vertical diffusion routine.&lt;br /&gt;
==turbdiff==&lt;br /&gt;
The new (and improved!) vertical diffusion routine&lt;br /&gt;
&lt;br /&gt;
=Convection=&lt;br /&gt;
Convective mixing in an atmosphere column involves non-resolved, sub-grid processes. These processes are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Thermal plume==&lt;br /&gt;
This module implements a more accurate and sophisticated parametrization of convection. More info [[Thermal_plume_model_Generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Dry convection==&lt;br /&gt;
More info [[Convective_adjustment_scheme_in_the_generic_PCM|here]].&lt;br /&gt;
==Non-orographic gravity waves  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;==&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
&lt;br /&gt;
More info [[Non orographic gravity waves drag|here]].&lt;br /&gt;
&lt;br /&gt;
=CO2 condensation=&lt;br /&gt;
Inheriting from the Mars PCM where it is the background species, CO2 condensation is treated as a dedicated step in the Generic PCM's physics. Does that only concern CO2 as a background gas? Or does it work also if CO2 is a non-background variable gas? In any case more info here.&lt;br /&gt;
&lt;br /&gt;
=Tracers=&lt;br /&gt;
Many things can be advected by tracers in the Generic PCM, like chemical species or aerosols. Physical processes involving tracers are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Volcano==&lt;br /&gt;
This routine parameterizes a source of tracers corresponding to volcanic eruption. More information here.&lt;br /&gt;
&lt;br /&gt;
==Water/ice==&lt;br /&gt;
Water aerosols (liquid or solid) are created (resp. consumed) by condensation (resp. vaporization or sublimation), consuming (resp. releasing) latent heat in the atmosphere. In the Generic PCM, the (atmospheric part of the) water cycle is handled by various routines, as explained here.&lt;br /&gt;
&lt;br /&gt;
==Photochemistry==&lt;br /&gt;
Chemistry can turn molecules into other molecules, by the action of temperature (thermochemistry) or UV light (photochemistry). This is handled by the photochemistry routine, described [[Photochemistry|here]].&lt;br /&gt;
&lt;br /&gt;
==Generic condensation==&lt;br /&gt;
On Earth, only water condenses in the atmosphere, but on other planets (which the Generic PCM aims at simulating), many other chemicals can undergo state change. To take that into account, the Generic PCM has a flexible scheme to deal with any arbitrary species, as desbribed [[Radiative_Generic_Condensable_Specie|here]].&lt;br /&gt;
&lt;br /&gt;
==Sedimentation==&lt;br /&gt;
What goes up must come down, as explained [[Sedimentation_of_tracers_in_the_generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Updates==&lt;br /&gt;
This section essentially takes care that the condensation of a major species (e.g. water vapor in steam-rich atmospheres) affects other species, as described here.&lt;br /&gt;
&lt;br /&gt;
==Slab ocean==&lt;br /&gt;
This routine solves for big fish eating small fish, as described [[Slab_ocean_model|here]].&lt;br /&gt;
&lt;br /&gt;
==Surface==&lt;br /&gt;
The surface part of the water cycle is handled here, as the hydrology page describes.&lt;br /&gt;
&lt;br /&gt;
=Heat Conduction in the Subsurface=&lt;br /&gt;
The conduction of heat in the subsurface is solved as described [[Soil_Thermal_Conduction_in_the_Generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
=Diagnostics/write outputs=&lt;br /&gt;
Nothing very physical here, just writting the outputs! By the way, if you want to know how to output new variables in the [[diagfi.nc]] or [[XIOS]] file, check out [[Outputs|this page]].&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2695</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2695"/>
				<updated>2025-04-30T08:43:19Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Description of the physical process */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), this parametrization has been implemented in the Venus PCM (F. LOTT, and S. LEBONNOIS), in the Mars PCM (G.GILLI, F. FORGET and J.LIU), and in the Generic PCM (D.BARDET and J.LIU).&lt;br /&gt;
However, we would like to draw the reader's attention to the fact that there may be some subtle differences from one model to another, which may be specific to Mars and/or Venus. But, the formalism in the Generic model is intended to remain very generic.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* Wave characteristic calculation using MOD&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* Reproducibility of the launching altitude calculation&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]] [[Category: Mars-Model]] [[Category: Venus-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2692</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2692"/>
				<updated>2025-04-30T08:38:57Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), this parametrization has been implemented in the Venus PCM (F. LOTT, and S. LEBONNOIS), in the Mars PCM (G.GILLI, F. FORGET and J.LIU), and in the Generic PCM (D.BARDET and J.LIU).&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* Wave characteristic calculation using MOD&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* Reproducibility of the launching altitude calculation&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]] [[Category: Mars-Model]] [[Category: Venus-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2691</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2691"/>
				<updated>2025-04-30T08:36:34Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), this parametrization has been implemented in the Venus PCM (F. LOTT, and S. LEBONNOIS), in the Mars PCM (G.GILLI, F. FORGET and J.LIU), and in the Generic PCM (D.BARDET and J.LIU).&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* Wave characteristic calculation using MOD&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* Reproducibility of the launching altitude calculation&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]] [[Category: Mars-model]] [[Category: Venus-model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2689</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2689"/>
				<updated>2025-04-30T08:32:22Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Description of the physical process */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), this parametrization has been implemented in the Venus PCM (F. LOTT, and S. LEBONNOIS), in the Mars PCM (G.GILLI, F. FORGET and J.LIU), and in the Generic PCM (D.BARDET and J.LIU).&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* Wave characteristic calculation using MOD&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* Reproducibility of the launching altitude calculation&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2688</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2688"/>
				<updated>2025-04-30T08:27:48Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Underlying hypotheses and limitations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and J.LIU). &lt;br /&gt;
Parametrization implemented in the Generic PCM by in the case of Giant Planets.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* Wave characteristic calculation using MOD&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* Reproducibility of the launching altitude calculation&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2687</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2687"/>
				<updated>2025-04-30T08:16:30Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and J.LIU). &lt;br /&gt;
Parametrization implemented in the Generic PCM by in the case of Giant Planets.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in Lott et al. 2012) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2686</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2686"/>
				<updated>2025-04-30T08:06:11Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and J.LIU). &lt;br /&gt;
Parametrization implemented in the Generic PCM by in the case of Giant Planets.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2685</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2685"/>
				<updated>2025-04-30T08:03:10Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and J.LIU). &lt;br /&gt;
Parametrization implemented in the Generic PCM by in the case of Giant Planets.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2684</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2684"/>
				<updated>2025-04-30T08:02:13Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Description of the physical process */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and J.LIU). &lt;br /&gt;
Parametrization implemented in the Generic PCM by in the case of Giant Planets.&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2638</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2638"/>
				<updated>2025-03-05T15:03:53Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;br /&gt;
&lt;br /&gt;
[[Category: Generic-Model]]&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2637</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2637"/>
				<updated>2025-03-05T15:01:54Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega'_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2561</id>
		<title>Physics of the Generic PCM</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Physics_of_the_Generic_PCM&amp;diff=2561"/>
				<updated>2025-03-05T10:22:27Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Non-orographic gravity waves */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes the various physical parametrizations of the Generic PCM and the chronology of their call through the physical iteration. This chronology is important because some variables need to be updated by certain processes before others (examples).   &lt;br /&gt;
During one physical iteration, the code passes through multiple sub-routines each encapsulating a parametrization. The sub-routines usually take as arguments:&lt;br /&gt;
*the dynamical values of the state variables&lt;br /&gt;
*the dynamical tendencies of the state variables&lt;br /&gt;
*any additional relevant variable&lt;br /&gt;
*any additional relevant tendency&lt;br /&gt;
and it returns in general tendencies (of the state variables as well as of any other relevant variable).&lt;br /&gt;
&lt;br /&gt;
Work in progress. Need to add links.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Initialization=&lt;br /&gt;
==First call==&lt;br /&gt;
Some initializations only need to be done at the very first iteration (e.g. examples).&lt;br /&gt;
==Each call==&lt;br /&gt;
Some other initializations need to be done at each iteration (e.g. examples).&lt;br /&gt;
&lt;br /&gt;
=Radiative transfer=&lt;br /&gt;
==Correlated-k==&lt;br /&gt;
The main radiative transfer solver of the Generic PCM implements the correlated-k method, which provides a flexible and quick way to solve radiative transfer equations, particularly suited for GCMs. More informations here.&lt;br /&gt;
==Newtonian relaxation==&lt;br /&gt;
Newton was a very relaxed physicist, still inspiring us today.&lt;br /&gt;
==No atmosphere==&lt;br /&gt;
If you have no atmosphere, why do you need a GCM?&lt;br /&gt;
&lt;br /&gt;
=Vertical diffusion=&lt;br /&gt;
Compute the vertical diffusion due to turbulence in the planetary boundary layer&lt;br /&gt;
==vdifc==&lt;br /&gt;
The &amp;quot;old&amp;quot; vertical diffusion routine.&lt;br /&gt;
==turbdiff==&lt;br /&gt;
The new (and improved!) vertical diffusion routine&lt;br /&gt;
&lt;br /&gt;
=Convection=&lt;br /&gt;
Convective mixing in an atmosphere column involves non-resolved, sub-grid processes. These processes are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Thermal plume==&lt;br /&gt;
This module implements a more accurate and sophisticated parametrization of convection. More info [[Thermal_plume_model_Generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Dry convection==&lt;br /&gt;
More info [[Convective_adjustment_scheme_in_the_generic_PCM|here]].&lt;br /&gt;
==Non-orographic gravity waves==&lt;br /&gt;
More info [[Non orographic gravity waves drag|here]].&lt;br /&gt;
&lt;br /&gt;
=CO2 condensation=&lt;br /&gt;
Inheriting from the Mars PCM where it is the background species, CO2 condensation is treated as a dedicated step in the Generic PCM's physics. Does that only concern CO2 as a background gas? Or does it work also if CO2 is a non-background variable gas? In any case more info here.&lt;br /&gt;
&lt;br /&gt;
=Tracers=&lt;br /&gt;
Many things can be advected by tracers in the Generic PCM, like chemical species or aerosols. Physical processes involving tracers are parameterized using the following routines:&lt;br /&gt;
&lt;br /&gt;
==Volcano==&lt;br /&gt;
This routine parameterizes a source of tracers corresponding to volcanic eruption. More information here.&lt;br /&gt;
&lt;br /&gt;
==Water/ice==&lt;br /&gt;
Water aerosols (liquid or solid) are created (resp. consumed) by condensation (resp. vaporization or sublimation), consuming (resp. releasing) latent heat in the atmosphere. In the Generic PCM, the (atmospheric part of the) water cycle is handled by various routines, as explained here.&lt;br /&gt;
&lt;br /&gt;
==Photochemistry==&lt;br /&gt;
Chemistry can turn molecules into other molecules, by the action of temperature (thermochemistry) or UV light (photochemistry). This is handled by the photochemistry routine, described [[Photochemistry|here]].&lt;br /&gt;
&lt;br /&gt;
==Generic condensation==&lt;br /&gt;
On Earth, only water condenses in the atmosphere, but on other planets (which the Generic PCM aims at simulating), many other chemicals can undergo state change. To take that into account, the Generic PCM has a flexible scheme to deal with any arbitrary species, as desbribed [[Radiative_Generic_Condensable_Specie|here]].&lt;br /&gt;
&lt;br /&gt;
==Sedimentation==&lt;br /&gt;
What goes up must come down, as explained [[Sedimentation_of_tracers_in_the_generic_PCM|here]].&lt;br /&gt;
&lt;br /&gt;
==Updates==&lt;br /&gt;
This section essentially takes care that the condensation of a major species (e.g. water vapor in steam-rich atmospheres) affects other species, as described here.&lt;br /&gt;
&lt;br /&gt;
==Slab ocean==&lt;br /&gt;
This routine solves for big fish eating small fish, as desbried [[Slab_ocean_model|here]].&lt;br /&gt;
&lt;br /&gt;
==Surface==&lt;br /&gt;
The surface part of the water cycle is handled here, as the hydrology page describes.&lt;br /&gt;
&lt;br /&gt;
=Subsurface thermal=&lt;br /&gt;
Thermal diffusion in the subsurface is solved here, as described there.&lt;br /&gt;
&lt;br /&gt;
=Diagnostics/write outputs=&lt;br /&gt;
Nothing very physical here, just writting the outputs! By the way, if you want to know how to output new variables in the [[diagfi.nc]] or [[XIOS]] file, check out [[Outputs|this page]].&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2549</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2549"/>
				<updated>2025-03-05T10:14:29Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega‘_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{\omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $$\Omega$$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2545</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2545"/>
				<updated>2025-03-05T10:13:21Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega‘_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{\omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2536</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2536"/>
				<updated>2025-03-05T10:11:37Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega‘_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where the wave numbers $$k_n$$, $$l_n$$ and frequency $$w_n$$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($$n’$$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2534</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2534"/>
				<updated>2025-03-05T10:09:35Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$$\times$$NO$$\times$$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $$t$$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $$\Delta t$$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $$\delta t$$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($$\approx$$ M $$\times \Delta t/\delta t$$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $$t$$, the $$\omega'$$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $$C_n$$ are the normalisation coefficients, such that $$\sum_{n=1}^{\infty} C_{n}^{2}=1$$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $$\omega‘_{n}$$ can be treated independently of the others, and each coefficient $$C_{n}^{2}$$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $$\omega’_{n}$$:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $$H$$ is a vertical scale characteristic of the mean atmosphere under consideration and $$z$$ is the logarithmic pressure altitude $$z = H \ln(P_r /P)$$, with $$P_r$$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $$\omega'_{n}$$, the vertical velocity is calculated randomly at a given launch altitude $$z_0$$, then iterated from one model level $$z_1$$ to the next $$z_2$$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $$\hbar$$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $$\hbar \rightarrow 0$$, just as it is possible to recover geometrical optics when $$\lambda \rightarrow 0$$ in the theory of wave optics. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $$\hat{u}$$ and the vertical wind $$\hat{omega}$$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
with $$k$$, $$l$$ the horizontal wavenumbers and $$w$$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $$m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $$, according to the non-rotating WKB approximation, in the limit $$H \rightarrow \infty$$, with $$\Omega = v - \overrightarrow{k}\overrightarrow{u}$$ and $$N$$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $$\rho_{r}$$ is the density of the fluid at the reference pressure level $$P_r$$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $$\hat{\omega}_{n}$$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $$z_0$$. &lt;br /&gt;
A constant vertical viscosity $$\mu$$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $$\nu = \mu/\rho_0$$, which can be included by replacing $$\Omega$$ by $$\Omega + i\nu m^{2}$$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $$\rho_0$$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $$\hat{omega}_{s}$$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
where $$\hat{\omega}$$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $$S_{c}$$ is a setting parameter and $$k^{*}$$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $$\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $$\omega'_n$$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $$\delta t$$ by rescaling it by $$\delta t / \Delta t$$ and then, the first-order autoregressive relationship (AR-1) described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $$q$$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2525</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2525"/>
				<updated>2025-03-05T10:04:45Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
$\newcommand{\Re}{\mathrm{Re}\,}&lt;br /&gt;
\newcommand{\pFq}[5]{{}_{#1}\mathrm{F}_{#2} \left( \genfrac{}{}{0pt}{}{#3}{#4} \bigg| {#5} \right)}$&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$\times$NO$\times$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $t$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $\Delta t$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $\delta t$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($\approx$ M $\times \Delta t/\delta t$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $t$, the $\omega'$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $C_n$ are the normalisation coefficients, such that $\sum_{n=1}^{\infty} C_{n}^{2}=1$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $\omega‘_{n}$ can be treated independently of the others, and each coefficient $C_{n}^{2}$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $\omega’_{n}$ :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $H$ is a vertical scale characteristic of the mean atmosphere under consideration and $z$ is the logarithmic pressure altitude $z = H \ln(P_r /P)$, with $P_r$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $\omega'_{n}$, the vertical velocity is calculated randomly at a given launch altitude $z_0$, then iterated from one model level $z_1$ to the next $z_2$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation :}. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $\hbar$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $\hbar \rightarrow 0$, just as it is possible to recover geometrical optics when $\lambda \rightarrow 0$ in the theory of wave optics}. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $\hat{u}$ and the vertical wind $\hat{omega}$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent with $k$, $l$ the horizontal wavenumbers and $w$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $, according to the non-rotating WKB approximation, in the limit $H \rightarrow \infty$, with $\Omega = v - \overrightarrow{k}\overrightarrow{u}$ and $N$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $\rho_{r}$ is the density of the fluid at the reference pressure level $P_r$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $\hat{\omega}_{n}$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $z_0$. &lt;br /&gt;
A constant vertical viscosity $\mu$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $\nu = \mu/\rho_0$, which can be included by replacing $\Omega$ by $\Omega + i\nu m^{2}$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $\rho_0$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $\hat{omega}_{s}$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
\noindent or $\hat{\omega}$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $S_{c}$ is a setting parameter and $k^{*}$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $\omega'_n$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $\delta t$ by rescaling it by $\delta t / \Delta t$ and then, the first-order autoregressive relationship (AR-1)\footnote{\textbf{First-order autoregressive relationship:} In statistics or signal processing, an AR model is a representation of a time-varying random process (such as nature or the economy). &lt;br /&gt;
The auto-regressive model specifies that the final variable depends linearly on its previous values and a stochastic term (imperfect predictive term), the specificity of order 1 being that the previous values are those obtained at the time step just prior to the one under consideration. In this case the values of the zonal wind trends at the previous time step $frac{\delta t - \delta t}{\delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-. \frac{\delta t}_{GW}$ are added to the drag of the stochastic gravity wave packet of the current time step $\frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n‘ = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n’}}{\delta z}$. } described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient : &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
where $q$ is the nearest integer that rounds (n-1)/M (i.e. towards lower values).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations.&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2505</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2505"/>
				<updated>2025-03-05T09:54:23Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* More advance description of the stochastic non-orographic gravity waves drag parametrization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$\times$NO$\times$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $t$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $\Delta t$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $\delta t$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($\approx$ M $\times \Delta t/\delta t$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $t$, the $\omega'$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $C_n$ are the normalisation coefficients, such that $\sum_{n=1}^{\infty} C_{n}^{2}=1$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $\omega‘_{n}$ can be treated independently of the others, and each coefficient $C_{n}^{2}$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $\omega’_{n}$ :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $H$ is a vertical scale characteristic of the mean atmosphere under consideration and $z$ is the logarithmic pressure altitude $z = H \ln(P_r /P)$, with $P_r$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $\omega'_{n}$, the vertical velocity is calculated randomly at a given launch altitude $z_0$, then iterated from one model level $z_1$ to the next $z_2$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation :}. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $\hbar$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $\hbar \rightarrow 0$, just as it is possible to recover geometrical optics when $\lambda \rightarrow 0$ in the theory of wave optics}. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $\hat{u}$ and the vertical wind $\hat{omega}$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent with $k$, $l$ the horizontal wavenumbers and $w$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $, according to the non-rotating WKB approximation, in the limit $H \rightarrow \infty$, with $\Omega = v - \overrightarrow{k}\overrightarrow{u}$ and $N$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $\rho_{r}$ is the density of the fluid at the reference pressure level $P_r$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $\hat{\omega}_{n}$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $z_0$. &lt;br /&gt;
A constant vertical viscosity $\mu$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $\nu = \mu/\rho_0$, which can be included by replacing $\Omega$ by $\Omega + i\nu m^{2}$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $\rho_0$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $\hat{omega}_{s}$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
\noindent or $\hat{\omega}$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $S_{c}$ is a setting parameter and $k^{*}$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $\omega'_n$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $\delta t$ by rescaling it by $\delta t / \Delta t$ and then, the first-order autoregressive relationship (AR-1)\footnote{\textbf{First-order autoregressive relationship:} In statistics or signal processing, an AR model is a representation of a time-varying random process (such as nature or the economy). &lt;br /&gt;
The auto-regressive model specifies that the final variable depends linearly on its previous values and a stochastic term (imperfect predictive term), the specificity of order 1 being that the previous values are those obtained at the time step just prior to the one under consideration. In this case the values of the zonal wind trends at the previous time step $frac{\delta t - \delta t}{\delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-. \frac{\delta t}_{GW}$ are added to the drag of the stochastic gravity wave packet of the current time step $\frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n‘ = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n’}}{\delta z}$. } described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient : &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent où $q$ est le nombre entier le plus proche qui arrondit (n-1)/M (c'est-à-dire vers des valeurs plus faibles).&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- L'un des avantages du schéma utilisé ici est que chaque paramètre a une signification physique, comme décrit ci-dessous :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Source et durée de vie des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Tout d'abord, la paramétrisation présentée ici s'appuie sur l'hypothèse que la source des ondes de gravité (GW) non-orographiques est placée au-dessus des cellules convectives de la troposphère.&lt;br /&gt;
&lt;br /&gt;
Le paramètre contrôlant le niveau de lancement des ondes z$_0$ est $\sigma$ = P/Ps. %, ce qui correspond à une région centrée à environ 250 Pa (8 km), couvrant des pressions de 160 Pa à 348 Pa, en fonction de la pression de surface Ps et variant avec la saison.&lt;br /&gt;
Comme aucune information sur l'altitude de lancement des ondes n'a été observée au cours de la mission \emph{Cassini-Huygens}, ou avec des télescopes depuis le sol, l'altitude de lancement du paquet d'ondes sera un paramètre à régler.&lt;br /&gt;
En considérant la pression de ``surface'' Ps égale à la pression en bas du domaine modélisé (3 bar), je vais commencer les tests en imposant une valeur arbitraire de $\sigma$=0,4 correspond à une pression de lancement d'ondes à 1,2 bar. &lt;br /&gt;
Puis je tenterai d'ajuster la valeur de $\sigma$ une fois que les paramètres les plus impactant (l'amplitude maximale du flux d'Eliassen Palm et la vitesse de phase maximale des ondes) auront été fixés, voir tableau \ref{tab:GWD_param_test_61lvl}.  &lt;br /&gt;
&lt;br /&gt;
La source est choisie pour être uniforme, sans variation de la latitude, et à part les profils atmosphériques par lesquels la propagation des GW est modélisée, rien d'autre dans le schéma ne varie en fonction du lieu ou de la saison. &lt;br /&gt;
Étant donné que les GW non-orographiques sont censées être générées par des sources multiples (convection, accélération de jet, etc.) et que cela représente une interaction complexe de l'échelle de temps pour les GCM, la source est supposée continue sur toute la journée, ce qui est cohérent avec l'absence de cycle diurne pour les géantes gazeuses. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Amplitude maximale du flux d'Eliassen Palm :}&lt;br /&gt;
&lt;br /&gt;
L'amplitude maximale du flux d'Eliassen Palm F$^{z}$ (équation \ref{eq:GWD_EPflux}), associé aux ondes de gravité, donne le taux de transfert vertical du moment horizontal de l'onde par unité de surface.&lt;br /&gt;
Cette valeur n'a jamais été mesurée dans l'atmosphère de Saturne, et représente donc un degré de liberté important dans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
Dans ce schéma, la valeur maximale de la distribution de probabilité F$_{max}^{z}$ est imposée à l'altitude de lancement z$_0$, pour chaque simulation test réalisée.&lt;br /&gt;
Afin de définir F$_{max}^{0}$, je me suis appuyée sur des estimations de flux de quantité de mouvement estimée à partir des observations de température dans la stratosphère équatoriale.&lt;br /&gt;
Sachant que la composante verticale du flux de quantité de mouvement des ondes diminue seulement lorsque les ondes déposent de la quantité de mouvement dans l'atmosphère, \cite{guerlet_2018} ont pu estimer cette grandeur par unité de densité en multipliant le taux de descente induit par les ondes par le changement net du vent zonal entre les phases opposées de l'oscillation \citep{dunkerton_1991}.&lt;br /&gt;
Ainsi, cette étude a montré que le flux de quantité de mouvement des ondes diminue avec l'altitude, avec un flux moyen de quantité de mouvement d'onde absorbé dans la stratosphère  (e.g. $\rho\bar{u'\omega'}$) de l'ordre de $\approx$7$\times$10$^{-6}$ kg m$^{-1}$ s$^{-2}$.&lt;br /&gt;
Cette estimation permet de fournir une contrainte en ordre de grandeur pour les modèles.&lt;br /&gt;
&lt;br /&gt;
Il convient de souligner ici que l'approche stochastique mise en œuvre dans ce schéma a l'avantage de traiter une grande diversité d'ondes de gravité émises, et donc une grande diversité de flux d'énergie cinétique.&lt;br /&gt;
Le paramètre principal est l'amplitude maximale du flux d'Eliassen Palm à l'altitude de lancement, c'est pourquoi j'ai testé plusieurs valeurs de F$^{0}_{max}$ comprise entre 10$^{-7}$ kg m$^{-1}$ s$^{-2}$ et 10$^{-4}$ kg m$^{-1}$ s$^{-2}$, afin de largement encadrer la valeur estimée à partir des observations de \cite{guerlet_2018}. &lt;br /&gt;
Ensuite, l'amplitude du flux d'Eliassen Palm pour chaque onde de gravité est choisie aléatoirement entre 0 et F$_{max}^{0}$. &lt;br /&gt;
J'ai fixé 10$^{-7}$ kg m$^{-1}$  s$^{-2}$ comme limite inférieure pour ces essais car l'impact des GW est négligeable dans DYNAMICO-Saturn pour un flux de quantité de mouvement inférieur à cette valeur, par rapport à une simulation sans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Nombre d'onde horizontal des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Le nombre d'onde horizontal des ondes de gravité $ \lvert k \rvert$ est défini de la même façon que pour la Terre \citep{lott_2012} et est distribué de la façon suivante : $k^{*} &amp;lt; \lvert k \rvert &amp;lt; k_{s}$. &lt;br /&gt;
&lt;br /&gt;
La valeur minimale est $k^{*} = \sqrt{1/ \Delta x\Delta y}$, où $\Delta x$ et $\Delta y$ sont équivalents aux dimensions d'une maille horizontale de DYNAMICO-Saturn ($\delta x$ et $\delta y \approx$ 525 km).&lt;br /&gt;
Cette valeur correspond aux ondes les plus longues que l'on paramètre avec la résolution horizontale actuelle du GCM. &lt;br /&gt;
&lt;br /&gt;
La valeur maximale, et donc saturée, est $k_{s} &amp;lt; N/u_{0}$, $N$ est la racine carré de la fréquence de Brünt-Väisälä associée à l'écoulement moyen et $u_{0}$ est le vent zonal moyen à l'altitude source $z_{0}$ des ondes de gravité. &lt;br /&gt;
&lt;br /&gt;
Les longueurs d'ondes horizontale minimale et maximale correspondantes pour les ondes de gravité ($\lambda_h$ = 2$\pi$/$k$ ) sont comprises entre 63 km et 3~000 km. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Vitesse de phase des ondes de gravité}&lt;br /&gt;
&lt;br /&gt;
La vitesse de phase des ondes de gravité $\lvert C \rvert = \lvert \omega/k \rvert$ est également un paramètre clé. &lt;br /&gt;
Comme l'ensemble des paramètres de réglage, la vitesse de phase des ondes $\lvert C \rvert$ est une distribution aléatoire de valeurs comprises entre une valeur minimale C$_{min}$ et une valeur maximale C$_{max}$. &lt;br /&gt;
Ici, C$_{min}$ est fixé à 1 m s$^{-1}$, pour obtenir un paquet d'ondes de gravité non-stationnaires. %et C$_{max}$ est égal à la vitesse de propagation du vent zonal $u$ à l'altitude source $z_{0}$. &lt;br /&gt;
L'effet de l'ensemble des ondes de gravité sur l'oscillation équatoriale de Saturne, qu'elles se propagent vers l'est (C $&amp;gt;$ 0) ou vers l'ouest (C $&amp;lt;$ 0), est considéré dans cette étude. &lt;br /&gt;
Quatre valeurs pour C$_{max}$ ont été testées pour évaluer la sensibilité du vent et de la température à ce paramètre. J'ai réalisé des tests pour C$_{max}$=15 m~s$^{-1}$, C$_{max}$=30 m~s$^{-1}$, C$_{max}$=70 m~s$^{-1}$ et C$_{max}$=100 m~s$^{-1}$.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Saturation des ondes de gravité}&lt;br /&gt;
La saturation des ondes de gravité, S$_c$, est également un paramètre de réglage dans ce schéma, qui contrôle le déferlement des ondes de gravité en limitant l'amplitude de $w_{s}$.&lt;br /&gt;
Ici, j'ai choisi de laisser une valeur de saturation neutre S$_c$ = 1. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2502</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2502"/>
				<updated>2025-03-05T09:53:14Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Equations that are being solved, whenever possible */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== More advance description of the stochastic non-orographic gravity waves drag parametrization ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$\times$NO$\times$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $t$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $\Delta t$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $\delta t$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($\approx$ M $\times \Delta t/\delta t$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $t$, the $\omega'$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $C_n$ are the normalisation coefficients, such that $\sum_{n=1}^{\infty} C_{n}^{2}=1$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $\omega‘_{n}$ can be treated independently of the others, and each coefficient $C_{n}^{2}$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $\omega’_{n}$ :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $H$ is a vertical scale characteristic of the mean atmosphere under consideration and $z$ is the logarithmic pressure altitude $z = H \ln(P_r /P)$, with $P_r$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $\omega'_{n}$, the vertical velocity is calculated randomly at a given launch altitude $z_0$, then iterated from one model level $z_1$ to the next $z_2$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation :}. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $\hbar$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $\hbar \rightarrow 0$, just as it is possible to recover geometrical optics when $\lambda \rightarrow 0$ in the theory of wave optics}. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $\hat{u}$ and the vertical wind $\hat{omega}$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent with $k$, $l$ the horizontal wavenumbers and $w$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $, according to the non-rotating WKB approximation, in the limit $H \rightarrow \infty$, with $\Omega = v - \overrightarrow{k}\overrightarrow{u}$ and $N$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $\rho_{r}$ is the density of the fluid at the reference pressure level $P_r$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $\hat{\omega}_{n}$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $z_0$. &lt;br /&gt;
A constant vertical viscosity $\mu$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $\nu = \mu/\rho_0$, which can be included by replacing $\Omega$ by $\Omega + i\nu m^{2}$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $\rho_0$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $\hat{omega}_{s}$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
\noindent or $\hat{\omega}$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $S_{c}$ is a setting parameter and $k^{*}$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $\omega'_n$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $\delta t$ by rescaling it by $\delta t / \Delta t$ and then, the first-order autoregressive relationship (AR-1)\footnote{\textbf{First-order autoregressive relationship:} In statistics or signal processing, an AR model is a representation of a time-varying random process (such as nature or the economy). &lt;br /&gt;
The auto-regressive model specifies that the final variable depends linearly on its previous values and a stochastic term (imperfect predictive term), the specificity of order 1 being that the previous values are those obtained at the time step just prior to the one under consideration. In this case the values of the zonal wind trends at the previous time step $frac{\delta t - \delta t}{\delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-. \frac{\delta t}_{GW}$ are added to the drag of the stochastic gravity wave packet of the current time step $\frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n‘ = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n’}}{\delta z}$. } described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient : &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent où $q$ est le nombre entier le plus proche qui arrondit (n-1)/M (c'est-à-dire vers des valeurs plus faibles).&lt;br /&gt;
&lt;br /&gt;
\newpage&lt;br /&gt;
	\subsection{Paramètres de réglage}&lt;br /&gt;
	\label{GWD_parametres}&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- L'un des avantages du schéma utilisé ici est que chaque paramètre a une signification physique, comme décrit ci-dessous :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Source et durée de vie des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Tout d'abord, la paramétrisation présentée ici s'appuie sur l'hypothèse que la source des ondes de gravité (GW) non-orographiques est placée au-dessus des cellules convectives de la troposphère.&lt;br /&gt;
&lt;br /&gt;
Le paramètre contrôlant le niveau de lancement des ondes z$_0$ est $\sigma$ = P/Ps. %, ce qui correspond à une région centrée à environ 250 Pa (8 km), couvrant des pressions de 160 Pa à 348 Pa, en fonction de la pression de surface Ps et variant avec la saison.&lt;br /&gt;
Comme aucune information sur l'altitude de lancement des ondes n'a été observée au cours de la mission \emph{Cassini-Huygens}, ou avec des télescopes depuis le sol, l'altitude de lancement du paquet d'ondes sera un paramètre à régler.&lt;br /&gt;
En considérant la pression de ``surface'' Ps égale à la pression en bas du domaine modélisé (3 bar), je vais commencer les tests en imposant une valeur arbitraire de $\sigma$=0,4 correspond à une pression de lancement d'ondes à 1,2 bar. &lt;br /&gt;
Puis je tenterai d'ajuster la valeur de $\sigma$ une fois que les paramètres les plus impactant (l'amplitude maximale du flux d'Eliassen Palm et la vitesse de phase maximale des ondes) auront été fixés, voir tableau \ref{tab:GWD_param_test_61lvl}.  &lt;br /&gt;
&lt;br /&gt;
La source est choisie pour être uniforme, sans variation de la latitude, et à part les profils atmosphériques par lesquels la propagation des GW est modélisée, rien d'autre dans le schéma ne varie en fonction du lieu ou de la saison. &lt;br /&gt;
Étant donné que les GW non-orographiques sont censées être générées par des sources multiples (convection, accélération de jet, etc.) et que cela représente une interaction complexe de l'échelle de temps pour les GCM, la source est supposée continue sur toute la journée, ce qui est cohérent avec l'absence de cycle diurne pour les géantes gazeuses. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Amplitude maximale du flux d'Eliassen Palm :}&lt;br /&gt;
&lt;br /&gt;
L'amplitude maximale du flux d'Eliassen Palm F$^{z}$ (équation \ref{eq:GWD_EPflux}), associé aux ondes de gravité, donne le taux de transfert vertical du moment horizontal de l'onde par unité de surface.&lt;br /&gt;
Cette valeur n'a jamais été mesurée dans l'atmosphère de Saturne, et représente donc un degré de liberté important dans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
Dans ce schéma, la valeur maximale de la distribution de probabilité F$_{max}^{z}$ est imposée à l'altitude de lancement z$_0$, pour chaque simulation test réalisée.&lt;br /&gt;
Afin de définir F$_{max}^{0}$, je me suis appuyée sur des estimations de flux de quantité de mouvement estimée à partir des observations de température dans la stratosphère équatoriale.&lt;br /&gt;
Sachant que la composante verticale du flux de quantité de mouvement des ondes diminue seulement lorsque les ondes déposent de la quantité de mouvement dans l'atmosphère, \cite{guerlet_2018} ont pu estimer cette grandeur par unité de densité en multipliant le taux de descente induit par les ondes par le changement net du vent zonal entre les phases opposées de l'oscillation \citep{dunkerton_1991}.&lt;br /&gt;
Ainsi, cette étude a montré que le flux de quantité de mouvement des ondes diminue avec l'altitude, avec un flux moyen de quantité de mouvement d'onde absorbé dans la stratosphère  (e.g. $\rho\bar{u'\omega'}$) de l'ordre de $\approx$7$\times$10$^{-6}$ kg m$^{-1}$ s$^{-2}$.&lt;br /&gt;
Cette estimation permet de fournir une contrainte en ordre de grandeur pour les modèles.&lt;br /&gt;
&lt;br /&gt;
Il convient de souligner ici que l'approche stochastique mise en œuvre dans ce schéma a l'avantage de traiter une grande diversité d'ondes de gravité émises, et donc une grande diversité de flux d'énergie cinétique.&lt;br /&gt;
Le paramètre principal est l'amplitude maximale du flux d'Eliassen Palm à l'altitude de lancement, c'est pourquoi j'ai testé plusieurs valeurs de F$^{0}_{max}$ comprise entre 10$^{-7}$ kg m$^{-1}$ s$^{-2}$ et 10$^{-4}$ kg m$^{-1}$ s$^{-2}$, afin de largement encadrer la valeur estimée à partir des observations de \cite{guerlet_2018}. &lt;br /&gt;
Ensuite, l'amplitude du flux d'Eliassen Palm pour chaque onde de gravité est choisie aléatoirement entre 0 et F$_{max}^{0}$. &lt;br /&gt;
J'ai fixé 10$^{-7}$ kg m$^{-1}$  s$^{-2}$ comme limite inférieure pour ces essais car l'impact des GW est négligeable dans DYNAMICO-Saturn pour un flux de quantité de mouvement inférieur à cette valeur, par rapport à une simulation sans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Nombre d'onde horizontal des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Le nombre d'onde horizontal des ondes de gravité $ \lvert k \rvert$ est défini de la même façon que pour la Terre \citep{lott_2012} et est distribué de la façon suivante : $k^{*} &amp;lt; \lvert k \rvert &amp;lt; k_{s}$. &lt;br /&gt;
&lt;br /&gt;
La valeur minimale est $k^{*} = \sqrt{1/ \Delta x\Delta y}$, où $\Delta x$ et $\Delta y$ sont équivalents aux dimensions d'une maille horizontale de DYNAMICO-Saturn ($\delta x$ et $\delta y \approx$ 525 km).&lt;br /&gt;
Cette valeur correspond aux ondes les plus longues que l'on paramètre avec la résolution horizontale actuelle du GCM. &lt;br /&gt;
&lt;br /&gt;
La valeur maximale, et donc saturée, est $k_{s} &amp;lt; N/u_{0}$, $N$ est la racine carré de la fréquence de Brünt-Väisälä associée à l'écoulement moyen et $u_{0}$ est le vent zonal moyen à l'altitude source $z_{0}$ des ondes de gravité. &lt;br /&gt;
&lt;br /&gt;
Les longueurs d'ondes horizontale minimale et maximale correspondantes pour les ondes de gravité ($\lambda_h$ = 2$\pi$/$k$ ) sont comprises entre 63 km et 3~000 km. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Vitesse de phase des ondes de gravité}&lt;br /&gt;
&lt;br /&gt;
La vitesse de phase des ondes de gravité $\lvert C \rvert = \lvert \omega/k \rvert$ est également un paramètre clé. &lt;br /&gt;
Comme l'ensemble des paramètres de réglage, la vitesse de phase des ondes $\lvert C \rvert$ est une distribution aléatoire de valeurs comprises entre une valeur minimale C$_{min}$ et une valeur maximale C$_{max}$. &lt;br /&gt;
Ici, C$_{min}$ est fixé à 1 m s$^{-1}$, pour obtenir un paquet d'ondes de gravité non-stationnaires. %et C$_{max}$ est égal à la vitesse de propagation du vent zonal $u$ à l'altitude source $z_{0}$. &lt;br /&gt;
L'effet de l'ensemble des ondes de gravité sur l'oscillation équatoriale de Saturne, qu'elles se propagent vers l'est (C $&amp;gt;$ 0) ou vers l'ouest (C $&amp;lt;$ 0), est considéré dans cette étude. &lt;br /&gt;
Quatre valeurs pour C$_{max}$ ont été testées pour évaluer la sensibilité du vent et de la température à ce paramètre. J'ai réalisé des tests pour C$_{max}$=15 m~s$^{-1}$, C$_{max}$=30 m~s$^{-1}$, C$_{max}$=70 m~s$^{-1}$ et C$_{max}$=100 m~s$^{-1}$.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Saturation des ondes de gravité}&lt;br /&gt;
La saturation des ondes de gravité, S$_c$, est également un paramètre de réglage dans ce schéma, qui contrôle le déferlement des ondes de gravité en limitant l'amplitude de $w_{s}$.&lt;br /&gt;
Ici, j'ai choisi de laisser une valeur de saturation neutre S$_c$ = 1. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2496</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2496"/>
				<updated>2025-03-05T09:52:01Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Dedicated flags to call in the callphys.def */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
nonoro_gwd_sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
nonoro_gwd_cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
nonoro_gwd_rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
nonoro_gwd_kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$\times$NO$\times$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $t$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $\Delta t$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $\delta t$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($\approx$ M $\times \Delta t/\delta t$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $t$, the $\omega'$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $C_n$ are the normalisation coefficients, such that $\sum_{n=1}^{\infty} C_{n}^{2}=1$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $\omega‘_{n}$ can be treated independently of the others, and each coefficient $C_{n}^{2}$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $\omega’_{n}$ :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $H$ is a vertical scale characteristic of the mean atmosphere under consideration and $z$ is the logarithmic pressure altitude $z = H \ln(P_r /P)$, with $P_r$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $\omega'_{n}$, the vertical velocity is calculated randomly at a given launch altitude $z_0$, then iterated from one model level $z_1$ to the next $z_2$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation :}. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $\hbar$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $\hbar \rightarrow 0$, just as it is possible to recover geometrical optics when $\lambda \rightarrow 0$ in the theory of wave optics}. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $\hat{u}$ and the vertical wind $\hat{omega}$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent with $k$, $l$ the horizontal wavenumbers and $w$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $, according to the non-rotating WKB approximation, in the limit $H \rightarrow \infty$, with $\Omega = v - \overrightarrow{k}\overrightarrow{u}$ and $N$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $\rho_{r}$ is the density of the fluid at the reference pressure level $P_r$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $\hat{\omega}_{n}$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $z_0$. &lt;br /&gt;
A constant vertical viscosity $\mu$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $\nu = \mu/\rho_0$, which can be included by replacing $\Omega$ by $\Omega + i\nu m^{2}$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $\rho_0$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $\hat{omega}_{s}$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
\noindent or $\hat{\omega}$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $S_{c}$ is a setting parameter and $k^{*}$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $\omega'_n$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $\delta t$ by rescaling it by $\delta t / \Delta t$ and then, the first-order autoregressive relationship (AR-1)\footnote{\textbf{First-order autoregressive relationship:} In statistics or signal processing, an AR model is a representation of a time-varying random process (such as nature or the economy). &lt;br /&gt;
The auto-regressive model specifies that the final variable depends linearly on its previous values and a stochastic term (imperfect predictive term), the specificity of order 1 being that the previous values are those obtained at the time step just prior to the one under consideration. In this case the values of the zonal wind trends at the previous time step $frac{\delta t - \delta t}{\delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-. \frac{\delta t}_{GW}$ are added to the drag of the stochastic gravity wave packet of the current time step $\frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n‘ = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n’}}{\delta z}$. } described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient : &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent où $q$ est le nombre entier le plus proche qui arrondit (n-1)/M (c'est-à-dire vers des valeurs plus faibles).&lt;br /&gt;
&lt;br /&gt;
\newpage&lt;br /&gt;
	\subsection{Paramètres de réglage}&lt;br /&gt;
	\label{GWD_parametres}&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- L'un des avantages du schéma utilisé ici est que chaque paramètre a une signification physique, comme décrit ci-dessous :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Source et durée de vie des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Tout d'abord, la paramétrisation présentée ici s'appuie sur l'hypothèse que la source des ondes de gravité (GW) non-orographiques est placée au-dessus des cellules convectives de la troposphère.&lt;br /&gt;
&lt;br /&gt;
Le paramètre contrôlant le niveau de lancement des ondes z$_0$ est $\sigma$ = P/Ps. %, ce qui correspond à une région centrée à environ 250 Pa (8 km), couvrant des pressions de 160 Pa à 348 Pa, en fonction de la pression de surface Ps et variant avec la saison.&lt;br /&gt;
Comme aucune information sur l'altitude de lancement des ondes n'a été observée au cours de la mission \emph{Cassini-Huygens}, ou avec des télescopes depuis le sol, l'altitude de lancement du paquet d'ondes sera un paramètre à régler.&lt;br /&gt;
En considérant la pression de ``surface'' Ps égale à la pression en bas du domaine modélisé (3 bar), je vais commencer les tests en imposant une valeur arbitraire de $\sigma$=0,4 correspond à une pression de lancement d'ondes à 1,2 bar. &lt;br /&gt;
Puis je tenterai d'ajuster la valeur de $\sigma$ une fois que les paramètres les plus impactant (l'amplitude maximale du flux d'Eliassen Palm et la vitesse de phase maximale des ondes) auront été fixés, voir tableau \ref{tab:GWD_param_test_61lvl}.  &lt;br /&gt;
&lt;br /&gt;
La source est choisie pour être uniforme, sans variation de la latitude, et à part les profils atmosphériques par lesquels la propagation des GW est modélisée, rien d'autre dans le schéma ne varie en fonction du lieu ou de la saison. &lt;br /&gt;
Étant donné que les GW non-orographiques sont censées être générées par des sources multiples (convection, accélération de jet, etc.) et que cela représente une interaction complexe de l'échelle de temps pour les GCM, la source est supposée continue sur toute la journée, ce qui est cohérent avec l'absence de cycle diurne pour les géantes gazeuses. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Amplitude maximale du flux d'Eliassen Palm :}&lt;br /&gt;
&lt;br /&gt;
L'amplitude maximale du flux d'Eliassen Palm F$^{z}$ (équation \ref{eq:GWD_EPflux}), associé aux ondes de gravité, donne le taux de transfert vertical du moment horizontal de l'onde par unité de surface.&lt;br /&gt;
Cette valeur n'a jamais été mesurée dans l'atmosphère de Saturne, et représente donc un degré de liberté important dans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
Dans ce schéma, la valeur maximale de la distribution de probabilité F$_{max}^{z}$ est imposée à l'altitude de lancement z$_0$, pour chaque simulation test réalisée.&lt;br /&gt;
Afin de définir F$_{max}^{0}$, je me suis appuyée sur des estimations de flux de quantité de mouvement estimée à partir des observations de température dans la stratosphère équatoriale.&lt;br /&gt;
Sachant que la composante verticale du flux de quantité de mouvement des ondes diminue seulement lorsque les ondes déposent de la quantité de mouvement dans l'atmosphère, \cite{guerlet_2018} ont pu estimer cette grandeur par unité de densité en multipliant le taux de descente induit par les ondes par le changement net du vent zonal entre les phases opposées de l'oscillation \citep{dunkerton_1991}.&lt;br /&gt;
Ainsi, cette étude a montré que le flux de quantité de mouvement des ondes diminue avec l'altitude, avec un flux moyen de quantité de mouvement d'onde absorbé dans la stratosphère  (e.g. $\rho\bar{u'\omega'}$) de l'ordre de $\approx$7$\times$10$^{-6}$ kg m$^{-1}$ s$^{-2}$.&lt;br /&gt;
Cette estimation permet de fournir une contrainte en ordre de grandeur pour les modèles.&lt;br /&gt;
&lt;br /&gt;
Il convient de souligner ici que l'approche stochastique mise en œuvre dans ce schéma a l'avantage de traiter une grande diversité d'ondes de gravité émises, et donc une grande diversité de flux d'énergie cinétique.&lt;br /&gt;
Le paramètre principal est l'amplitude maximale du flux d'Eliassen Palm à l'altitude de lancement, c'est pourquoi j'ai testé plusieurs valeurs de F$^{0}_{max}$ comprise entre 10$^{-7}$ kg m$^{-1}$ s$^{-2}$ et 10$^{-4}$ kg m$^{-1}$ s$^{-2}$, afin de largement encadrer la valeur estimée à partir des observations de \cite{guerlet_2018}. &lt;br /&gt;
Ensuite, l'amplitude du flux d'Eliassen Palm pour chaque onde de gravité est choisie aléatoirement entre 0 et F$_{max}^{0}$. &lt;br /&gt;
J'ai fixé 10$^{-7}$ kg m$^{-1}$  s$^{-2}$ comme limite inférieure pour ces essais car l'impact des GW est négligeable dans DYNAMICO-Saturn pour un flux de quantité de mouvement inférieur à cette valeur, par rapport à une simulation sans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Nombre d'onde horizontal des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Le nombre d'onde horizontal des ondes de gravité $ \lvert k \rvert$ est défini de la même façon que pour la Terre \citep{lott_2012} et est distribué de la façon suivante : $k^{*} &amp;lt; \lvert k \rvert &amp;lt; k_{s}$. &lt;br /&gt;
&lt;br /&gt;
La valeur minimale est $k^{*} = \sqrt{1/ \Delta x\Delta y}$, où $\Delta x$ et $\Delta y$ sont équivalents aux dimensions d'une maille horizontale de DYNAMICO-Saturn ($\delta x$ et $\delta y \approx$ 525 km).&lt;br /&gt;
Cette valeur correspond aux ondes les plus longues que l'on paramètre avec la résolution horizontale actuelle du GCM. &lt;br /&gt;
&lt;br /&gt;
La valeur maximale, et donc saturée, est $k_{s} &amp;lt; N/u_{0}$, $N$ est la racine carré de la fréquence de Brünt-Väisälä associée à l'écoulement moyen et $u_{0}$ est le vent zonal moyen à l'altitude source $z_{0}$ des ondes de gravité. &lt;br /&gt;
&lt;br /&gt;
Les longueurs d'ondes horizontale minimale et maximale correspondantes pour les ondes de gravité ($\lambda_h$ = 2$\pi$/$k$ ) sont comprises entre 63 km et 3~000 km. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Vitesse de phase des ondes de gravité}&lt;br /&gt;
&lt;br /&gt;
La vitesse de phase des ondes de gravité $\lvert C \rvert = \lvert \omega/k \rvert$ est également un paramètre clé. &lt;br /&gt;
Comme l'ensemble des paramètres de réglage, la vitesse de phase des ondes $\lvert C \rvert$ est une distribution aléatoire de valeurs comprises entre une valeur minimale C$_{min}$ et une valeur maximale C$_{max}$. &lt;br /&gt;
Ici, C$_{min}$ est fixé à 1 m s$^{-1}$, pour obtenir un paquet d'ondes de gravité non-stationnaires. %et C$_{max}$ est égal à la vitesse de propagation du vent zonal $u$ à l'altitude source $z_{0}$. &lt;br /&gt;
L'effet de l'ensemble des ondes de gravité sur l'oscillation équatoriale de Saturne, qu'elles se propagent vers l'est (C $&amp;gt;$ 0) ou vers l'ouest (C $&amp;lt;$ 0), est considéré dans cette étude. &lt;br /&gt;
Quatre valeurs pour C$_{max}$ ont été testées pour évaluer la sensibilité du vent et de la température à ce paramètre. J'ai réalisé des tests pour C$_{max}$=15 m~s$^{-1}$, C$_{max}$=30 m~s$^{-1}$, C$_{max}$=70 m~s$^{-1}$ et C$_{max}$=100 m~s$^{-1}$.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Saturation des ondes de gravité}&lt;br /&gt;
La saturation des ondes de gravité, S$_c$, est également un paramètre de réglage dans ce schéma, qui contrôle le déferlement des ondes de gravité en limitant l'amplitude de $w_{s}$.&lt;br /&gt;
Ici, j'ai choisi de laisser une valeur de saturation neutre S$_c$ = 1. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2491</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2491"/>
				<updated>2025-03-05T09:50:05Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization:  &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt; calllott_nonoro=True &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- == Inputs and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
! 0.1 INPUTS&lt;br /&gt;
     INTEGER, intent(in):: ngrid           ! number of atmospheric columns&lt;br /&gt;
     INTEGER, intent(in):: nlayer          ! number of atmospheric columns&lt;br /&gt;
     REAL, intent(in):: dtime              ! Time step of the Physics&lt;br /&gt;
     REAL, intent(in):: zmax_therm(ngrid)  ! Altitude of max velocity thermals (m)&lt;br /&gt;
     REAL,INTENT(IN) :: cpnew(ngrid,nlayer)! Cp of the atmosphere&lt;br /&gt;
     REAL,INTENT(IN) :: rnew(ngrid,nlayer) ! R of the atmosphere&lt;br /&gt;
     REAL, intent(in):: pp(ngrid, nlayer)  ! Pressure at full levels(Pa)&lt;br /&gt;
     REAL, intent(in):: pt(ngrid, nlayer)  ! Temperature at full levels(K)&lt;br /&gt;
     REAL, intent(in):: pu(ngrid, nlayer)  ! Zonal wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pv(ngrid, nlayer)  ! Meridional wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pdt(ngrid, nlayer) ! Tendency on temperature(K/s)&lt;br /&gt;
     REAL, intent(in):: pdu(ngrid, nlayer) ! Tendency on zonal wind(m/s/s)&lt;br /&gt;
     REAL, intent(in):: pdv(ngrid, nlayer) ! Tendency on meridional wind(m/s/s)&lt;br /&gt;
! 0.2 OUTPUTS&lt;br /&gt;
     REAL, intent(out):: zustr(ngrid)         ! Zonal surface stress&lt;br /&gt;
     REAL, intent(out):: zvstr(ngrid)         ! Meridional surface stress&lt;br /&gt;
     REAL, intent(out):: d_t(ngrid, nlayer)   ! Tendency on temperature (K/s) due to gravity waves (not used set to zero)&lt;br /&gt;
     REAL, intent(out):: d_u(ngrid, nlayer)   ! Tendency on zonal wind (m/s/s) due to gravity waves&lt;br /&gt;
     REAL, intent(out):: d_v(ngrid, nlayer)   ! Tendency on meridional wind (m/s/s) due to gravity waves&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$\times$NO$\times$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $t$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $\Delta t$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $\delta t$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($\approx$ M $\times \Delta t/\delta t$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $t$, the $\omega'$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $C_n$ are the normalisation coefficients, such that $\sum_{n=1}^{\infty} C_{n}^{2}=1$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $\omega‘_{n}$ can be treated independently of the others, and each coefficient $C_{n}^{2}$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $\omega’_{n}$ :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $H$ is a vertical scale characteristic of the mean atmosphere under consideration and $z$ is the logarithmic pressure altitude $z = H \ln(P_r /P)$, with $P_r$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $\omega'_{n}$, the vertical velocity is calculated randomly at a given launch altitude $z_0$, then iterated from one model level $z_1$ to the next $z_2$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation :}. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $\hbar$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $\hbar \rightarrow 0$, just as it is possible to recover geometrical optics when $\lambda \rightarrow 0$ in the theory of wave optics}. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $\hat{u}$ and the vertical wind $\hat{omega}$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent with $k$, $l$ the horizontal wavenumbers and $w$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $, according to the non-rotating WKB approximation, in the limit $H \rightarrow \infty$, with $\Omega = v - \overrightarrow{k}\overrightarrow{u}$ and $N$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $\rho_{r}$ is the density of the fluid at the reference pressure level $P_r$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $\hat{\omega}_{n}$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $z_0$. &lt;br /&gt;
A constant vertical viscosity $\mu$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $\nu = \mu/\rho_0$, which can be included by replacing $\Omega$ by $\Omega + i\nu m^{2}$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $\rho_0$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $\hat{omega}_{s}$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
\noindent or $\hat{\omega}$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $S_{c}$ is a setting parameter and $k^{*}$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $\omega'_n$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $\delta t$ by rescaling it by $\delta t / \Delta t$ and then, the first-order autoregressive relationship (AR-1)\footnote{\textbf{First-order autoregressive relationship:} In statistics or signal processing, an AR model is a representation of a time-varying random process (such as nature or the economy). &lt;br /&gt;
The auto-regressive model specifies that the final variable depends linearly on its previous values and a stochastic term (imperfect predictive term), the specificity of order 1 being that the previous values are those obtained at the time step just prior to the one under consideration. In this case the values of the zonal wind trends at the previous time step $frac{\delta t - \delta t}{\delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-. \frac{\delta t}_{GW}$ are added to the drag of the stochastic gravity wave packet of the current time step $\frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n‘ = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n’}}{\delta z}$. } described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient : &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent où $q$ est le nombre entier le plus proche qui arrondit (n-1)/M (c'est-à-dire vers des valeurs plus faibles).&lt;br /&gt;
&lt;br /&gt;
\newpage&lt;br /&gt;
	\subsection{Paramètres de réglage}&lt;br /&gt;
	\label{GWD_parametres}&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- L'un des avantages du schéma utilisé ici est que chaque paramètre a une signification physique, comme décrit ci-dessous :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Source et durée de vie des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Tout d'abord, la paramétrisation présentée ici s'appuie sur l'hypothèse que la source des ondes de gravité (GW) non-orographiques est placée au-dessus des cellules convectives de la troposphère.&lt;br /&gt;
&lt;br /&gt;
Le paramètre contrôlant le niveau de lancement des ondes z$_0$ est $\sigma$ = P/Ps. %, ce qui correspond à une région centrée à environ 250 Pa (8 km), couvrant des pressions de 160 Pa à 348 Pa, en fonction de la pression de surface Ps et variant avec la saison.&lt;br /&gt;
Comme aucune information sur l'altitude de lancement des ondes n'a été observée au cours de la mission \emph{Cassini-Huygens}, ou avec des télescopes depuis le sol, l'altitude de lancement du paquet d'ondes sera un paramètre à régler.&lt;br /&gt;
En considérant la pression de ``surface'' Ps égale à la pression en bas du domaine modélisé (3 bar), je vais commencer les tests en imposant une valeur arbitraire de $\sigma$=0,4 correspond à une pression de lancement d'ondes à 1,2 bar. &lt;br /&gt;
Puis je tenterai d'ajuster la valeur de $\sigma$ une fois que les paramètres les plus impactant (l'amplitude maximale du flux d'Eliassen Palm et la vitesse de phase maximale des ondes) auront été fixés, voir tableau \ref{tab:GWD_param_test_61lvl}.  &lt;br /&gt;
&lt;br /&gt;
La source est choisie pour être uniforme, sans variation de la latitude, et à part les profils atmosphériques par lesquels la propagation des GW est modélisée, rien d'autre dans le schéma ne varie en fonction du lieu ou de la saison. &lt;br /&gt;
Étant donné que les GW non-orographiques sont censées être générées par des sources multiples (convection, accélération de jet, etc.) et que cela représente une interaction complexe de l'échelle de temps pour les GCM, la source est supposée continue sur toute la journée, ce qui est cohérent avec l'absence de cycle diurne pour les géantes gazeuses. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Amplitude maximale du flux d'Eliassen Palm :}&lt;br /&gt;
&lt;br /&gt;
L'amplitude maximale du flux d'Eliassen Palm F$^{z}$ (équation \ref{eq:GWD_EPflux}), associé aux ondes de gravité, donne le taux de transfert vertical du moment horizontal de l'onde par unité de surface.&lt;br /&gt;
Cette valeur n'a jamais été mesurée dans l'atmosphère de Saturne, et représente donc un degré de liberté important dans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
Dans ce schéma, la valeur maximale de la distribution de probabilité F$_{max}^{z}$ est imposée à l'altitude de lancement z$_0$, pour chaque simulation test réalisée.&lt;br /&gt;
Afin de définir F$_{max}^{0}$, je me suis appuyée sur des estimations de flux de quantité de mouvement estimée à partir des observations de température dans la stratosphère équatoriale.&lt;br /&gt;
Sachant que la composante verticale du flux de quantité de mouvement des ondes diminue seulement lorsque les ondes déposent de la quantité de mouvement dans l'atmosphère, \cite{guerlet_2018} ont pu estimer cette grandeur par unité de densité en multipliant le taux de descente induit par les ondes par le changement net du vent zonal entre les phases opposées de l'oscillation \citep{dunkerton_1991}.&lt;br /&gt;
Ainsi, cette étude a montré que le flux de quantité de mouvement des ondes diminue avec l'altitude, avec un flux moyen de quantité de mouvement d'onde absorbé dans la stratosphère  (e.g. $\rho\bar{u'\omega'}$) de l'ordre de $\approx$7$\times$10$^{-6}$ kg m$^{-1}$ s$^{-2}$.&lt;br /&gt;
Cette estimation permet de fournir une contrainte en ordre de grandeur pour les modèles.&lt;br /&gt;
&lt;br /&gt;
Il convient de souligner ici que l'approche stochastique mise en œuvre dans ce schéma a l'avantage de traiter une grande diversité d'ondes de gravité émises, et donc une grande diversité de flux d'énergie cinétique.&lt;br /&gt;
Le paramètre principal est l'amplitude maximale du flux d'Eliassen Palm à l'altitude de lancement, c'est pourquoi j'ai testé plusieurs valeurs de F$^{0}_{max}$ comprise entre 10$^{-7}$ kg m$^{-1}$ s$^{-2}$ et 10$^{-4}$ kg m$^{-1}$ s$^{-2}$, afin de largement encadrer la valeur estimée à partir des observations de \cite{guerlet_2018}. &lt;br /&gt;
Ensuite, l'amplitude du flux d'Eliassen Palm pour chaque onde de gravité est choisie aléatoirement entre 0 et F$_{max}^{0}$. &lt;br /&gt;
J'ai fixé 10$^{-7}$ kg m$^{-1}$  s$^{-2}$ comme limite inférieure pour ces essais car l'impact des GW est négligeable dans DYNAMICO-Saturn pour un flux de quantité de mouvement inférieur à cette valeur, par rapport à une simulation sans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Nombre d'onde horizontal des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Le nombre d'onde horizontal des ondes de gravité $ \lvert k \rvert$ est défini de la même façon que pour la Terre \citep{lott_2012} et est distribué de la façon suivante : $k^{*} &amp;lt; \lvert k \rvert &amp;lt; k_{s}$. &lt;br /&gt;
&lt;br /&gt;
La valeur minimale est $k^{*} = \sqrt{1/ \Delta x\Delta y}$, où $\Delta x$ et $\Delta y$ sont équivalents aux dimensions d'une maille horizontale de DYNAMICO-Saturn ($\delta x$ et $\delta y \approx$ 525 km).&lt;br /&gt;
Cette valeur correspond aux ondes les plus longues que l'on paramètre avec la résolution horizontale actuelle du GCM. &lt;br /&gt;
&lt;br /&gt;
La valeur maximale, et donc saturée, est $k_{s} &amp;lt; N/u_{0}$, $N$ est la racine carré de la fréquence de Brünt-Väisälä associée à l'écoulement moyen et $u_{0}$ est le vent zonal moyen à l'altitude source $z_{0}$ des ondes de gravité. &lt;br /&gt;
&lt;br /&gt;
Les longueurs d'ondes horizontale minimale et maximale correspondantes pour les ondes de gravité ($\lambda_h$ = 2$\pi$/$k$ ) sont comprises entre 63 km et 3~000 km. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Vitesse de phase des ondes de gravité}&lt;br /&gt;
&lt;br /&gt;
La vitesse de phase des ondes de gravité $\lvert C \rvert = \lvert \omega/k \rvert$ est également un paramètre clé. &lt;br /&gt;
Comme l'ensemble des paramètres de réglage, la vitesse de phase des ondes $\lvert C \rvert$ est une distribution aléatoire de valeurs comprises entre une valeur minimale C$_{min}$ et une valeur maximale C$_{max}$. &lt;br /&gt;
Ici, C$_{min}$ est fixé à 1 m s$^{-1}$, pour obtenir un paquet d'ondes de gravité non-stationnaires. %et C$_{max}$ est égal à la vitesse de propagation du vent zonal $u$ à l'altitude source $z_{0}$. &lt;br /&gt;
L'effet de l'ensemble des ondes de gravité sur l'oscillation équatoriale de Saturne, qu'elles se propagent vers l'est (C $&amp;gt;$ 0) ou vers l'ouest (C $&amp;lt;$ 0), est considéré dans cette étude. &lt;br /&gt;
Quatre valeurs pour C$_{max}$ ont été testées pour évaluer la sensibilité du vent et de la température à ce paramètre. J'ai réalisé des tests pour C$_{max}$=15 m~s$^{-1}$, C$_{max}$=30 m~s$^{-1}$, C$_{max}$=70 m~s$^{-1}$ et C$_{max}$=100 m~s$^{-1}$.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Saturation des ondes de gravité}&lt;br /&gt;
La saturation des ondes de gravité, S$_c$, est également un paramètre de réglage dans ce schéma, qui contrôle le déferlement des ondes de gravité en limitant l'amplitude de $w_{s}$.&lt;br /&gt;
Ici, j'ai choisi de laisser une valeur de saturation neutre S$_c$ = 1. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2481</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2481"/>
				<updated>2025-03-05T09:43:56Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization: &lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- == Inputs and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
! 0.1 INPUTS&lt;br /&gt;
     INTEGER, intent(in):: ngrid           ! number of atmospheric columns&lt;br /&gt;
     INTEGER, intent(in):: nlayer          ! number of atmospheric columns&lt;br /&gt;
     REAL, intent(in):: dtime              ! Time step of the Physics&lt;br /&gt;
     REAL, intent(in):: zmax_therm(ngrid)  ! Altitude of max velocity thermals (m)&lt;br /&gt;
     REAL,INTENT(IN) :: cpnew(ngrid,nlayer)! Cp of the atmosphere&lt;br /&gt;
     REAL,INTENT(IN) :: rnew(ngrid,nlayer) ! R of the atmosphere&lt;br /&gt;
     REAL, intent(in):: pp(ngrid, nlayer)  ! Pressure at full levels(Pa)&lt;br /&gt;
     REAL, intent(in):: pt(ngrid, nlayer)  ! Temperature at full levels(K)&lt;br /&gt;
     REAL, intent(in):: pu(ngrid, nlayer)  ! Zonal wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pv(ngrid, nlayer)  ! Meridional wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pdt(ngrid, nlayer) ! Tendency on temperature(K/s)&lt;br /&gt;
     REAL, intent(in):: pdu(ngrid, nlayer) ! Tendency on zonal wind(m/s/s)&lt;br /&gt;
     REAL, intent(in):: pdv(ngrid, nlayer) ! Tendency on meridional wind(m/s/s)&lt;br /&gt;
! 0.2 OUTPUTS&lt;br /&gt;
     REAL, intent(out):: zustr(ngrid)         ! Zonal surface stress&lt;br /&gt;
     REAL, intent(out):: zvstr(ngrid)         ! Meridional surface stress&lt;br /&gt;
     REAL, intent(out):: d_t(ngrid, nlayer)   ! Tendency on temperature (K/s) due to gravity waves (not used set to zero)&lt;br /&gt;
     REAL, intent(out):: d_u(ngrid, nlayer)   ! Tendency on zonal wind (m/s/s) due to gravity waves&lt;br /&gt;
     REAL, intent(out):: d_v(ngrid, nlayer)   ! Tendency on meridional wind (m/s/s) due to gravity waves&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$\times$NO$\times$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $t$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $\Delta t$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $\delta t$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($\approx$ M $\times \Delta t/\delta t$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $t$, the $\omega'$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $C_n$ are the normalisation coefficients, such that $\sum_{n=1}^{\infty} C_{n}^{2}=1$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $\omega‘_{n}$ can be treated independently of the others, and each coefficient $C_{n}^{2}$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $\omega’_{n}$ :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $H$ is a vertical scale characteristic of the mean atmosphere under consideration and $z$ is the logarithmic pressure altitude $z = H \ln(P_r /P)$, with $P_r$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $\omega'_{n}$, the vertical velocity is calculated randomly at a given launch altitude $z_0$, then iterated from one model level $z_1$ to the next $z_2$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation :}. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $\hbar$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $\hbar \rightarrow 0$, just as it is possible to recover geometrical optics when $\lambda \rightarrow 0$ in the theory of wave optics}. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $\hat{u}$ and the vertical wind $\hat{omega}$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent with $k$, $l$ the horizontal wavenumbers and $w$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $, according to the non-rotating WKB approximation, in the limit $H \rightarrow \infty$, with $\Omega = v - \overrightarrow{k}\overrightarrow{u}$ and $N$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $\rho_{r}$ is the density of the fluid at the reference pressure level $P_r$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $\hat{\omega}_{n}$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $z_0$. &lt;br /&gt;
A constant vertical viscosity $\mu$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $\nu = \mu/\rho_0$, which can be included by replacing $\Omega$ by $\Omega + i\nu m^{2}$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $\rho_0$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $\hat{omega}_{s}$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
\noindent or $\hat{\omega}$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $S_{c}$ is a setting parameter and $k^{*}$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $\omega'_n$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $\delta t$ by rescaling it by $\delta t / \Delta t$ and then, the first-order autoregressive relationship (AR-1)\footnote{\textbf{First-order autoregressive relationship:} In statistics or signal processing, an AR model is a representation of a time-varying random process (such as nature or the economy). &lt;br /&gt;
The auto-regressive model specifies that the final variable depends linearly on its previous values and a stochastic term (imperfect predictive term), the specificity of order 1 being that the previous values are those obtained at the time step just prior to the one under consideration. In this case the values of the zonal wind trends at the previous time step $frac{\delta t - \delta t}{\delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-. \frac{\delta t}_{GW}$ are added to the drag of the stochastic gravity wave packet of the current time step $\frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n‘ = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n’}}{\delta z}$. } described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient : &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent où $q$ est le nombre entier le plus proche qui arrondit (n-1)/M (c'est-à-dire vers des valeurs plus faibles).&lt;br /&gt;
&lt;br /&gt;
\newpage&lt;br /&gt;
	\subsection{Paramètres de réglage}&lt;br /&gt;
	\label{GWD_parametres}&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- L'un des avantages du schéma utilisé ici est que chaque paramètre a une signification physique, comme décrit ci-dessous :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Source et durée de vie des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Tout d'abord, la paramétrisation présentée ici s'appuie sur l'hypothèse que la source des ondes de gravité (GW) non-orographiques est placée au-dessus des cellules convectives de la troposphère.&lt;br /&gt;
&lt;br /&gt;
Le paramètre contrôlant le niveau de lancement des ondes z$_0$ est $\sigma$ = P/Ps. %, ce qui correspond à une région centrée à environ 250 Pa (8 km), couvrant des pressions de 160 Pa à 348 Pa, en fonction de la pression de surface Ps et variant avec la saison.&lt;br /&gt;
Comme aucune information sur l'altitude de lancement des ondes n'a été observée au cours de la mission \emph{Cassini-Huygens}, ou avec des télescopes depuis le sol, l'altitude de lancement du paquet d'ondes sera un paramètre à régler.&lt;br /&gt;
En considérant la pression de ``surface'' Ps égale à la pression en bas du domaine modélisé (3 bar), je vais commencer les tests en imposant une valeur arbitraire de $\sigma$=0,4 correspond à une pression de lancement d'ondes à 1,2 bar. &lt;br /&gt;
Puis je tenterai d'ajuster la valeur de $\sigma$ une fois que les paramètres les plus impactant (l'amplitude maximale du flux d'Eliassen Palm et la vitesse de phase maximale des ondes) auront été fixés, voir tableau \ref{tab:GWD_param_test_61lvl}.  &lt;br /&gt;
&lt;br /&gt;
La source est choisie pour être uniforme, sans variation de la latitude, et à part les profils atmosphériques par lesquels la propagation des GW est modélisée, rien d'autre dans le schéma ne varie en fonction du lieu ou de la saison. &lt;br /&gt;
Étant donné que les GW non-orographiques sont censées être générées par des sources multiples (convection, accélération de jet, etc.) et que cela représente une interaction complexe de l'échelle de temps pour les GCM, la source est supposée continue sur toute la journée, ce qui est cohérent avec l'absence de cycle diurne pour les géantes gazeuses. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Amplitude maximale du flux d'Eliassen Palm :}&lt;br /&gt;
&lt;br /&gt;
L'amplitude maximale du flux d'Eliassen Palm F$^{z}$ (équation \ref{eq:GWD_EPflux}), associé aux ondes de gravité, donne le taux de transfert vertical du moment horizontal de l'onde par unité de surface.&lt;br /&gt;
Cette valeur n'a jamais été mesurée dans l'atmosphère de Saturne, et représente donc un degré de liberté important dans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
Dans ce schéma, la valeur maximale de la distribution de probabilité F$_{max}^{z}$ est imposée à l'altitude de lancement z$_0$, pour chaque simulation test réalisée.&lt;br /&gt;
Afin de définir F$_{max}^{0}$, je me suis appuyée sur des estimations de flux de quantité de mouvement estimée à partir des observations de température dans la stratosphère équatoriale.&lt;br /&gt;
Sachant que la composante verticale du flux de quantité de mouvement des ondes diminue seulement lorsque les ondes déposent de la quantité de mouvement dans l'atmosphère, \cite{guerlet_2018} ont pu estimer cette grandeur par unité de densité en multipliant le taux de descente induit par les ondes par le changement net du vent zonal entre les phases opposées de l'oscillation \citep{dunkerton_1991}.&lt;br /&gt;
Ainsi, cette étude a montré que le flux de quantité de mouvement des ondes diminue avec l'altitude, avec un flux moyen de quantité de mouvement d'onde absorbé dans la stratosphère  (e.g. $\rho\bar{u'\omega'}$) de l'ordre de $\approx$7$\times$10$^{-6}$ kg m$^{-1}$ s$^{-2}$.&lt;br /&gt;
Cette estimation permet de fournir une contrainte en ordre de grandeur pour les modèles.&lt;br /&gt;
&lt;br /&gt;
Il convient de souligner ici que l'approche stochastique mise en œuvre dans ce schéma a l'avantage de traiter une grande diversité d'ondes de gravité émises, et donc une grande diversité de flux d'énergie cinétique.&lt;br /&gt;
Le paramètre principal est l'amplitude maximale du flux d'Eliassen Palm à l'altitude de lancement, c'est pourquoi j'ai testé plusieurs valeurs de F$^{0}_{max}$ comprise entre 10$^{-7}$ kg m$^{-1}$ s$^{-2}$ et 10$^{-4}$ kg m$^{-1}$ s$^{-2}$, afin de largement encadrer la valeur estimée à partir des observations de \cite{guerlet_2018}. &lt;br /&gt;
Ensuite, l'amplitude du flux d'Eliassen Palm pour chaque onde de gravité est choisie aléatoirement entre 0 et F$_{max}^{0}$. &lt;br /&gt;
J'ai fixé 10$^{-7}$ kg m$^{-1}$  s$^{-2}$ comme limite inférieure pour ces essais car l'impact des GW est négligeable dans DYNAMICO-Saturn pour un flux de quantité de mouvement inférieur à cette valeur, par rapport à une simulation sans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Nombre d'onde horizontal des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Le nombre d'onde horizontal des ondes de gravité $ \lvert k \rvert$ est défini de la même façon que pour la Terre \citep{lott_2012} et est distribué de la façon suivante : $k^{*} &amp;lt; \lvert k \rvert &amp;lt; k_{s}$. &lt;br /&gt;
&lt;br /&gt;
La valeur minimale est $k^{*} = \sqrt{1/ \Delta x\Delta y}$, où $\Delta x$ et $\Delta y$ sont équivalents aux dimensions d'une maille horizontale de DYNAMICO-Saturn ($\delta x$ et $\delta y \approx$ 525 km).&lt;br /&gt;
Cette valeur correspond aux ondes les plus longues que l'on paramètre avec la résolution horizontale actuelle du GCM. &lt;br /&gt;
&lt;br /&gt;
La valeur maximale, et donc saturée, est $k_{s} &amp;lt; N/u_{0}$, $N$ est la racine carré de la fréquence de Brünt-Väisälä associée à l'écoulement moyen et $u_{0}$ est le vent zonal moyen à l'altitude source $z_{0}$ des ondes de gravité. &lt;br /&gt;
&lt;br /&gt;
Les longueurs d'ondes horizontale minimale et maximale correspondantes pour les ondes de gravité ($\lambda_h$ = 2$\pi$/$k$ ) sont comprises entre 63 km et 3~000 km. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Vitesse de phase des ondes de gravité}&lt;br /&gt;
&lt;br /&gt;
La vitesse de phase des ondes de gravité $\lvert C \rvert = \lvert \omega/k \rvert$ est également un paramètre clé. &lt;br /&gt;
Comme l'ensemble des paramètres de réglage, la vitesse de phase des ondes $\lvert C \rvert$ est une distribution aléatoire de valeurs comprises entre une valeur minimale C$_{min}$ et une valeur maximale C$_{max}$. &lt;br /&gt;
Ici, C$_{min}$ est fixé à 1 m s$^{-1}$, pour obtenir un paquet d'ondes de gravité non-stationnaires. %et C$_{max}$ est égal à la vitesse de propagation du vent zonal $u$ à l'altitude source $z_{0}$. &lt;br /&gt;
L'effet de l'ensemble des ondes de gravité sur l'oscillation équatoriale de Saturne, qu'elles se propagent vers l'est (C $&amp;gt;$ 0) ou vers l'ouest (C $&amp;lt;$ 0), est considéré dans cette étude. &lt;br /&gt;
Quatre valeurs pour C$_{max}$ ont été testées pour évaluer la sensibilité du vent et de la température à ce paramètre. J'ai réalisé des tests pour C$_{max}$=15 m~s$^{-1}$, C$_{max}$=30 m~s$^{-1}$, C$_{max}$=70 m~s$^{-1}$ et C$_{max}$=100 m~s$^{-1}$.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Saturation des ondes de gravité}&lt;br /&gt;
La saturation des ondes de gravité, S$_c$, est également un paramètre de réglage dans ce schéma, qui contrôle le déferlement des ondes de gravité en limitant l'amplitude de $w_{s}$.&lt;br /&gt;
Ici, j'ai choisi de laisser une valeur de saturation neutre S$_c$ = 1. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2478</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2478"/>
				<updated>2025-03-05T09:39:58Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott)\citep{lott_2012,lott_2013}, Venus' model (F. LOTT, and S. LEBONNOIS)\citep{gilli_2017} and Mars' model (G.GILLI, F. FORGET and D.BARDET)\citep{gilli_2020}. &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization: &lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Inputs and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
! 0.1 INPUTS&lt;br /&gt;
     INTEGER, intent(in):: ngrid           ! number of atmospheric columns&lt;br /&gt;
     INTEGER, intent(in):: nlayer          ! number of atmospheric columns&lt;br /&gt;
     REAL, intent(in):: dtime              ! Time step of the Physics&lt;br /&gt;
     REAL, intent(in):: zmax_therm(ngrid)  ! Altitude of max velocity thermals (m)&lt;br /&gt;
     REAL,INTENT(IN) :: cpnew(ngrid,nlayer)! Cp of the atmosphere&lt;br /&gt;
     REAL,INTENT(IN) :: rnew(ngrid,nlayer) ! R of the atmosphere&lt;br /&gt;
     REAL, intent(in):: pp(ngrid, nlayer)  ! Pressure at full levels(Pa)&lt;br /&gt;
     REAL, intent(in):: pt(ngrid, nlayer)  ! Temperature at full levels(K)&lt;br /&gt;
     REAL, intent(in):: pu(ngrid, nlayer)  ! Zonal wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pv(ngrid, nlayer)  ! Meridional wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pdt(ngrid, nlayer) ! Tendency on temperature(K/s)&lt;br /&gt;
     REAL, intent(in):: pdu(ngrid, nlayer) ! Tendency on zonal wind(m/s/s)&lt;br /&gt;
     REAL, intent(in):: pdv(ngrid, nlayer) ! Tendency on meridional wind(m/s/s)&lt;br /&gt;
! 0.2 OUTPUTS&lt;br /&gt;
     REAL, intent(out):: zustr(ngrid)         ! Zonal surface stress&lt;br /&gt;
     REAL, intent(out):: zvstr(ngrid)         ! Meridional surface stress&lt;br /&gt;
     REAL, intent(out):: d_t(ngrid, nlayer)   ! Tendency on temperature (K/s) due to gravity waves (not used set to zero)&lt;br /&gt;
     REAL, intent(out):: d_u(ngrid, nlayer)   ! Tendency on zonal wind (m/s/s) due to gravity waves&lt;br /&gt;
     REAL, intent(out):: d_v(ngrid, nlayer)   ! Tendency on meridional wind (m/s/s) due to gravity waves&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this numerical scheme, at each time step and on each point of the horizontal grid, a finite number of waves, with randomly chosen characteristics, are launched upwards.&lt;br /&gt;
This multi-wave formalism generalises Eckermann's stochastic method and enables a very large number of waves to be generated at low cost.&lt;br /&gt;
The wave packet sent into the atmosphere is composed of M=NK$\times$NO$\times$NP types of waves, with NK=2 values for the wave number, NO=2 absolute values for the phase velocity and NP=2 propagation directions (eastward and westward) for the non-orbiting gravity waves.&lt;br /&gt;
This approach enables the GCM to process a large set of waves at a given time $t$ by adding the effect of these M=8 waves to that of the waves launched at previous time steps, in order to calculate trends.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The $\Delta t$ life cycle of gravity waves, i.e. from their generation to their break-up, is significantly longer than the $\delta t$ time step of the GCM.&lt;br /&gt;
On Earth, gravity wave theory indicates that atmospheric disturbances induced by convection have life cycles of about 1 day. \citep{lott_2013}.&lt;br /&gt;
&lt;br /&gt;
The spectrum, made up of triple discrete Fourier series, is discretised into 770 stochastic harmonics ($\approx$ M $\times \Delta t/\delta t$) which contribute to the wave field each day and at a given horizontal grid point. &lt;br /&gt;
At each time $t$, the $\omega'$ vertical velocity field of upward propagating gravity waves can be represented by this sum:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega' = \sum_{n = 1}^{\infty} C_{n} \omega'_{n}&lt;br /&gt;
	\label{eq:GWD_sum_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where $C_n$ are the normalisation coefficients, such that $\sum_{n=1}^{\infty} C_{n}^{2}=1$.&lt;br /&gt;
This is therefore a simple multi-wave representation, based on the principle of wave superposition, which is particularly suitable when linear dynamics is sufficient to describe the flow, where critical levels of wave absorption come into play. &lt;br /&gt;
&lt;br /&gt;
Here each of the vertical velocities $\omega‘_{n}$ can be treated independently of the others, and each coefficient $C_{n}^{2}$ is taken as the probability that the wave field is given by the vertical velocity of the gravity wave $\omega’_{n}$ :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\omega'_{n} = \Re \{ \hat{\omega}_{n}(z) e^{z/2H} e^{i(k_{n}x+l_{n}y-w_{n}t)} \}&lt;br /&gt;
	\label{eq:GWD_vertical_velocity_one}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent where the wave numbers $k_n$, $l_n$ and frequency $w_n$ are chosen at random. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In this formulation, $H$ is a vertical scale characteristic of the mean atmosphere under consideration and $z$ is the logarithmic pressure altitude $z = H \ln(P_r /P)$, with $P_r$ a reference pressure, taken here at source height (i.e. above typical convective cells).&lt;br /&gt;
&lt;br /&gt;
To evaluate the amplitude of $\omega'_{n}$, the vertical velocity is calculated randomly at a given launch altitude $z_0$, then iterated from one model level $z_1$ to the next $z_2$ by a non-rotating Wentzel-Kramers-Brillouin (WKB) approximation :}. Method developed by Léon Brillouin, Hendrik Anthony Kramers and Gregor Wentzel in 1926 to study the semi-classical regime of a quantum system. Based on quantum mechanics and therefore the wave nature of particles, the wave function is developed asymptotically to first order of the power of the $\hbar$ action quantum. The idea is that the Schrödinger equation is derived from the wave propagation equation, where it should therefore be possible to recover classical mechanics in the limit where $\hbar \rightarrow 0$, just as it is possible to recover geometrical optics when $\lambda \rightarrow 0$ in the theory of wave optics}. &lt;br /&gt;
Using this expression and the polarisation relation between the amplitudes of the large-scale horizontal wind $\hat{u}$ and the vertical wind $\hat{omega}$ (not shown here), it is possible to define the Eliassen-Palm flux of the wave packet sent into the atmosphere:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\overrightarrow{F^{z}}(k, l, \omega) = \Re \{ \rho_{r}\overrightarrow{\hat{u}\hat{\omega}^{*}} \} = \rho_{r}\frac{\overrightarrow{k}}{\lvert \overrightarrow{k} \rvert^{2}}m(z) \lvert \lvert \hat{\omega}(z) \rvert \rvert^{2}&lt;br /&gt;
	\label{eq:GWD_EPflux}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent with $k$, $l$ the horizontal wavenumbers and $w$ the frequency of the vertical velocity field. &lt;br /&gt;
This is included in the vertical wavenumber $m = \frac{N \lvert \overrightarrow{k} \rvert}{\Omega} $, according to the non-rotating WKB approximation, in the limit $H \rightarrow \infty$, with $\Omega = v - \overrightarrow{k}\overrightarrow{u}$ and $N$ the Brünt-Väisälä frequency \citep{lott_2012}. &lt;br /&gt;
In equation \ref{eq:GWD_EPflux}, $\rho_{r}$ is the density of the fluid at the reference pressure level $P_r$.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
In this scheme, $\hat{\omega}_{n}$ and the Eliassen Palm flow are randomly imposed at a given launch altitude $z_0$. &lt;br /&gt;
A constant vertical viscosity $\mu$ (equation 4 in \cite{lott_2012}) controls the vertical distribution of gravity wave drag near the top of the model. &lt;br /&gt;
To move from one vertical level to the one just above, the Eliassen Palm flux is essentially conserved, but may undergo a small diffusivity, $\nu = \mu/\rho_0$, which can be included by replacing $\Omega$ by $\Omega + i\nu m^{2}$. &lt;br /&gt;
This small diffusivity guarantees that the waves are finally dissipated on the last few levels of the model, if they have not been dissipated before (hence the division by the density $\rho_0$). &lt;br /&gt;
Moreover, this new amplitude of the Eliassen Palm flux is limited to that produced by a saturated monochromatic $\hat{omega}_{s}$ wave following \citep{lindzen_1981} :&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\hat{\omega}_{s} = S_{c}\frac{\Omega^{2}}{\lvert \overrightarrow{k}\rvert N}e^{-z/2H}\frac{k^{*}}{\lvert \overrightarrow{k}\rvert}&lt;br /&gt;
	\label{eq:GWD_breaking_vertical_velocity}&lt;br /&gt;
\end{equation}&lt;br /&gt;
&lt;br /&gt;
\noindent or $\hat{\omega}$ = 0 when $\Omega$ changes sign, to deal with critical levels. &lt;br /&gt;
In equation \ref{eq:GWD_breaking_vertical_velocity}, $S_{c}$ is a setting parameter and $k^{*}$ a characteristic horizontal wave number corresponding to the largest parameterized wave.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the $\rho^{-1}\delta_z \overrightarrow{F}^{z}_{n‘}$ ($n’$=1, M) trends produced by the drag of the M generated gravity waves are calculated through the wind trends to be applied to the horizontal zonal wind. &lt;br /&gt;
Since the $\omega'_n$ speeds are independent realisations, the mean trend produced is the average of these M trends.&lt;br /&gt;
Thus, the average trend is first redistributed over the longest time scale $\delta t$ by rescaling it by $\delta t / \Delta t$ and then, the first-order autoregressive relationship (AR-1)\footnote{\textbf{First-order autoregressive relationship:} In statistics or signal processing, an AR model is a representation of a time-varying random process (such as nature or the economy). &lt;br /&gt;
The auto-regressive model specifies that the final variable depends linearly on its previous values and a stochastic term (imperfect predictive term), the specificity of order 1 being that the previous values are those obtained at the time step just prior to the one under consideration. In this case the values of the zonal wind trends at the previous time step $frac{\delta t - \delta t}{\delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-. \frac{\delta t}_{GW}$ are added to the drag of the stochastic gravity wave packet of the current time step $\frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n‘ = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n’}}{\delta z}$. } described in \cite{lott_2012} is used as follows:&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	\left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t}_{GW} = \frac{\delta t}{\Delta t}\frac{1}{M}\sum^{M}_{n' = 1}\frac{1}{\rho_{0}}\frac{\delta \overrightarrow{F}^{z}_{n'}}{\delta z} + \frac{\Delta t - \delta t}{\Delta t} \left( \frac{\delta \overrightarrow{u}}{\delta t} \right)^{t-\delta t}_{GW}&lt;br /&gt;
	\label{eq:GWD_zonal_wind_forcing}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent to highlight the formalised superposition of stochastic waves from the cumulative sum of zonal wind tendencies due to gravity waves, taking as a normalisation coefficient : &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
\begin{equation}&lt;br /&gt;
	C^{2}_{n} = \left( \frac{\Delta t - \delta t}{\Delta t} \right)^{q}\frac{\delta t}{M\Delta t}&lt;br /&gt;
	\label{eq:normalize_coeff}&lt;br /&gt;
\end{equation}&lt;br /&gt;
\noindent où $q$ est le nombre entier le plus proche qui arrondit (n-1)/M (c'est-à-dire vers des valeurs plus faibles).&lt;br /&gt;
&lt;br /&gt;
\newpage&lt;br /&gt;
	\subsection{Paramètres de réglage}&lt;br /&gt;
	\label{GWD_parametres}&lt;br /&gt;
	&lt;br /&gt;
The characteristics of each wave launched into the GCM are chosen at random with a prescribed probability distribution, the limits of which are the key parameters of the model. &lt;br /&gt;
These are chosen on the basis of observational constraints (where available) and theoretical considerations. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- L'un des avantages du schéma utilisé ici est que chaque paramètre a une signification physique, comme décrit ci-dessous :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Source et durée de vie des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Tout d'abord, la paramétrisation présentée ici s'appuie sur l'hypothèse que la source des ondes de gravité (GW) non-orographiques est placée au-dessus des cellules convectives de la troposphère.&lt;br /&gt;
&lt;br /&gt;
Le paramètre contrôlant le niveau de lancement des ondes z$_0$ est $\sigma$ = P/Ps. %, ce qui correspond à une région centrée à environ 250 Pa (8 km), couvrant des pressions de 160 Pa à 348 Pa, en fonction de la pression de surface Ps et variant avec la saison.&lt;br /&gt;
Comme aucune information sur l'altitude de lancement des ondes n'a été observée au cours de la mission \emph{Cassini-Huygens}, ou avec des télescopes depuis le sol, l'altitude de lancement du paquet d'ondes sera un paramètre à régler.&lt;br /&gt;
En considérant la pression de ``surface'' Ps égale à la pression en bas du domaine modélisé (3 bar), je vais commencer les tests en imposant une valeur arbitraire de $\sigma$=0,4 correspond à une pression de lancement d'ondes à 1,2 bar. &lt;br /&gt;
Puis je tenterai d'ajuster la valeur de $\sigma$ une fois que les paramètres les plus impactant (l'amplitude maximale du flux d'Eliassen Palm et la vitesse de phase maximale des ondes) auront été fixés, voir tableau \ref{tab:GWD_param_test_61lvl}.  &lt;br /&gt;
&lt;br /&gt;
La source est choisie pour être uniforme, sans variation de la latitude, et à part les profils atmosphériques par lesquels la propagation des GW est modélisée, rien d'autre dans le schéma ne varie en fonction du lieu ou de la saison. &lt;br /&gt;
Étant donné que les GW non-orographiques sont censées être générées par des sources multiples (convection, accélération de jet, etc.) et que cela représente une interaction complexe de l'échelle de temps pour les GCM, la source est supposée continue sur toute la journée, ce qui est cohérent avec l'absence de cycle diurne pour les géantes gazeuses. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Amplitude maximale du flux d'Eliassen Palm :}&lt;br /&gt;
&lt;br /&gt;
L'amplitude maximale du flux d'Eliassen Palm F$^{z}$ (équation \ref{eq:GWD_EPflux}), associé aux ondes de gravité, donne le taux de transfert vertical du moment horizontal de l'onde par unité de surface.&lt;br /&gt;
Cette valeur n'a jamais été mesurée dans l'atmosphère de Saturne, et représente donc un degré de liberté important dans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
Dans ce schéma, la valeur maximale de la distribution de probabilité F$_{max}^{z}$ est imposée à l'altitude de lancement z$_0$, pour chaque simulation test réalisée.&lt;br /&gt;
Afin de définir F$_{max}^{0}$, je me suis appuyée sur des estimations de flux de quantité de mouvement estimée à partir des observations de température dans la stratosphère équatoriale.&lt;br /&gt;
Sachant que la composante verticale du flux de quantité de mouvement des ondes diminue seulement lorsque les ondes déposent de la quantité de mouvement dans l'atmosphère, \cite{guerlet_2018} ont pu estimer cette grandeur par unité de densité en multipliant le taux de descente induit par les ondes par le changement net du vent zonal entre les phases opposées de l'oscillation \citep{dunkerton_1991}.&lt;br /&gt;
Ainsi, cette étude a montré que le flux de quantité de mouvement des ondes diminue avec l'altitude, avec un flux moyen de quantité de mouvement d'onde absorbé dans la stratosphère  (e.g. $\rho\bar{u'\omega'}$) de l'ordre de $\approx$7$\times$10$^{-6}$ kg m$^{-1}$ s$^{-2}$.&lt;br /&gt;
Cette estimation permet de fournir une contrainte en ordre de grandeur pour les modèles.&lt;br /&gt;
&lt;br /&gt;
Il convient de souligner ici que l'approche stochastique mise en œuvre dans ce schéma a l'avantage de traiter une grande diversité d'ondes de gravité émises, et donc une grande diversité de flux d'énergie cinétique.&lt;br /&gt;
Le paramètre principal est l'amplitude maximale du flux d'Eliassen Palm à l'altitude de lancement, c'est pourquoi j'ai testé plusieurs valeurs de F$^{0}_{max}$ comprise entre 10$^{-7}$ kg m$^{-1}$ s$^{-2}$ et 10$^{-4}$ kg m$^{-1}$ s$^{-2}$, afin de largement encadrer la valeur estimée à partir des observations de \cite{guerlet_2018}. &lt;br /&gt;
Ensuite, l'amplitude du flux d'Eliassen Palm pour chaque onde de gravité est choisie aléatoirement entre 0 et F$_{max}^{0}$. &lt;br /&gt;
J'ai fixé 10$^{-7}$ kg m$^{-1}$  s$^{-2}$ comme limite inférieure pour ces essais car l'impact des GW est négligeable dans DYNAMICO-Saturn pour un flux de quantité de mouvement inférieur à cette valeur, par rapport à une simulation sans la paramétrisation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Nombre d'onde horizontal des ondes de gravité :}&lt;br /&gt;
&lt;br /&gt;
Le nombre d'onde horizontal des ondes de gravité $ \lvert k \rvert$ est défini de la même façon que pour la Terre \citep{lott_2012} et est distribué de la façon suivante : $k^{*} &amp;lt; \lvert k \rvert &amp;lt; k_{s}$. &lt;br /&gt;
&lt;br /&gt;
La valeur minimale est $k^{*} = \sqrt{1/ \Delta x\Delta y}$, où $\Delta x$ et $\Delta y$ sont équivalents aux dimensions d'une maille horizontale de DYNAMICO-Saturn ($\delta x$ et $\delta y \approx$ 525 km).&lt;br /&gt;
Cette valeur correspond aux ondes les plus longues que l'on paramètre avec la résolution horizontale actuelle du GCM. &lt;br /&gt;
&lt;br /&gt;
La valeur maximale, et donc saturée, est $k_{s} &amp;lt; N/u_{0}$, $N$ est la racine carré de la fréquence de Brünt-Väisälä associée à l'écoulement moyen et $u_{0}$ est le vent zonal moyen à l'altitude source $z_{0}$ des ondes de gravité. &lt;br /&gt;
&lt;br /&gt;
Les longueurs d'ondes horizontale minimale et maximale correspondantes pour les ondes de gravité ($\lambda_h$ = 2$\pi$/$k$ ) sont comprises entre 63 km et 3~000 km. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Vitesse de phase des ondes de gravité}&lt;br /&gt;
&lt;br /&gt;
La vitesse de phase des ondes de gravité $\lvert C \rvert = \lvert \omega/k \rvert$ est également un paramètre clé. &lt;br /&gt;
Comme l'ensemble des paramètres de réglage, la vitesse de phase des ondes $\lvert C \rvert$ est une distribution aléatoire de valeurs comprises entre une valeur minimale C$_{min}$ et une valeur maximale C$_{max}$. &lt;br /&gt;
Ici, C$_{min}$ est fixé à 1 m s$^{-1}$, pour obtenir un paquet d'ondes de gravité non-stationnaires. %et C$_{max}$ est égal à la vitesse de propagation du vent zonal $u$ à l'altitude source $z_{0}$. &lt;br /&gt;
L'effet de l'ensemble des ondes de gravité sur l'oscillation équatoriale de Saturne, qu'elles se propagent vers l'est (C $&amp;gt;$ 0) ou vers l'ouest (C $&amp;lt;$ 0), est considéré dans cette étude. &lt;br /&gt;
Quatre valeurs pour C$_{max}$ ont été testées pour évaluer la sensibilité du vent et de la température à ce paramètre. J'ai réalisé des tests pour C$_{max}$=15 m~s$^{-1}$, C$_{max}$=30 m~s$^{-1}$, C$_{max}$=70 m~s$^{-1}$ et C$_{max}$=100 m~s$^{-1}$.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
		\subsubsection{Saturation des ondes de gravité}&lt;br /&gt;
La saturation des ondes de gravité, S$_c$, est également un paramètre de réglage dans ce schéma, qui contrôle le déferlement des ondes de gravité en limitant l'amplitude de $w_{s}$.&lt;br /&gt;
Ici, j'ai choisi de laisser une valeur de saturation neutre S$_c$ = 1. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2465</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2465"/>
				<updated>2025-03-05T09:24:51Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and D.BARDET). &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
* input flux compensated in the deepest layers&lt;br /&gt;
* Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
* reproductibility of the launching altitude calculation &lt;br /&gt;
* wave characteristic calculation using MOD&lt;br /&gt;
* adding east_gwstress and west_gwstress variables&lt;br /&gt;
* The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Inputs and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
! 0.1 INPUTS&lt;br /&gt;
     INTEGER, intent(in):: ngrid           ! number of atmospheric columns&lt;br /&gt;
     INTEGER, intent(in):: nlayer          ! number of atmospheric columns&lt;br /&gt;
     REAL, intent(in):: dtime              ! Time step of the Physics&lt;br /&gt;
     REAL, intent(in):: zmax_therm(ngrid)  ! Altitude of max velocity thermals (m)&lt;br /&gt;
     REAL,INTENT(IN) :: cpnew(ngrid,nlayer)! Cp of the atmosphere&lt;br /&gt;
     REAL,INTENT(IN) :: rnew(ngrid,nlayer) ! R of the atmosphere&lt;br /&gt;
     REAL, intent(in):: pp(ngrid, nlayer)  ! Pressure at full levels(Pa)&lt;br /&gt;
     REAL, intent(in):: pt(ngrid, nlayer)  ! Temperature at full levels(K)&lt;br /&gt;
     REAL, intent(in):: pu(ngrid, nlayer)  ! Zonal wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pv(ngrid, nlayer)  ! Meridional wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pdt(ngrid, nlayer) ! Tendency on temperature(K/s)&lt;br /&gt;
     REAL, intent(in):: pdu(ngrid, nlayer) ! Tendency on zonal wind(m/s/s)&lt;br /&gt;
     REAL, intent(in):: pdv(ngrid, nlayer) ! Tendency on meridional wind(m/s/s)&lt;br /&gt;
! 0.2 OUTPUTS&lt;br /&gt;
     REAL, intent(out):: zustr(ngrid)         ! Zonal surface stress&lt;br /&gt;
     REAL, intent(out):: zvstr(ngrid)         ! Meridional surface stress&lt;br /&gt;
     REAL, intent(out):: d_t(ngrid, nlayer)   ! Tendency on temperature (K/s) due to gravity waves (not used set to zero)&lt;br /&gt;
     REAL, intent(out):: d_u(ngrid, nlayer)   ! Tendency on zonal wind (m/s/s) due to gravity waves&lt;br /&gt;
     REAL, intent(out):: d_v(ngrid, nlayer)   ! Tendency on meridional wind (m/s/s) due to gravity waves&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization: &lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2463</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2463"/>
				<updated>2025-03-05T09:22:09Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
In the code, the FORTRAN file corresponding to this parametrization is &amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;nonoro_gwd_ran_mod.F90&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and D.BARDET). &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
- input flux compensated in the deepest layers&lt;br /&gt;
- Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
- reproductibility of the launching altitude calculation &lt;br /&gt;
- wave characteristic calculation using MOD&lt;br /&gt;
- adding east_gwstress and west_gwstress variables&lt;br /&gt;
- The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
== Name of the Fortran files linked to the param ==&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Inputs and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
! 0.1 INPUTS&lt;br /&gt;
     INTEGER, intent(in):: ngrid           ! number of atmospheric columns&lt;br /&gt;
     INTEGER, intent(in):: nlayer          ! number of atmospheric columns&lt;br /&gt;
     REAL, intent(in):: dtime              ! Time step of the Physics&lt;br /&gt;
     REAL, intent(in):: zmax_therm(ngrid)  ! Altitude of max velocity thermals (m)&lt;br /&gt;
     REAL,INTENT(IN) :: cpnew(ngrid,nlayer)! Cp of the atmosphere&lt;br /&gt;
     REAL,INTENT(IN) :: rnew(ngrid,nlayer) ! R of the atmosphere&lt;br /&gt;
     REAL, intent(in):: pp(ngrid, nlayer)  ! Pressure at full levels(Pa)&lt;br /&gt;
     REAL, intent(in):: pt(ngrid, nlayer)  ! Temperature at full levels(K)&lt;br /&gt;
     REAL, intent(in):: pu(ngrid, nlayer)  ! Zonal wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pv(ngrid, nlayer)  ! Meridional wind at full levels(m/s)&lt;br /&gt;
     REAL, intent(in):: pdt(ngrid, nlayer) ! Tendency on temperature(K/s)&lt;br /&gt;
     REAL, intent(in):: pdu(ngrid, nlayer) ! Tendency on zonal wind(m/s/s)&lt;br /&gt;
     REAL, intent(in):: pdv(ngrid, nlayer) ! Tendency on meridional wind(m/s/s)&lt;br /&gt;
! 0.2 OUTPUTS&lt;br /&gt;
     REAL, intent(out):: zustr(ngrid)         ! Zonal surface stress&lt;br /&gt;
     REAL, intent(out):: zvstr(ngrid)         ! Meridional surface stress&lt;br /&gt;
     REAL, intent(out):: d_t(ngrid, nlayer)   ! Tendency on temperature (K/s) due to gravity waves (not used set to zero)&lt;br /&gt;
     REAL, intent(out):: d_u(ngrid, nlayer)   ! Tendency on zonal wind (m/s/s) due to gravity waves&lt;br /&gt;
     REAL, intent(out):: d_v(ngrid, nlayer)   ! Tendency on meridional wind (m/s/s) due to gravity waves&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization: &lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2462</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2462"/>
				<updated>2025-03-05T09:16:25Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and D.BARDET). &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
- input flux compensated in the deepest layers&lt;br /&gt;
- Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
- reproductibility of the launching altitude calculation &lt;br /&gt;
- wave characteristic calculation using MOD&lt;br /&gt;
- adding east_gwstress and west_gwstress variables&lt;br /&gt;
- The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
== Name of the Fortran files linked to the param ==&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;br /&gt;
&lt;br /&gt;
== In- and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization: &lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
epflux_max&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot;&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2461</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2461"/>
				<updated>2025-03-05T09:15:30Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and D.BARDET). &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
- input flux compensated in the deepest layers&lt;br /&gt;
- Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
- reproductibility of the launching altitude calculation &lt;br /&gt;
- wave characteristic calculation using MOD&lt;br /&gt;
- adding east_gwstress and west_gwstress variables&lt;br /&gt;
- The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
== Name of the Fortran files linked to the param ==&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;br /&gt;
&lt;br /&gt;
== In- and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization: &lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
epflux_max&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;fortran&amp;quot; line&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2458</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2458"/>
				<updated>2025-03-05T09:13:37Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and D.BARDET). &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
- input flux compensated in the deepest layers&lt;br /&gt;
- Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
- reproductibility of the launching altitude calculation &lt;br /&gt;
- wave characteristic calculation using MOD&lt;br /&gt;
- adding east_gwstress and west_gwstress variables&lt;br /&gt;
- The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
== Name of the Fortran files linked to the param ==&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;br /&gt;
&lt;br /&gt;
== In- and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the ''callphys.def'' ==&lt;br /&gt;
&lt;br /&gt;
To activate this parametrization: &lt;br /&gt;
&lt;br /&gt;
You have to set the maximum value of the Eliassen-Palm flux that can be transported by the wave package:&lt;br /&gt;
epflux_max&lt;br /&gt;
&lt;br /&gt;
Additional parameters can be also change in the ''callphys.def'' (do not worry if you do not want to change them, they have default values in the code) &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sat ! default gravity waves saturation value = 1.  !!&lt;br /&gt;
cmax ! default gravity waves phase velocity value = 30.  !!&lt;br /&gt;
rdiss ! default coefficient of dissipation = 1 !!&lt;br /&gt;
kmax ! default Max horizontal wavenumber = 1.e-4 !!&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2454</id>
		<title>Non orographic gravity waves drag</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Non_orographic_gravity_waves_drag&amp;diff=2454"/>
				<updated>2025-03-05T09:03:46Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: Created page with &amp;quot;== Description of the physical process the module takes care of ==  Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generate...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description of the physical process the module takes care of ==&lt;br /&gt;
&lt;br /&gt;
Parametrization of the momentum flux deposition due to a discrete number of gravity waves randomly generated by setting their waves characteristics (set as Gaussian distribution).  &lt;br /&gt;
&lt;br /&gt;
Inherited and adapted from Earth's model (F. Lott), Venus' model (F. LOTT, and S. LEBONNOIS) and Mars' model (G.GILLI, F. FORGET and D.BARDET). &lt;br /&gt;
Parametrization implemented in the Generic PCM by D.BARDET is the case of Giant Planets and updated J.LIU&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 F. Lott&lt;br /&gt;
Version 14, Gaussian distribution of the source&lt;br /&gt;
LMDz model online version      &lt;br /&gt;
ADAPTED FOR VENUS /  &lt;br /&gt;
Version adapted on 03/04/2013:&lt;br /&gt;
      &lt;br /&gt;
                           &lt;br /&gt;
ADAPTED FOR MARS          02/2016&lt;br /&gt;
        Revision with     06/2016  &lt;br /&gt;
                          01/2020      &lt;br /&gt;
&lt;br /&gt;
 ADAPTED FOR GENERIC  D.BARDET    01/2020&lt;br /&gt;
 UPDATED              J.LIU       12/2021  &lt;br /&gt;
&lt;br /&gt;
== Underlying hypotheses and limitations ==&lt;br /&gt;
&lt;br /&gt;
- input flux compensated in the deepest layers&lt;br /&gt;
- Variable EP-flux according to PBL variation (max velocity thermals)&lt;br /&gt;
- reproductibility of the launching altitude calculation &lt;br /&gt;
- wave characteristic calculation using MOD&lt;br /&gt;
- adding east_gwstress and west_gwstress variables&lt;br /&gt;
- The rho (density) at the specific locations is introduced. The equation of EP-flux is corrected by adding the term of density at launch (source) altitude(level)&lt;br /&gt;
&lt;br /&gt;
== Equations that are being solved, whenever possible ==&lt;br /&gt;
&lt;br /&gt;
== Name of the Fortran files linked to the param ==&lt;br /&gt;
&lt;br /&gt;
== Important variables and their names in the code ==&lt;br /&gt;
&lt;br /&gt;
== In- and outputs of the module ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dedicated flags to call in the callphys.def ==&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1176</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1176"/>
				<updated>2023-01-25T11:48:32Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin (I will update this case as soon as Siddharth has committed changes)&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: https://gitlab.in2p3.fr/aymeric.spiga/dynamico-giant (the old repo is archived as read-only https://github.com/aymeric-spiga/dynamico-giant)&lt;br /&gt;
&lt;br /&gt;
The [[Dynamico-giant | DYNAMICO-giant wiki is here]]&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the GitLab repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory, which are referenced in the following lines without the prefix 'arch-' (i.e., arch-X64_IRENE-AMD.env will be referenced as X64_IRENE-AMD).  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/ioipsl/                                                                                                             &lt;br /&gt;
    ./install_ioipsl_YOUR-MACHINE.bash&lt;br /&gt;
cd ../../&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd XIOS/                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSAGCM/&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSA_LMDZ/&lt;br /&gt;
    ./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -nodeps&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This last step is a bit redundant with the two previous one, hence ''make_icosa_lmdz'' will execute ''./make_icosa'' (in the '''ICOSAGCM''' directory) and ''./makelmdz_fcm'' (in the '''LMDZ.COMMON''' directory) to create and source the architecture files shared between all parts of the model, as well as create the intermediate file ''config.fcm''. As you have already compiled these two elements, ''make_icosa_lmdz'' should only create the linked architecture files, ''config.fcm'' and compile the interface. Here, ''-nodeps'' option prevents the checking of XIOS and IOIPSL compilation, which saves you from recompiling these two elements again.&lt;br /&gt;
      &lt;br /&gt;
Finally, your executable programs should appeared in '''ICOSA_LMDZ/bin''' subdirectory, as '''icosa_lmdz.exe''' and in '''XIOS/bin''' subdirectory, as '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings (i.e., through you target architecture file).&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
Here, ''-full'' option assure the compilation of each part ('''IOIPSL''', '''XIOS''', '''LMDZ.COMMON''', '''ICOSAGCM''' and '''ICOSA_LMDZ''') of the model.  &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitLab file architecture (https://gitlab.in2p3.fr/aymeric.spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance ''dynamico-giant/jupiter/'') by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
To model the subgrid atmospheric turbulence, the WRF dynamical core coupled with the LMD Generic physics package is used. The first studied conducted was to resolve the convective activity of the substellar point of Proxami-b (Lefevre et al 2021). The impact of the stellar insolation and rotation period were studied. The files for the reference case, with a stellar flux of 880 W/m2 and an 11 days rotation period, are presented&lt;br /&gt;
&lt;br /&gt;
The input_* file are the used to initialize the temperature, pressure, winds and moisture of the domain. &lt;br /&gt;
input_souding : altitude (km), potential temperature, water vapour (kg/kg), u, v&lt;br /&gt;
input_therm : normalized gas constant, isobaric heat capacity, pressure, density, temperature&lt;br /&gt;
input_hr : SW heating, LW heating, Large-scale heating extracted from the GCM. Only the last one is used in this configuration.&lt;br /&gt;
&lt;br /&gt;
The file namelist.input is used to set up the domain parameters (resolution, grid points, etc). The file levels specifies the eta-levels of the vertical domain.&lt;br /&gt;
&lt;br /&gt;
Planet is used set up the atmospheric parameters, in order : gravity (m/s2), isobaric heat capacity (J/kg/K), molecular mass (g/mol), reference temperature (K), surface pressure (Pa), planet radius (m) and planet rotation rate (s-1).&lt;br /&gt;
&lt;br /&gt;
The files *.def are the parameter for the physics. Compared to GCM runs, the convective adjustment in callphys.def is turned off&lt;br /&gt;
&lt;br /&gt;
The file controle.txt, equivalent of the field controle in GCM start.nc, needed to initialize some physics constants.&lt;br /&gt;
&lt;br /&gt;
TBC ML&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1030</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1030"/>
				<updated>2022-10-21T15:50:41Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory, which are referenced in the following lines without the prefix 'arch-' (i.e., arch-X64_IRENE-AMD.env will be referenced as X64_IRENE-AMD).  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/ioipsl/                                                                                                             &lt;br /&gt;
    ./install_ioipsl_YOUR-MACHINE.bash&lt;br /&gt;
cd ../../&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd XIOS/                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSAGCM/&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSA_LMDZ/&lt;br /&gt;
    ./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -nodeps&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This last step is a bit redundant with the two previous one, hence ''make_icosa_lmdz'' will execute ''./make_icosa'' (in the '''ICOSAGCM''' directory) and ''./makelmdz_fcm'' (in the '''LMDZ.COMMON''' directory) to create and source the architecture files shared between all parts of the model, as well as create the intermediate file ''config.fcm''. As you have already compiled these two elements, ''make_icosa_lmdz'' should only create the linked architecture files, ''config.fcm'' and compile the interface. Here, ''-nodeps'' option prevents the checking of XIOS and IOIPSL compilation, which saves you from recompiling these two elements again.&lt;br /&gt;
      &lt;br /&gt;
Finally, your executable programs should appeared in '''ICOSA_LMDZ/bin''' subdirectory, as '''icosa_lmdz.exe''' and in '''XIOS/bin''' subdirectory, as '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings (i.e., through you target architecture file).&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
Here, ''-full'' option assure the compilation of each part ('''IOIPSL''', '''XIOS''', '''LMDZ.COMMON''', '''ICOSAGCM''' and '''ICOSA_LMDZ''') of the model.  &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance ''dynamico-giant/jupiter/'') by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
To model the subgrid atmospheric turbulence, the WRF dynamical core coupled with the LMD Generic physics package is used. The first studied conducted was to resolve the convective activity of the substellar point of Proxami-b (Lefevre et al 2021). The impact of the stellar insolation and rotation period were studied. The files for the reference case, with a stellar flux of 880 W/m2 and an 11 days rotation period, are presented&lt;br /&gt;
&lt;br /&gt;
The input_* file are the used to initialize the temperature, pressure, winds and moisture of the domain. &lt;br /&gt;
input_souding : altitude (km), potential temperature, water vapour (kg/kg), u, v&lt;br /&gt;
input_therm : normalized gas constant, isobaric heat capacity, pressure, density, temperature&lt;br /&gt;
input_hr : SW heating, LW heating, Large-scale heating extracted from the GCM. Only the last one is used in this configuration.&lt;br /&gt;
&lt;br /&gt;
The file namelist.input is used to set up the domain parameters (resolution, grid points, etc). The file levels specifies the eta-levels of the vertical domain.&lt;br /&gt;
&lt;br /&gt;
Planet is used set up the atmospheric parameters, in order : gravity (m/s2), isobaric heat capacity (J/kg/K), molecular mass (g/mol), reference temperature (K), surface pressure (Pa), planet radius (m) and planet rotation rate (s-1).&lt;br /&gt;
&lt;br /&gt;
The files *.def are the parameter for the physics. Compared to GCM runs, the convective adjustment in callphys.def is turned off&lt;br /&gt;
&lt;br /&gt;
The file controle.txt, equivalent of the field controle in GCM start.nc, needed to initialize some physics constants.&lt;br /&gt;
&lt;br /&gt;
TBC ML&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1029</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1029"/>
				<updated>2022-10-21T10:02:44Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory, which are referenced in the following lines without the prefix 'arch-' (i.e., arch-X64_IRENE-AMD.env will be referenced as X64_IRENE-AMD).  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/ioipsl/                                                                                                             &lt;br /&gt;
    ./install_ioipsl_YOUR-MACHINE.bash&lt;br /&gt;
cd ../../&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd XIOS/                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSAGCM/&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSA_LMDZ/&lt;br /&gt;
    ./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -nodeps&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This last step is a bit redundant with the two previous one, hence ''make_icosa_lmdz'' will execute ''./make_icosa'' (in the '''ICOSAGCM''' directory) and ''./makelmdz_fcm'' (in the '''LMDZ.COMMON''' directory) to create and source the architecture files shared between all parts of the model, as well as create the intermediate file ''config.fcm''. As you have already compiled these two elements, ''make_icosa_lmdz'' should only create the linked architecture files, ''config.fcm'' and compile the interface. Here, ''-nodeps'' option prevents the checking of XIOS and IOIPSL compilation, which saves you from recompiling these two elements again.&lt;br /&gt;
      &lt;br /&gt;
Finally, your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as '''icosa_lmdz.exe''' and in ''XIOS/bin'' subdirectory, as '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings (i.e., through you target architecture file).&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
Here, ''-full'' option assure the compilation of each part ('''IOIPSL''', '''XIOS''', '''LMDZ.COMMON''', '''ICOSAGCM''' and '''ICOSA_LMDZ''') of the model.  &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance ''dynamico-giant/jupiter/'') by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
To model the subgrid atmospheric turbulence, the WRF dynamical core coupled with the LMD Generic physics package is used. The first studied conducted was to resolve the convective activity of the substellar point of Proxami-b (Lefevre et al 2021). The impact of the stellar insolation and rotation period were studied. The files for the reference case, with a stellar flux of 880 W/m2 and an 11 days rotation period, are presented&lt;br /&gt;
&lt;br /&gt;
The input_* file are the used to initialize the temperature, pressure, winds and moisture of the domain. &lt;br /&gt;
input_souding : altitude (km), potential temperature, water vapour (kg/kg), u, v&lt;br /&gt;
input_therm : normalized gas constant, isobaric heat capacity, pressure, density, temperature&lt;br /&gt;
input_hr : SW heating, LW heating, Large-scale heating extracted from the GCM. Only the last one is used in this configuration.&lt;br /&gt;
&lt;br /&gt;
The file namelist.input is used to set up the domain parameters (resolution, grid points, etc). The file levels specifies the eta-levels of the vertical domain.&lt;br /&gt;
&lt;br /&gt;
Planet is used set up the atmospheric parameters, in order : gravity (m/s2), isobaric heat capacity (J/kg/K), molecular mass (g/mol), reference temperature (K), surface pressure (Pa), planet radius (m) and planet rotation rate (s-1).&lt;br /&gt;
&lt;br /&gt;
The files *.def are the parameter for the physics. Compared to GCM runs, the convective adjustment in callphys.def is turned off&lt;br /&gt;
&lt;br /&gt;
The file controle.txt, equivalent of the field controle in GCM start.nc, needed to initialize some physics constants.&lt;br /&gt;
&lt;br /&gt;
TBC ML&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1028</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1028"/>
				<updated>2022-10-21T09:59:41Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory, which are referenced in the following lines without the prefix 'arch-' (i.e., arch-X64_IRENE-AMD.env will be referenced as X64_IRENE-AMD).  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/ioipsl/                                                                                                             &lt;br /&gt;
    ./install_ioipsl_YOUR-MACHINE.bash&lt;br /&gt;
cd ../../&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd XIOS/                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSAGCM/&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSA_LMDZ/&lt;br /&gt;
    ./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -nodeps&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This last step is a bit redundant with the two previous one, hence ''make_icosa_lmdz'' will execute ''./make_icosa'' (in the '''ICOSAGCM''' directory) and ''./makelmdz_fcm'' (in the '''LMDZ.COMMON''' directory) to create and source the architecture files shared between all parts of the model, as well as create the intermediate file ''config.fcm''. As you have already compiled these two elements, ''make_icosa_lmdz'' should only create the linked architecture files, ''config.fcm'' and compile the interface. Here, ''-nodeps'' option prevents the checking of XIOS and IOIPSL compilation.      &lt;br /&gt;
Finally, your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as '''icosa_lmdz.exe''' and in ''XIOS/bIn'' subdirectory, as '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings (i.e., through you target architecture file).&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
Here, ''-full'' option assure the compilation of each part ('''IOIPSL''', '''XIOS''', '''LMDZ.COMMON''', '''ICOSAGCM''' and '''ICOSA_LMDZ''') of the model.  &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance ''dynamico-giant/jupiter/'') by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
To model the subgrid atmospheric turbulence, the WRF dynamical core coupled with the LMD Generic physics package is used. The first studied conducted was to resolve the convective activity of the substellar point of Proxami-b (Lefevre et al 2021). The impact of the stellar insolation and rotation period were studied. The files for the reference case, with a stellar flux of 880 W/m2 and an 11 days rotation period, are presented&lt;br /&gt;
&lt;br /&gt;
The input_* file are the used to initialize the temperature, pressure, winds and moisture of the domain. &lt;br /&gt;
input_souding : altitude (km), potential temperature, water vapour (kg/kg), u, v&lt;br /&gt;
input_therm : normalized gas constant, isobaric heat capacity, pressure, density, temperature&lt;br /&gt;
input_hr : SW heating, LW heating, Large-scale heating extracted from the GCM. Only the last one is used in this configuration.&lt;br /&gt;
&lt;br /&gt;
The file namelist.input is used to set up the domain parameters (resolution, grid points, etc). The file levels specifies the eta-levels of the vertical domain.&lt;br /&gt;
&lt;br /&gt;
Planet is used set up the atmospheric parameters, in order : gravity (m/s2), isobaric heat capacity (J/kg/K), molecular mass (g/mol), reference temperature (K), surface pressure (Pa), planet radius (m) and planet rotation rate (s-1).&lt;br /&gt;
&lt;br /&gt;
The files *.def are the parameter for the physics. Compared to GCM runs, the convective adjustment in callphys.def is turned off&lt;br /&gt;
&lt;br /&gt;
The file controle.txt, equivalent of the field controle in GCM start.nc, needed to initialize some physics constants.&lt;br /&gt;
&lt;br /&gt;
TBC ML&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1026</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1026"/>
				<updated>2022-10-20T15:44:49Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory, which are referenced in the following lines without the prefix 'arch-' (i.e., arch-X64_IRENE-AMD.env will be referenced as X64_IRENE-AMD).  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/ioipsl/                                                                                                             &lt;br /&gt;
    ./install_ioipsl_YOUR-MACHINE.bash&lt;br /&gt;
cd ../../&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd XIOS/                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSAGCM/&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSA_LMDZ/&lt;br /&gt;
    ./build --job 8 --full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as:&lt;br /&gt;
'''icosa_lmdz.exe''' and '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings.&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance Jupiter) by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
To model the subgrid atmospheric turbulence, the WRF dynamical core coupled with the LMD Generic physics package is used. The first studied conducted was to resolve the convective activity of the substellar point of Proxami-b (Lefevre et al 2021). The impact of the stellar insolation and rotation period were studied. The files for the reference case, with a stellar flux of 880 W/m2 and an 11 days rotation period, are presented&lt;br /&gt;
&lt;br /&gt;
The input_* file are the used to initialize the temperature, pressure, winds and moisture of the domain. &lt;br /&gt;
input_souding : altitude (km), potential temperature, water vapour (kg/kg), u, v&lt;br /&gt;
input_therm : normalized gas constant, isobaric heat capacity, pressure, density, temperature&lt;br /&gt;
input_hr : SW heating, LW heating, Large-scale heating extracted from the GCM. Only the last one is used in this configuration.&lt;br /&gt;
&lt;br /&gt;
The file namelist.input is used to set up the domain parameters (resolution, grid points, etc). The file levels specifies the eta-levels of the vertical domain.&lt;br /&gt;
&lt;br /&gt;
Planet is used set up the atmospheric parameters, in order : gravity (m/s2), isobaric heat capacity (J/kg/K), molecular mass (g/mol), reference temperature (K), surface pressure (Pa), planet radius (m) and planet rotation rate (s-1).&lt;br /&gt;
&lt;br /&gt;
The files *.def are the parameter for the physics. Compared to GCM runs, the convective adjustment in callphys.def is turned off&lt;br /&gt;
&lt;br /&gt;
The file controle.txt, equivalent of the field controle in GCM start.nc, needed to initialize some physics constants.&lt;br /&gt;
&lt;br /&gt;
TBC ML&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1025</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1025"/>
				<updated>2022-10-20T15:44:18Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory, which are referenced in the following line without the prefix 'arch-' (i.e., arch-X64_IRENE-AMD.env will be referenced as X64_IRENE-AMD).  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/ioipsl/                                                                                                             &lt;br /&gt;
    ./install_ioipsl_YOUR-MACHINE.bash&lt;br /&gt;
cd ../../&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd XIOS/                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd LMDZ.COMMON/                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSAGCM/&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ICOSA_LMDZ/&lt;br /&gt;
    ./build --job 8 --full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as:&lt;br /&gt;
'''icosa_lmdz.exe''' and '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings.&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance Jupiter) by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
To model the subgrid atmospheric turbulence, the WRF dynamical core coupled with the LMD Generic physics package is used. The first studied conducted was to resolve the convective activity of the substellar point of Proxami-b (Lefevre et al 2021). The impact of the stellar insolation and rotation period were studied. The files for the reference case, with a stellar flux of 880 W/m2 and an 11 days rotation period, are presented&lt;br /&gt;
&lt;br /&gt;
The input_* file are the used to initialize the temperature, pressure, winds and moisture of the domain. &lt;br /&gt;
input_souding : altitude (km), potential temperature, water vapour (kg/kg), u, v&lt;br /&gt;
input_therm : normalized gas constant, isobaric heat capacity, pressure, density, temperature&lt;br /&gt;
input_hr : SW heating, LW heating, Large-scale heating extracted from the GCM. Only the last one is used in this configuration.&lt;br /&gt;
&lt;br /&gt;
The file namelist.input is used to set up the domain parameters (resolution, grid points, etc). The file levels specifies the eta-levels of the vertical domain.&lt;br /&gt;
&lt;br /&gt;
Planet is used set up the atmospheric parameters, in order : gravity (m/s2), isobaric heat capacity (J/kg/K), molecular mass (g/mol), reference temperature (K), surface pressure (Pa), planet radius (m) and planet rotation rate (s-1).&lt;br /&gt;
&lt;br /&gt;
The files *.def are the parameter for the physics. Compared to GCM runs, the convective adjustment in callphys.def is turned off&lt;br /&gt;
&lt;br /&gt;
The file controle.txt, equivalent of the field controle in GCM start.nc, needed to initialize some physics constants.&lt;br /&gt;
&lt;br /&gt;
TBC ML&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1024</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=1024"/>
				<updated>2022-10-20T15:04:20Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory.  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../LMDZ.COMMON/ioipsl/                                                                                                             &lt;br /&gt;
    ./install_ioipsl_YOUR-MACHINE.bash&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../XIOS                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../LMDZ.COMMON                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSAGCM&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSA_LMDZ&lt;br /&gt;
    ./build --job 8 --full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as:&lt;br /&gt;
'''icosa_lmdz.exe''' and '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings.&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance Jupiter) by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
To model the subgrid atmospheric turbulence, the WRF dynamical core coupled with the LMD Generic physics package is used. The first studied conducted was to resolve the convective activity of the substellar point of Proxami-b (Lefevre et al 2021). The impact of the stellar insolation and rotation period were studied. The files for the reference case, with a stellar flux of 880 W/m2 and an 11 days rotation period, are presented&lt;br /&gt;
&lt;br /&gt;
The input_* file are the used to initialize the temperature, pressure, winds and moisture of the domain. &lt;br /&gt;
input_souding : altitude (km), potential temperature, water vapour (kg/kg), u, v&lt;br /&gt;
input_therm : normalized gas constant, isobaric heat capacity, pressure, density, temperature&lt;br /&gt;
input_hr : SW heating, LW heating, Large-scale heating extracted from the GCM. Only the last one is used in this configuration.&lt;br /&gt;
&lt;br /&gt;
The file namelist.input is used to set up the domain parameters (resolution, grid points, etc). The file levels specifies the eta-levels of the vertical domain.&lt;br /&gt;
&lt;br /&gt;
Planet is used set up the atmospheric parameters, in order : gravity (m/s2), isobaric heat capacity (J/kg/K), molecular mass (g/mol), reference temperature (K), surface pressure (Pa), planet radius (m) and planet rotation rate (s-1).&lt;br /&gt;
&lt;br /&gt;
The files *.def are the parameter for the physics. Compared to GCM runs, the convective adjustment in callphys.def is turned off&lt;br /&gt;
&lt;br /&gt;
The file controle.txt, equivalent of the field controle in GCM start.nc, needed to initialize some physics constants.&lt;br /&gt;
&lt;br /&gt;
TBC ML&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=951</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=951"/>
				<updated>2022-10-12T16:53:06Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* 3D DYNAMICO setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory.  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile '''IOIPSL''',&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../IOIPSL                                                                                                             &lt;br /&gt;
    ./makeioipsl_fcm -prod -parallel -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then '''XIOS''' library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../XIOS                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../LMDZ.COMMON                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core '''DYNAMICO''' (located in '''ICOSAGCM''' directory, named from the icosahedral shape of the horizontal mesh),&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSAGCM&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the '''ICOSA_LMDZ''' interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSA_LMDZ&lt;br /&gt;
    ./build --job 8 --full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as:&lt;br /&gt;
'''icosa_lmdz.exe''' and '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings.&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance Jupiter) by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
TBD by Maxence&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=950</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=950"/>
				<updated>2022-10-12T16:47:15Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Jupiter with DYNAMICO */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory.  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile IOIPSL,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../IOIPSL                                                                                                             &lt;br /&gt;
    ./makeioipsl_fcm -prod -parallel -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then XIOS library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../XIOS                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../LMDZ.COMMON                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core DYNAMICO,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSAGCM&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the ICOSA_LMDZ interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSA_LMDZ&lt;br /&gt;
    ./build --job 8 --full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as:&lt;br /&gt;
'''icosa_lmdz.exe''' and '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings.&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance Jupiter) by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]: File in which are defined the horizontal grid, vertical coordinate, output file(s) definition, with the setting of frequency output writing, time unit, geophysical variables to be written, etc. Each new geophysical variables added here have to be defined in the ''field_def_physics.xml'' file.&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
TBD by Maxence&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=949</id>
		<title>Other GCM Configurations worth knowing about</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=Other_GCM_Configurations_worth_knowing_about&amp;diff=949"/>
				<updated>2022-10-12T16:25:16Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: /* Jupiter with DYNAMICO */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== 3D lon-lat LMDZ setup ==&lt;br /&gt;
&lt;br /&gt;
=== early Mars ===&lt;br /&gt;
&lt;br /&gt;
It is already described in the [https://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php/Quick_Install_and_Run ''Quick Install and Run''] section.&lt;br /&gt;
&lt;br /&gt;
=== Earth with slab ocean ===&lt;br /&gt;
&lt;br /&gt;
TBD by Martin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1e with photochemistry ===&lt;br /&gt;
&lt;br /&gt;
A temperate rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Yassin&lt;br /&gt;
&lt;br /&gt;
=== TRAPPIST-1c in Venus-like conditions ===&lt;br /&gt;
&lt;br /&gt;
A warm rocky planet in synchronous rotation around a low mass star&lt;br /&gt;
&lt;br /&gt;
TBD by Gabriella (waiting for the SVN update by Ehouarn)&lt;br /&gt;
&lt;br /&gt;
=== mini-Neptune GJ1214b ===&lt;br /&gt;
&lt;br /&gt;
A warm mini-Neptune&lt;br /&gt;
&lt;br /&gt;
TBD by Benjamin&lt;br /&gt;
&lt;br /&gt;
== 3D DYNAMICO setup ==&lt;br /&gt;
&lt;br /&gt;
Due to the rich dynamical activities in their atmospheres (banded zonal jets, eddies, vortices, storms, equatorial oscillations,...) resulting from multi-scale dynamic interactions, the Global Climate Modelling of the giant planet requires to resolve eddies arising from hydrodynamical instabilities to correctly establish the planetary-scaled jets regime. To this purpose, their Rossby radius deformation $$L_D$$, which is the length scale at which rotational effects become as important as buoyancy or gravity wave effects in the evolution of the flow about some disturbance, is calculated to determine the most suitable horizontal grid resolution. At mid-latitude range, for the giant planets, $$L_D$$ is of the same order of magnitude as that of the Earth. As the giant planets have a size of roughly 10 times the Earth size (i.e., Jupiter and Saturn), the modelling grid must be of a horizontal resolution of 0.5$$^{\circ}$$ over longitude and latitude (vs 5$$^{\circ}$$ for the Earth), considering 3 grid points to resolved $$L_D$$. &lt;br /&gt;
Moreover, to have a chance to model the equatorial oscillation, meridional cell circulations and/or a seasonal inter-hemispheric circulation, a giant planet GCM must also include a high vertical resolution. Indeed, these climate phenomena have been studied for decades for the Earth's atmosphere, and result from small- and large-scale interactions between the troposphere and stratosphere. This implies that the propagation of dynamic instabilities, waves and turbulence should be resolved as far as possible along the vertical. Contrary to horizontal resolution, it doesn't really exist a criterion (similar to $$L_D$$) to determine the most suitable vertical grid resolution and still an adjustable parameter according to the processes to be represented. However, we advise the user to set a vertical resolution of at least 5 grid points per scale height as first stage.    &lt;br /&gt;
Finally, these atmospheres are cold, with long radiative response time which needs radiative transfer computations over decade-long years of Jupiter (given that a Jupiter year $$\approx$$ 12 Earth years), Saturn ( a Saturn year $$\approx$$ 30 Earth years), Uranus (a Uranus year $$\approx$$ 84 earth years) or Neptune (a Neptune year $$\approx$$ 169 Earth years), depending on the chosen planet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To be able to deal with these three -- and non-exhaustive -- requirements to build a giant planet GCM, we need massive computational ressources. For this, we use a dynamical core suitable and numerically stable for massive parallel ressource computations: [[The_DYNAMICO_dynamical_core | DYNAMICO]] [Dubos et al,. 2015].  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
In these two following subsections, we purpose an example of installation for Jupiter and a Hot Jupiter. All the install, compiling, setting and parameters files for each giant planets could be found on: &lt;br /&gt;
https://github.com/aymeric-spiga/dynamico-giant&lt;br /&gt;
&lt;br /&gt;
If you have already downloaded '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you only have to download:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ICOSAGCM''': the DYNAMICO dynamical core&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
git clone https://gitlab.in2p3.fr/ipsl/projets/dynamico/dynamico.git ICOSAGCM&lt;br /&gt;
cd ICOSAGCM&lt;br /&gt;
git checkout 90f7138a60ebd3644fbbc42bc9dfa22923386385&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ICOSA_LMDZ''': the interface using to link LMDZ.GENERIC physical packages and ICOSAGCM&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn update -r 2655 -q ICOSA_LMDZ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''XIOS (XML Input Output Server)''': the library to interpolate input/output fields between the icosahedral and longitude/latitude regular grids on fly&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
svn co -r 2319 -q http://forge.ipsl.jussieu.fr/ioserver/svn/XIOS/trunk XIOS&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you haven't already download '''LMDZ.COMMON''', '''LMDZ.GENERIC''', '''IOIPSL''', '''ARCH''', you can use the '''install.sh''' script provided by the Github repository. &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Once each part of the GCM is downloaded, you are able to compile it. &lt;br /&gt;
Firstly, you have to define your [[The_Target_Architecture_(&amp;quot;arch&amp;quot;)_Files | target architecture file ]] (hereafter named YOUR_ARCH_FILE) where you will fill in all the necessary information about the local environment, where libraries are located, which compiler, and compiler options will be used, etc.&lt;br /&gt;
Some architecture files related to specific machines are provided in the '''ARCH''' directory.  &lt;br /&gt;
&lt;br /&gt;
The main specificity of DYNAMICO-giant is that every main parts of the model ('''ICOSAGCM''', '''LMDZ.COMMON''' and '''LMDZ.GENERIC''') are compiled as libraries, and settings and running configuration are managed by the '''ICOSA_LMDZ''' interface.&lt;br /&gt;
&lt;br /&gt;
First, you have to compile IOIPSL,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../IOIPSL                                                                                                             &lt;br /&gt;
    ./makeioipsl_fcm -prod -parallel -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
then XIOS library, &lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../XIOS                                                                                                               &lt;br /&gt;
    ./make_xios --prod --arch YOUR_ARCH_FILE --arch_path ../ARCH --job 8 --full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the physics packaging,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../LMDZ.COMMON                                                                                                        &lt;br /&gt;
    ./makelmdz_fcm -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -prod -parallel mpi -libphy -io xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -j 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
the dynamical core DYNAMICO,&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSAGCM&lt;br /&gt;
    ./make_icosa -prod -parallel mpi -external_ioipsl -with_xios -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
cd -&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and finally the ICOSA_LMDZ interface&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ICOSA_LMDZ&lt;br /&gt;
    ./build --job 8 --full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
and your executable programs should appeared in ''ICOSA_LMDZ/bin'' subdirectory, as:&lt;br /&gt;
'''icosa_lmdz.exe''' and '''xios_server.exe''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All these compiling steps are summed up in ''make_isoca_lmdz'' program that should be adapted to your own computational settings.&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
./make_icosa_lmdz -p std -p_opt &amp;quot;-b 20x25 -s 2&amp;quot; -parallel mpi -arch YOUR_ARCH_FILE -arch_path ../ARCH -job 8 -full&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Now you can move your two executable files to your working directory and start to run your own simulation of Jupiter or a Hot Jupiter, as what follows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: If you are using the GitHub file architecture (https://github.com/aymeric-spiga/dynamico-giant), you should be able to compile the model directly from your working directory (for instance Jupiter) by using the ''compile_occigen.sh'' program, which has to be adapted to your machine/cluster. &lt;br /&gt;
&lt;br /&gt;
=== Jupiter with DYNAMICO ===&lt;br /&gt;
Using a new dynamical core implies new setting files, in addition or as a replacement of those relevant to '''LMDZ.COMMON''' dynamical core using. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are two kind of setting files:&lt;br /&gt;
&lt;br /&gt;
'''A first group relevant to DYNAMICO:'''&lt;br /&gt;
&lt;br /&gt;
- [[The ''context_dynamico.xml'' Input File|''context_dynamico.xml'']]: Configuration file for '''DYNAMICO''' for reading and writing  files using '''XIOS''', mainly used when you want to check the installation of '''ICOSAGCM''' with [[The_DYNAMICO_dynamical_core | an ''Held and Suarez'' test case]]. When your installation, compilation and run environment is fully functional, the dynamic core output files will not (necessarily) be useful and you can disable their writing. &lt;br /&gt;
&lt;br /&gt;
- [[The context_input_dynamico.xml Input File|''context_input_dynamico.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The file_def_dynamico.xml Input File|''file_def_dynamico.xml'']]: Definition of output diagnostic files which will be written into the output files only related to '''ICOSAGCM'''. &lt;br /&gt;
&lt;br /&gt;
- [[The field_def_dynamico.xml Input File|''field_def_dynamico.xml'']]: Definition of all existing variables that can be output from DYNAMICO.&lt;br /&gt;
&lt;br /&gt;
- [[The tracer.def Input File|''tracer.def'']]: Definition of the name and physico-chemical properties of the tracers which will be advected by the dynamical core. For now, there is two files related to tracers, we are working to harmonise it.  &lt;br /&gt;
&lt;br /&gt;
''' A second group relevant to LMDZ.GENERIC physical packages: '''&lt;br /&gt;
&lt;br /&gt;
- [[The context_lmdz_physics.xml Input File|''context_lmdz_physics.xml'']]:&lt;br /&gt;
&lt;br /&gt;
- [[The field_def_physics.xml Input File|''field_def_physics.xml'']]: Definition of all existing variables that can be output from the physical packages interfaced with '''DYNAMICO'''. This is where you will add each geophysical fields that you want to appear in the ''Xhistins.nc'' output files. For instance, related to the ''thermal plume scheme'' using for Jupiter's tropospheric dynamics, we have added the following variables: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
             &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_callphys.def_Input_File|''callphys.def'']]: This setting file is used either with '''DYNAMICO''' or '''LMDZ.COMMON''' and allows the user to choose the physical parametrisation schemes and their appropriate main parameter values relevant to the planet being simulated. In our case of Jupiter, there are some specific parametrisations that should be added or modified from the example given as link at the beginning of this line: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# Diurnal cycle ?  if diurnal=false, diurnally averaged solar heating&lt;br /&gt;
diurnal      = .false. #.true.&lt;br /&gt;
# Seasonal cycle ? if season=false, Ls stays constant, to value set in &amp;quot;start&amp;quot;&lt;br /&gt;
season       = .true. &lt;br /&gt;
# Tidally resonant orbit ? must have diurnal=false, correct rotation rate in newstart&lt;br /&gt;
tlocked      = .false.&lt;br /&gt;
# Tidal resonance ratio ? ratio T_orbit to T_rotation&lt;br /&gt;
nres         = 1&lt;br /&gt;
# Planet with rings?&lt;br /&gt;
rings_shadow = .false.&lt;br /&gt;
# Compute latitude-dependent gravity field??&lt;br /&gt;
oblate       = .true.&lt;br /&gt;
# Include non-zero flattening (a-b)/a?&lt;br /&gt;
flatten      = 0.06487&lt;br /&gt;
# Needed if oblate=.true.: J2&lt;br /&gt;
J2           = 0.01470&lt;br /&gt;
# Needed if oblate=.true.: Planet mean radius (m)&lt;br /&gt;
Rmean        = 69911000.&lt;br /&gt;
# Needed if oblate=.true.: Mass of the planet (*1e24 kg)&lt;br /&gt;
MassPlanet   = 1898.3&lt;br /&gt;
# use (read/write) a startfi.nc file? (default=.true.)&lt;br /&gt;
startphy_file = .false.&lt;br /&gt;
# constant value for surface albedo (if startphy_file = .false.)&lt;br /&gt;
surfalbedo   = 0.0&lt;br /&gt;
# constant value for surface emissivity (if startphy_file = .false.)&lt;br /&gt;
surfemis     = 1.0&lt;br /&gt;
&lt;br /&gt;
# the rad. transfer is computed every &amp;quot;iradia&amp;quot; physical timestep&lt;br /&gt;
iradia           = 160&lt;br /&gt;
# folder in which correlated-k data is stored ?&lt;br /&gt;
corrkdir         = Jupiter_HITRAN2012_REY_ISO_NoKarko_T460K_article2019_gauss8p8_095&lt;br /&gt;
# Uniform absorption coefficient in radiative transfer?&lt;br /&gt;
graybody         = .false.&lt;br /&gt;
# Characteristic planetary equilibrium (black body) temperature&lt;br /&gt;
# This is used only in the aerosol radiative transfer setup. (see aerave.F)&lt;br /&gt;
tplanet          = 100.&lt;br /&gt;
# Output global radiative balance in file 'rad_bal.out' - slow for 1D!!&lt;br /&gt;
meanOLR          = .false.&lt;br /&gt;
# Variable gas species: Radiatively active ?&lt;br /&gt;
varactive        = .false.&lt;br /&gt;
# Computes atmospheric specific heat capacity and&lt;br /&gt;
# could calculated by the dynamics, set in callphys.def or calculeted from gases.def.&lt;br /&gt;
# You have to choose: 0 for dynamics (3d), 1 for forced in callfis (1d) or 2: computed from gases.def (1d)&lt;br /&gt;
# Force_cpp and check_cpp_match are now deprecated.  &lt;br /&gt;
cpp_mugaz_mode = 0&lt;br /&gt;
# Specific heat capacity in J K-1 kg-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
cpp              = 11500.&lt;br /&gt;
# Molecular mass in g mol-1 [only used if cpp_mugaz_mode = 1]&lt;br /&gt;
mugaz            = 2.30&lt;br /&gt;
### DEBUG&lt;br /&gt;
# To not call abort when temperature is outside boundaries:&lt;br /&gt;
strictboundcorrk = .false.&lt;br /&gt;
# To not stop run when temperature is greater than 400 K for H2-H2 CIA dataset:   &lt;br /&gt;
strictboundcia = .false.&lt;br /&gt;
# Add temperature sponge effect after radiative transfer?&lt;br /&gt;
callradsponge    = .false.&lt;br /&gt;
&lt;br /&gt;
Fat1AU = 1366.0&lt;br /&gt;
&lt;br /&gt;
## Other physics options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# call turbulent vertical diffusion ?&lt;br /&gt;
calldifv    = .false.&lt;br /&gt;
# use turbdiff instead of vdifc ?&lt;br /&gt;
UseTurbDiff = .true.&lt;br /&gt;
# call convective adjustment ?&lt;br /&gt;
calladj     = .true.&lt;br /&gt;
# call thermal plume model ?&lt;br /&gt;
calltherm   = .true.&lt;br /&gt;
# call thermal conduction in the soil ?&lt;br /&gt;
callsoil    = .false.&lt;br /&gt;
# Internal heat flux (matters only if callsoil=F)&lt;br /&gt;
intheat     = 7.48&lt;br /&gt;
# Remove lower boundary (e.g. for gas giant sims)&lt;br /&gt;
nosurf      = .true.&lt;br /&gt;
#########################################################################&lt;br /&gt;
## extra non-standard definitions for Earth&lt;br /&gt;
#########################################################################&lt;br /&gt;
&lt;br /&gt;
## Thermal plume model options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
dvimpl               = .true.&lt;br /&gt;
r_aspect_thermals    = 2.0&lt;br /&gt;
tau_thermals         = 0.0&lt;br /&gt;
betalpha             = 0.9&lt;br /&gt;
afact                = 0.7&lt;br /&gt;
fact_epsilon         = 2.e-4&lt;br /&gt;
alpha_max            = 0.7&lt;br /&gt;
fomass_max           = 0.5&lt;br /&gt;
pres_limit           = 2.e5&lt;br /&gt;
&lt;br /&gt;
## Tracer and aerosol options&lt;br /&gt;
## ~~~~~~~~~~~~~~~~~~~~~~~~~~&lt;br /&gt;
# Ammonia cloud (Saturn/Jupiter)?&lt;br /&gt;
aeronh3             = .true.&lt;br /&gt;
size_nh3_cloud      = 10.D-6&lt;br /&gt;
pres_nh3_cloud      = 1.1D5                        # old: 9.D4&lt;br /&gt;
tau_nh3_cloud       = 10.                          # old: 15.&lt;br /&gt;
# Radiatively active aerosol (Saturn/Jupiter)?&lt;br /&gt;
aeroback2lay         = .true.&lt;br /&gt;
optprop_back2lay_vis = optprop_jupiter_vis_n20.dat&lt;br /&gt;
optprop_back2lay_ir  = optprop_jupiter_ir_n20.dat&lt;br /&gt;
obs_tau_col_tropo    = 4.0&lt;br /&gt;
size_tropo           = 5.e-7&lt;br /&gt;
pres_bottom_tropo    = 8.0D4&lt;br /&gt;
pres_top_tropo       = 1.8D4&lt;br /&gt;
obs_tau_col_strato   = 0.1D0&lt;br /&gt;
# Auroral aerosols (Saturn/Jupiter)?&lt;br /&gt;
aeroaurora         = .false.&lt;br /&gt;
size_aurora        = 3.e-7&lt;br /&gt;
obs_tau_col_aurora = 2.0&lt;br /&gt;
&lt;br /&gt;
# Radiatively active CO2 aerosol?&lt;br /&gt;
aeroco2            = .false.&lt;br /&gt;
# Fixed CO2 aerosol distribution?&lt;br /&gt;
aerofixco2     = .false.&lt;br /&gt;
# Radiatively active water aerosol?&lt;br /&gt;
aeroh2o        = .false.&lt;br /&gt;
# Fixed water aerosol distribution?&lt;br /&gt;
aerofixh2o     = .false.&lt;br /&gt;
# basic dust opacity&lt;br /&gt;
dusttau        = 0.0&lt;br /&gt;
# Varying H2O cloud fraction?&lt;br /&gt;
CLFvarying     = .false.&lt;br /&gt;
# H2O cloud fraction if fixed?&lt;br /&gt;
CLFfixval      = 0.0&lt;br /&gt;
# fixed radii for cloud particles?&lt;br /&gt;
radfixed       = .false.&lt;br /&gt;
# number mixing ratio of CO2 ice particles&lt;br /&gt;
Nmix_co2       = 100000.&lt;br /&gt;
# number mixing ratio of water particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o       = 1.e7&lt;br /&gt;
# number mixing ratio of water ice particles (for rafixed=.false.)&lt;br /&gt;
Nmix_h2o_ice   = 5.e5&lt;br /&gt;
# radius of H2O water particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o        = 10.e-6&lt;br /&gt;
# radius of H2O ice particles (for rafixed=.true.):&lt;br /&gt;
rad_h2o_ice    = 35.e-6&lt;br /&gt;
# atm mass update due to tracer evaporation/condensation?&lt;br /&gt;
mass_redistrib = .false.&lt;br /&gt;
&lt;br /&gt;
## Water options &lt;br /&gt;
## ~~~~~~~~~~~~~&lt;br /&gt;
# Model water cycle&lt;br /&gt;
water         = .true.&lt;br /&gt;
# Model water cloud formation&lt;br /&gt;
watercond     = .true.&lt;br /&gt;
# Model water precipitation (including coagulation etc.)&lt;br /&gt;
waterrain     = .true.&lt;br /&gt;
# Use simple precipitation scheme?&lt;br /&gt;
precip_scheme = 1&lt;br /&gt;
# Evaporate precipitation?&lt;br /&gt;
evap_prec     = .true.&lt;br /&gt;
# multiplicative constant in Boucher 95 precip scheme&lt;br /&gt;
Cboucher      = 1.&lt;br /&gt;
# Include hydrology ?&lt;br /&gt;
hydrology     = .false.&lt;br /&gt;
# H2O snow (and ice) albedo ?&lt;br /&gt;
albedosnow    = 0.6&lt;br /&gt;
# Maximum sea ice thickness ?&lt;br /&gt;
maxicethick   = 10.&lt;br /&gt;
# Freezing point of seawater (degrees C) ?&lt;br /&gt;
Tsaldiff      = 0.0&lt;br /&gt;
# Evolve surface water sources ?&lt;br /&gt;
sourceevol    = .false.&lt;br /&gt;
&lt;br /&gt;
## CO2 options &lt;br /&gt;
## ~~~~~~~~~~~&lt;br /&gt;
# call CO2 condensation ?&lt;br /&gt;
co2cond       = .false.&lt;br /&gt;
# Set initial temperature profile to 1 K above CO2 condensation everywhere?&lt;br /&gt;
nearco2cond   = .false.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The_gases.def_Input_file|''gases.def'']]: File containing the gas composition of the atmosphere you want to model, with their molar mixing ratios. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
# gases&lt;br /&gt;
5&lt;br /&gt;
H2_&lt;br /&gt;
He_&lt;br /&gt;
CH4&lt;br /&gt;
C2H2&lt;br /&gt;
C2H6&lt;br /&gt;
0.863&lt;br /&gt;
0.134&lt;br /&gt;
0.0018&lt;br /&gt;
1.e-7&lt;br /&gt;
1.e-5&lt;br /&gt;
# First line is number of gases&lt;br /&gt;
# Followed by gas names (always 3 characters)&lt;br /&gt;
# and then molar mixing ratios.&lt;br /&gt;
# mixing ratio -1 means the gas is variable.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- [[The jupiter_const.def Input File|''jupiter_const.def'']]: Files that gather all orbital and physical parameters of Jupiter.&lt;br /&gt;
&lt;br /&gt;
- [[The_traceur.def_Input_File|''traceur.def'']]: At this time, only two tracers are used for modelling Jupiter atmosphere, so the ''traceur.def'' file is summed up as follow&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
h2o_vap&lt;br /&gt;
h2o_ice&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''' Two additional files are used to set the running parameter of the simulation itself:'''&lt;br /&gt;
&lt;br /&gt;
- [[The run_icosa.def Input File | ''run_icosa.def'']]: file containing parameters for '''ICOSAGCM''' to execute the simulation, use to determine the [[Advanced Use of the GCM | horizontal and vertical resolutions]], the number of processors, the number of subdivisions, the duration of the simulation, etc.&lt;br /&gt;
&lt;br /&gt;
- ''run.def'': file which brings together all the setting files and will be reading by the interface '''ICOSA_LMDZ''' to link each part of the model ('''ICOSAGCM''', '''LMDZ.GENERIC''') with its particular setting file(s) when the library '''XIOS''' does not take action (through the ''.xml'' files).&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; line&amp;gt;&lt;br /&gt;
###########################################################################&lt;br /&gt;
### INCLUDE OTHER DEF FILES (physics, specific settings, etc...)&lt;br /&gt;
###########################################################################&lt;br /&gt;
INCLUDEDEF=run_icosa.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=jupiter_const.def&lt;br /&gt;
&lt;br /&gt;
INCLUDEDEF=callphys.def&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
prt_level=0&lt;br /&gt;
&lt;br /&gt;
## iphysiq must be same as itau_physics&lt;br /&gt;
iphysiq=40&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hot Jupiter with DYNAMICO ===&lt;br /&gt;
&lt;br /&gt;
Modelling the atmosphere of Hot Jupiter is challenging because of the extreme temperature conditions, and the fact that these planets are gas giants. Therefore, using a dynamical core such as Dynamico is strongly recommended. Here, we discuss how to perform a cloudless simulation of the Hot Jupiter WASP-43 b, using Dynamico.&lt;br /&gt;
&lt;br /&gt;
'''1st step''': You need to go to the github mentionned previously for Dynamico: https://github.com/aymeric-spiga/dynamico-giant. ''Git clone'' this repo on your favorite cluster, and ''checkout'' to the &amp;quot;hot_jupiter&amp;quot; branch.&lt;br /&gt;
&lt;br /&gt;
'''2nd step''': Now, run the install.sh script. This script will install '''all''' the required models ('''LMDZ.COMMON''', '''LMDZ.GENERIC''','''ICOSA_LMDZ''','''XIOS''','''FCM''','''ICOSAGCM'''). At this point, you only miss '''IOIPSL'''. To install it, go to &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/code/LMDZ.COMMON/ioipsl/ &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There, you will find some examples of installations script. You need to create one that will work on your cluster, with your own arch files.&lt;br /&gt;
During the installation of '''IOIPSL''', you might be asked for a login/password. Contact TGCC computing center to get access.&lt;br /&gt;
&lt;br /&gt;
'''3rd step''': Great, now we have all we need to get started. Navigate to the ''hot_jupiter'' folder. You will find a ''compile_mesopsl.sh'' and a ''compile_occigen.sh'' script. Use them as examples to create the compile script adapted to your own cluster, then run it. &lt;br /&gt;
While running, I suggest that you take a look at the ''log_compile'' file. The compilation can take a while (~ 10minutes, especially because of XIOS). On quick trick to make sure that everything went right is to check the number of ''Build command finished'' messages in ''log_compile''. If everything worked out, there should be 6 of them.&lt;br /&gt;
&lt;br /&gt;
'''4th step''': Okay, the model compiled, good job ! Now we need to create the initial condition for our run. In the hot_jupiter1d folder, you already have a ''temp_profile.txt'' computed with the 1D version of the LMDZ.GENERIC (see rcm1d on this page). Thus, no need to recompute a 1D model but it will be needed if you want to model another Hot Jupiter.&lt;br /&gt;
Navigate to the 'makestart' folder, located at &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
dynamico-giant/hot_jupiter/makestart/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To generate the initial conditions for the 3D run, we're gonna start the model using the temperature profile from the 1D run. to do that, you will find a &amp;quot;job_mpi&amp;quot; script. Open it, and adapt it to your cluster and launch the job. This job is using 20 procs, and it runs 5 days of simulations. &lt;br /&gt;
If everything goes well, you should see few netcdf files appear. The important ones are '''start_icosa0.nc''', '''startfi0.nc''' and '''Xhistins.nc'''. &lt;br /&gt;
If you see these files, you're all set to launch a real simulation !&lt;br /&gt;
&lt;br /&gt;
'''5th step''': Go back to ''hot_jupiter'' folder. There are a bunch of script to launch your simulation. Take a look at the ''astro_fat_mpi'' script, and adapt it to your cluster. Then you can launch your simulation by doing &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt; &lt;br /&gt;
./run_astro_fat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will start the simulation, using 90 procs. In the same folder, check if the icosa_lmdz.out file is created. This is the logfile of the simulation, while it is running. You can check there that everything is going well.&lt;br /&gt;
&lt;br /&gt;
'''Important side note''': When using the ''run_astro_fat'' script to run a simulation, it will run a chained simulation, restarting the simulation from the previous state after 100 days of simulations and generating ''Xhistins.nc'' files. This is your results file, where you will find all the variables that controls your atmosphere (temperature field, wind fields, etc..). &lt;br /&gt;
&lt;br /&gt;
Good luck and enjoy the generic PCM Dynamico for Hot Jupiter !&lt;br /&gt;
&lt;br /&gt;
'''2nd important side note''': These 5 steps are the basic needed steps to run a simulation. If you want to tune simulations to another planet, or change other stuff, you need to take a look at '''*.def''' and '''*.xml''' files. If you're lost in all of this, take a look at the different pages of this website and/or contact us !&lt;br /&gt;
Also, you might want to check the wiki on the [https://github.com/aymeric-spiga/dynamico-giant ''Github''], that explains a lot of settings for Dynamico&lt;br /&gt;
&lt;br /&gt;
== 3D LES setup ==&lt;br /&gt;
&lt;br /&gt;
=== Proxima b with LES ===&lt;br /&gt;
&lt;br /&gt;
TBD by Maxence&lt;br /&gt;
&lt;br /&gt;
== 1D setup ==&lt;br /&gt;
&lt;br /&gt;
=== rcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D forward model&lt;br /&gt;
&lt;br /&gt;
TBD by Gwenael ? (you can have a look at the Generic GCM User Manual for inspiration)&lt;br /&gt;
&lt;br /&gt;
=== kcm1d test case ===&lt;br /&gt;
&lt;br /&gt;
Our 1-D inverse model&lt;br /&gt;
&lt;br /&gt;
TBD by Guillaume or Martin&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	<entry>
		<id>http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=The_field_def_physics.xml_Input_File&amp;diff=948</id>
		<title>The field def physics.xml Input File</title>
		<link rel="alternate" type="text/html" href="http://lmdz-forge.lmd.jussieu.fr/mediawiki/Planets/index.php?title=The_field_def_physics.xml_Input_File&amp;diff=948"/>
				<updated>2022-10-12T16:20:43Z</updated>
		
		<summary type="html">&lt;p&gt;Dbardet: Created page with &amp;quot;&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt; &amp;lt;!-- =========================================================================================================== --&amp;gt; &amp;lt;!-- field_def_physics.x...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; line&amp;gt;&lt;br /&gt;
&amp;lt;!-- =========================================================================================================== --&amp;gt;&lt;br /&gt;
&amp;lt;!-- field_def_physics.xml                                                                                       --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Definition of all existing variables that can be output from Dynamico physics                               --&amp;gt;&lt;br /&gt;
&amp;lt;!-- =========================================================================================================== --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;field_definition prec=&amp;quot;4&amp;quot; &lt;br /&gt;
                      freq_op=&amp;quot;1ts&amp;quot;&lt;br /&gt;
                      enabled=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;!-- 0D variables --&amp;gt;&lt;br /&gt;
        &amp;lt;field_group id=&amp;quot;fields_0D&amp;quot; grid_ref=&amp;quot;scalarpoint&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;ls&amp;quot;&lt;br /&gt;
                   long_name=&amp;quot;Solar longitude&amp;quot;&lt;br /&gt;
                   unit=&amp;quot;degrees&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;/field_group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;!-- 2D variables --&amp;gt;&lt;br /&gt;
        &amp;lt;field_group id=&amp;quot;fields_2D&amp;quot; grid_ref=&amp;quot;grid_2D&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;ps&amp;quot;&lt;br /&gt;
                   long_name=&amp;quot;Surface Pressure&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;Pa&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;area&amp;quot;&lt;br /&gt;
                   long_name=&amp;quot;Mesh area&amp;quot;&lt;br /&gt;
                   unit=&amp;quot;m2&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;OLR&amp;quot;&lt;br /&gt;
                   long_name=&amp;quot;outgoing longwave radiation&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;W/m2&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;ISR&amp;quot;&lt;br /&gt;
                   long_name=&amp;quot;incoming solar radiation&amp;quot;  &lt;br /&gt;
                   unit=&amp;quot;W/m2&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;/field_group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;!-- 3D variables --&amp;gt;&lt;br /&gt;
        &amp;lt;field_group id=&amp;quot;fields_3D&amp;quot; grid_ref=&amp;quot;grid_3D&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;!--&amp;lt;field_group id=&amp;quot;fields_3D&amp;quot; grid_ref=&amp;quot;grid_3d&amp;quot;&amp;gt;--&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;temperature&amp;quot;&lt;br /&gt;
                   long_name=&amp;quot;Atmospheric temperature&amp;quot;&lt;br /&gt;
                   unit=&amp;quot;K&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;u&amp;quot;&lt;br /&gt;
                   long_name=&amp;quot;Eastward Zonal Wind&amp;quot;&lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;v&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Northward Meridional Wind&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;omega&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Downward omega velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;Pa/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_vap&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;h2o_ice&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Vapor mass mixing ratio&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/kg&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;detr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Detrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;entr&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Entrainment&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;kg/m2/s&amp;quot; /&amp;gt;&lt;br /&gt;
            &amp;lt;field id=&amp;quot;w_plm&amp;quot; &lt;br /&gt;
                   long_name=&amp;quot;Plume vertical velocity&amp;quot; &lt;br /&gt;
                   unit=&amp;quot;m/s&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;/field_group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;/field_definition&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dbardet</name></author>	</entry>

	</feed>