Skip to content

Commit

Permalink
Version 0.8.5 - added version for constant gravity in height. Minor r…
Browse files Browse the repository at this point in the history
…ework to paper.
  • Loading branch information
nichollsh committed Oct 15, 2024
1 parent 1a6e655 commit fe8a05e
Show file tree
Hide file tree
Showing 15 changed files with 164 additions and 34 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/install_and_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- name: Setup Julia
uses: julia-actions/setup-julia@v2
with:
version: '1.10'
version: '1.11'

# Setup SOCRATES
- name: Get SOCRATES
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ FastChem
deps/*.log
test/out/
Manifest.toml
*.cov

# Docs
docs/build
Expand Down
2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ authors:
given-names: "Harrison"
orcid: "https://orcid.org/0000-0002-8368-4641"
title: "AGNI"
version: 0.8.4
version: 0.8.5
doi: 10.xx/xx.xx
date-released: 2024-09-20
url: "https://github.com/nichollsh/AGNI"
4 changes: 2 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "AGNI"
uuid = "ede838c1-9ec3-4ebe-8ae8-da4091b3f21c"
authors = ["Harrison Nicholls <[email protected]>"]
version = "0.8.4"
version = "0.8.5"

[deps]
ArgParse = "c7e460c6-2fb9-53a9-8c5b-16f535851c63"
Expand All @@ -26,4 +26,4 @@ Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
TOML = "fa267f1f-6049-4f14-aa54-33bafae1ed76"

[compat]
julia = ">= 1.9"
julia = ">= 1.10"
2 changes: 1 addition & 1 deletion codemeta.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,5 @@
"keywords": "physics, radiative transfer, exoplanets, astronomy, convection, radiation, planets, atmospheres",
"license": "GPL v3.0",
"title": "AGNI",
"version": "0.8.4"
"version": "0.8.5"
}
114 changes: 114 additions & 0 deletions docs/paper/paper.bib
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,68 @@ @article{amundsen_radiation_2014
pages = {A59},
}


@article{schaefer_magma_2016,
doi = {10.3847/0004-637X/829/2/63},
url = {https://dx.doi.org/10.3847/0004-637X/829/2/63},
year = {2016},
month = {sep},
publisher = {The American Astronomical Society},
volume = {829},
number = {2},
pages = {63},
author = {Laura Schaefer and Robin D. Wordsworth and Zachory Berta-Thompson and Dimitar Sasselov},
title = {PREDICTIONS OF THE ATMOSPHERIC COMPOSITION OF GJ 1132b},
journal = {The Astrophysical Journal},
}

@article{sergeev_socrates_2023,
AUTHOR = {Sergeev, D. E. and Mayne, N. J. and Bendall, T. and Boutle, I. A. and Brown, A. and Kav\v{c}i\v{c}, I. and Kent, J. and Kohary, K. and Manners, J. and Melvin, T. and Olivier, E. and Ragta, L. K. and Shipway, B. and Wakelin, J. and Wood, N. and Zerroukat, M.},
TITLE = {Simulations of idealised 3D atmospheric flows on terrestrial planets using LFRic-Atmosphere},
JOURNAL = {Geoscientific Model Development},
VOLUME = {16},
YEAR = {2023},
NUMBER = {19},
PAGES = {5601--5626},
URL = {https://gmd.copernicus.org/articles/16/5601/2023/},
DOI = {10.5194/gmd-16-5601-2023}
}

@ARTICLE{zieba_obs_2023,
author = {{Zieba}, Sebastian and {Kreidberg}, Laura and {Ducrot}, Elsa and {Gillon}, Micha{\"e}l and {Morley}, Caroline and {Schaefer}, Laura and {Tamburo}, Patrick and {Koll}, Daniel D.~B. and {Lyu}, Xintong and {Acu{\~n}a}, Lorena and {Agol}, Eric and {Iyer}, Aishwarya R. and {Hu}, Renyu and {Lincowski}, Andrew P. and {Meadows}, Victoria S. and {Selsis}, Franck and {Bolmont}, Emeline and {Mandell}, Avi M. and {Suissa}, Gabrielle},
title = "{No thick carbon dioxide atmosphere on the rocky exoplanet TRAPPIST-1 c}",
journal = {Nature},
keywords = {Astrophysics - Earth and Planetary Astrophysics},
year = 2023,
month = aug,
volume = {620},
number = {7975},
pages = {746-749},
doi = {10.1038/s41586-023-06232-z},
archivePrefix = {arXiv},
eprint = {2306.10150},
primaryClass = {astro-ph.EP},
adsurl = {https://ui.adsabs.harvard.edu/abs/2023Natur.620..746Z},
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}

@ARTICLE{hu_cancri_2024,
author = {{Hu}, Renyu and {Bello-Arufe}, Aaron and {Zhang}, Michael and {Paragas}, Kimberly and {Zilinskas}, Mantas and {van Buchem}, Christiaan and {Bess}, Michael and {Patel}, Jayshil and {Ito}, Yuichi and {Damiano}, Mario and {Scheucher}, Markus and {Oza}, Apurva V. and {Knutson}, Heather A. and {Miguel}, Yamila and {Dragomir}, Diana and {Brandeker}, Alexis and {Demory}, Brice-Olivier},
title = "{A secondary atmosphere on the rocky exoplanet 55 Cancri e}",
journal = {arXiv e-prints},
keywords = {Astrophysics - Earth and Planetary Astrophysics},
year = 2024,
month = may,
eid = {arXiv:2405.04744},
pages = {arXiv:2405.04744},
doi = {10.48550/arXiv.2405.04744},
archivePrefix = {arXiv},
eprint = {2405.04744},
primaryClass = {astro-ph.EP},
adsurl = {https://ui.adsabs.harvard.edu/abs/2024arXiv240504744H},
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}

@book{pierrehumbert_book_2010,
address = {Cambridge New York},
title = {Principles of planetary climate},
Expand All @@ -78,6 +140,58 @@ @article{lacis_corrk_1991
pages = {9027},
}


@ARTICLE{elkins_ranges_2008,
author = {{Elkins-Tanton}, Linda T. and {Seager}, Sara},
title = "{Ranges of Atmospheric Mass and Composition of Super-Earth Exoplanets}",
journal = {Astrophysical Journal},
keywords = {accretion, accretion disks, planets and satellites: formation, solar system: formation, Astrophysics},
year = 2008,
month = oct,
volume = {685},
number = {2},
pages = {1237-1246},
doi = {10.1086/591433},
archivePrefix = {arXiv},
eprint = {0808.1909},
primaryClass = {astro-ph},
adsurl = {https://ui.adsabs.harvard.edu/abs/2008ApJ...685.1237E},
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}

@article{walterova_thermal_2020,
doi = {10.3847/1538-4357/aba8a5},
url = {https://dx.doi.org/10.3847/1538-4357/aba8a5},
year = {2020},
month = {aug},
publisher = {The American Astronomical Society},
volume = {900},
number = {1},
pages = {24},
author = {Michaela Walterova and Marie Behounkova},
title = {Thermal and Orbital Evolution of Low-mass Exoplanets},
journal = {The Astrophysical Journal},
}


@ARTICLE{driscoll_tidal_2015,
author = {{Driscoll}, P.~E. and {Barnes}, R.},
title = "{Tidal Heating of Earth-like Exoplanets around M Stars: Thermal, Magnetic, and Orbital Evolutions}",
journal = {Astrobiology},
keywords = {Astrophysics - Earth and Planetary Astrophysics},
year = 2015,
month = sep,
volume = {15},
number = {9},
pages = {739-760},
doi = {10.1089/ast.2015.1325},
archivePrefix = {arXiv},
eprint = {1509.07452},
primaryClass = {astro-ph.EP},
adsurl = {https://ui.adsabs.harvard.edu/abs/2015AsBio..15..739D},
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}

@article{selsis_cool_2023,
title = {A cool runaway greenhouse without surface magma ocean},
volume = {620},
Expand Down
15 changes: 5 additions & 10 deletions docs/paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,16 +41,11 @@ AGNI can be interacted with as a library; it is used in this way within the [Jup

# Statement of need

It is thought that all rocky planets go through a "magma ocean" stage, where their mantles are fully molten [@lichtenberg_review_2024; @salvador_review_2023]. For some planets this may be their permanent state, while for others it is fleeting. This stage allows for rapid exchange of energy and material between their atmospheres and interiors. Since this phase is likely common to many planets -- including Earth and Venus -- it is important that we understand the physical processes involved, and how these processes interact with each other [@schaefer_redox_2017; @maurice_volatile_2024]. Accurate atmosphere models can allow us to connect the theory of these young planets to telescope observations, since it is primarily through their atmospheric properties that were are able to characterise them [@piette_rocky_2023; @perryman_book_2018]. Modelling these young planets also involves facing several poorly contrained (and unconstrained) quantites which govern their atmospheric composition and dynamics [@guimond_mineralogical_2023; @sossi_redox_2020].
It is thought that all rocky planets go through a "magma ocean" stage, where their mantles are fully molten [@lichtenberg_review_2024; @elkins_ranges_2008; @schaefer_magma_2016]. For some planets this may be their permanent state, while for others it is fleeting. This stage allows for rapid exchange of energy and material between their atmospheres and interiors. Since this phase is likely common to many planets -- including Earth and Venus -- it is important that we understand the physical processes involved, and how these processes interact with each other [@schaefer_redox_2017; @maurice_volatile_2024]. Accurate atmosphere models can allow us to connect the theory of these young planets to telescope observations, since it is primarily through their atmospheric properties that were are able to characterise them [@piette_rocky_2023; @perryman_book_2018]. Modelling these young planets involves facing several poorly contrained quantites which govern their atmospheric composition [@guimond_mineralogical_2023; @sossi_redox_2020]. Recently, combined observations and modelling of exoplanet TRAPPIST-1 b enabled inference of its past climactic history [@zieba_obs_2023]. @hu_cancri_2024 were able to characterise the atmosphere of 55 Cancri e by using an advanced proprietary atmosphere model.

Several theoretical studies have modelled the atmospheres and evolution of these young planets, but all have made several simplifying assumptions. @lichtenberg_vertically_2021 coupled a simple atmosphere model to real-gas radiative transfer and interior evolution codes to simulate magma ocean evolution, but did not account for the possibility of convective stability in their atmospheres. @krissansen_was_2021 made similar assumptions. @selsis_cool_2023 used a pure-steam radiative-convective model to investigate convective stability, finding that it is likely to occur, but did not extend their work to coupled scenarios which explore the secular evolution of these planets or gas mixtures. @zilinskas_observability_2023 used a multi-gas model to simulate the atmospheres of Sub-Neptune and Super-Earth exoplanets an equilibrium, finding that the opacity of various gaseous species (notably SiO) plays a key role in determining the structure and observable properties of exoplanet atmospheres. The demand for realistic atmosphere modelling in the context of secular magma ocean evolution is apparent.
Several theoretical studies have modelled the atmospheres and evolution of these young planets, but all have made several simplifying assumptions. @lichtenberg_vertically_2021 coupled a simple atmosphere model to real-gas radiative transfer and interior evolution codes to simulate magma ocean evolution, but did not account for the possibility of convective stability in their atmospheres. @krissansen_was_2021 made similar assumptions. @selsis_cool_2023 used a pure-steam radiative-convective model to investigate convective stability, finding that it is likely to occur, but did not extend their work to coupled scenarios which explore the secular evolution of these planets or gas mixtures. It is unlikely that these atmospheres are exclusively composed of steam [@lichtenberg_vertically_2021]. @zilinskas_observability_2023 used a multi-gas model to simulate the atmospheres of Sub-Neptune and Super-Earth exoplanets an equilibrium, finding that the opacity of various gaseous species (notably SiO) plays a key role in determining the structure and observable properties of exoplanet atmospheres. The demand for realistic atmosphere modelling in the context of secular magma ocean evolution is apparent.

Ensuring sufficient spectral resolution is important in modelling the blanketing effect of these atmospheres, as resolving the opacity (and transparency) of their many gases is known to be key in setting the rate at which these planets can cool by radiation to space [@pierrehumbert_book_2010; @boukrouche_beyond_2021]. It is also important that we are able to run grids of models which explore the range of possible (and as-yet poorly constrained) conditions that these planets could exhibit, which demands efficient modelling given finite computational resources. Performance is paramount.

HELIOS[^4] [@malik_helios_2017] is a hydrostatic atmosphere model written in Python and CUDA. HELIOS assumes that the "interior temperature" $T_{\text{int}}$ of a model planet is a known quantity, but coupled time-evolved evolution with an interior model requires that this quantity be an output variable, instead requiring a fixed surface temperature (or something equivalent). It is therefore not possible to apply HELIOS to this problem. The same also applies to Exo_k[^5] [@selsis_cool_2023].

[^4]: HELIOS can be found on GitHub [here](https://github.com/exoclime/HELIOS).
[^5]: Exo_k can be found online [here](https://forge.oasu.u-bordeaux.fr/jleconte/exo_k-public).
Ensuring sufficient spectral resolution is important in modelling the blanketing effect of these atmospheres, as resolving the opacity (and transparency) of their many gases is known to be key in setting the rate at which these planets can cool by radiation to space [@pierrehumbert_book_2010; @boukrouche_beyond_2021]. It is also important that we are able to run grids of models which explore the range of possible (and as-yet poorly constrained) conditions that these planets could exhibit, which demands efficient modelling given finite computational resources. Magma ocean crystallisation could take up to several Gyr due to continuous tidal forcing and atmospheric blanketing [@walterova_thermal_2020; @driscoll_tidal_2015]. The efficiency afforded by AGNI enables Gyr simulations with coupled interior-atmosphere magma ocean models.

# Comparison with other codes

Expand All @@ -61,9 +56,9 @@ AGNI is a new radiative-convective atmosphere model developed with the view of b
* solve for an atmospheric temperature structure which conserves energy and allows for convective stability,
* operate with sufficient speed that it may be participate in a wide parameter space.

This is possible due to the method by which AGNI numerically obtains a solution for atmospheric temperature structure and energy transport. Rather than time-stepping each model level according to radiative heating and applying convective adjustment (cf. HELIOS, Exo_k, and various global circulation models), AGNI uses the Newton-Raphson method to conserve energy fluxes through the column to a required tolerence. This is similar to the method applied by @drummond_effects_2016 and @goyal_library_2020, although with several optimisations. This allows the model to take tens or hundereds of iterations to obtain a solution, in comparison to thousands or tens of thousands.
This is possible due to the method by which AGNI numerically obtains a solution for atmospheric temperature structure and energy transport. Rather than time-stepping each model level according to radiative heating and applying convective adjustment (e.g. @malik_helios_2017, @selsis_cool_2023, @pierrehumbert_book_2010), AGNI uses the Newton-Raphson method to conserve energy fluxes through the column to a required tolerence. This is similar to the method applied by @drummond_effects_2016 and @goyal_library_2020, although with several optimisations. This allows the model to take tens or hundereds of iterations to obtain a solution, in comparison to thousands or tens of thousands.

Radiative transfer is performed under the correlated-k and two-stream approximations using SOCRATES[^3], a well established FORTRAN code developed by the UK Met Office [@manners_socrates_2024; @amundsen_treatment_2017; @amundsen_radiation_2014]. Convection, condensation, and sensible heat transport are also modelled.
Radiative transfer is performed under the correlated-k and two-stream approximations using SOCRATES[^3], a well established FORTRAN code developed by the UK Met Office [@manners_socrates_2024; @sergeev_socrates_2023; @amundsen_treatment_2017; @amundsen_radiation_2014]. Convection, condensation, and sensible heat transport are also modelled.

AGNI was used in @hammond_photometric_2024.

Expand Down
1 change: 1 addition & 0 deletions res/config/55cnce_chem.toml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ title = "Roughly 55 Cancri e @ fO2=IW"
aerosol = false
overlap_method = 4
thermo_funct = true
gravity_funct = true
sensible_heat = false
latent_heat = true
convection = true
Expand Down
1 change: 1 addition & 0 deletions res/config/condense.toml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ title = "Condensation test"
aerosol = false
overlap_method = 4
thermo_funct = true
gravity_funct = true
sensible_heat = true
latent_heat = true
convection = true
Expand Down
3 changes: 2 additions & 1 deletion res/config/default.toml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,8 @@ title = "Default" # Name for this configuration file
cloud = false # Include water cloud radiative properties?
aerosol = false # Include aerosol radiative properties?
overlap_method = 4 # Method for treating line overlap.
thermo_funct = true # Use temperature-dependent thermodynamic properties?
thermo_funct = true # Use temperature-dependent thermodynamic properties?
gravity_funct = true # Use height-dependent gravity calculation?
sensible_heat = false # Include sensible heat transport at the surface?
latent_heat = false # Include heat release from phase change
convection = true # Include heat transport by convection
Expand Down
1 change: 1 addition & 0 deletions res/config/hotdry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ title = "Hot and dry"
aerosol = false
overlap_method = 4
thermo_funct = true
gravity_funct = true
sensible_heat = true
latent_heat = false
convection = true
Expand Down
1 change: 1 addition & 0 deletions res/config/mnras_chem.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ title = "ltt3780b_v5/case_00021"
aerosol = false
overlap_method = 4
thermo_funct = true
gravity_funct = true
sensible_heat = true
latent_heat = true
convection = true
Expand Down
25 changes: 13 additions & 12 deletions res/config/pRT.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,51 +2,52 @@
title = "petitRADTRANS validation tests"

[planet]
tmp_surf = 3000.0
tmp_surf = 1400.0
instellation = 0.0
albedo_b = 0.0
s0_fact = 0.25
zenith_angle = 54.74
s0_fact = 1.0
zenith_angle = 0.0
surface_material= "blackbody"
albedo_s = 0.0
radius = 6.37e6
radius = 6.6e6
gravity = 9.81
flux_int = 0.0
turb_coeff = 0.0
wind_speed = 2.0

[files]
input_sf = "res/spectral_files/Honeyside/4096/Honeyside.sf"
input_star = "res/stellar_spectra/sun.txt"
input_sf = "out/runtime.sf"
input_star = ""
output_dir = "out/"

[composition]
p_surf = 10.0
p_top = 1e-2
p_surf = 270.0
p_top = 1e-5
vmr_dict = { H2O = 1.0 }
include_all = false
chemistry = 0
condensates = []

[execution]
clean_output = true
clean_output = false
verbosity = 1
max_steps = 20000
max_runtime = 400
num_levels = 150
num_levels = 170
continua = true
rayleigh = false
cloud = false
aerosol = false
overlap_method = 2
thermo_funct = false
thermo_funct = true
gravity_funct = false
sensible_heat = false
latent_heat = false
convection = false
solution_type = 1
solvers = []
dx_max = 400.0
initial_state = ["isothermal", "500"]
initial_state = ["dry", "sat", "H2O"]
linesearch = 0
easy_start = false
converge_atol = 1.0e-2
Expand Down
Loading

0 comments on commit fe8a05e

Please sign in to comment.