Recent Releases of proteus

proteus - Version 25.07.31

Summary

Several new additions, including: * Structure calculation via Zalmoxis * Extensive updates to documentation * Simplified User install method * Includes JOSS submission manuscript * Early BO inference version * Aragog now default interior model * Enable instellation as primary input parameter instead of orbit * Pre-commit hook to avoid commits of large data files

What's Changed

  • Integrating Zalmoxis by @flaviacris03 in https://github.com/FormingWorlds/PROTEUS/pull/401
  • Validate module versions by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/411
  • fp/gravity by @flaviacris03 in https://github.com/FormingWorlds/PROTEUS/pull/412
  • Ls/aragog_reset by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/410
  • Add schematic to docs by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/429
  • Ls/zenodo by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/435
  • Merge BO inference by @Ben-Riegler in https://github.com/FormingWorlds/PROTEUS/pull/433
  • Fixed docs display issue for _struct class by @flaviacris03 in https://github.com/FormingWorlds/PROTEUS/pull/445
  • Docs, pre-commit hook, and bug fixes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/451
  • Validate data files with MD5, check when they need updating/replacing by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/454
  • Default config: aragog as default interior module, disable zalmoxis by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/460
  • Rc/interior lookup tables by @rdc49 in https://github.com/FormingWorlds/PROTEUS/pull/409
  • Several updates to documentation by @timlichtenberg in https://github.com/FormingWorlds/PROTEUS/pull/464
  • fixinginstellationbug by @rdc49 in https://github.com/FormingWorlds/PROTEUS/pull/465
  • Fixes 440 partially and 455 by @HannoSpreeuw in https://github.com/FormingWorlds/PROTEUS/pull/456
  • Uncollapse requirements and steps lists by @HannoSpreeuw in https://github.com/FormingWorlds/PROTEUS/pull/467
  • Move inference code into src/ folder and refactor by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/470
  • Draft for method paper submission to Journal of Open Source Software (JOSS) by @timlichtenberg in https://github.com/FormingWorlds/PROTEUS/pull/430

New Contributors

  • @flaviacris03 made their first contribution in https://github.com/FormingWorlds/PROTEUS/pull/401
  • @Ben-Riegler made their first contribution in https://github.com/FormingWorlds/PROTEUS/pull/433
  • @rdc49 made their first contribution in https://github.com/FormingWorlds/PROTEUS/pull/409

Full Changelog: https://github.com/FormingWorlds/PROTEUS/compare/25.05.20...25.07.31

- Python
Published by timlichtenberg 10 months ago

proteus - Version 25.05.20

Summary

Significant changes to the model, which include the introduction of escape and tidal heating. Features key support/improvements for the new Aragog interior model, designed to replace SPIDER. Re-worked VULCAN chemistry wrapper.

Documentation has been updated, and the source code is better commented. New configuration files are available in the input/ folder.

Test coverage has increased to 71%. Configuration files now use 'default' values defined in the source code.

Grid tooling now supports SLURM workload management. Documentation includes details on using PROTEUS on HPC clusters.

Pull requests

  • Creating folder of PETSc by @planetmariana in https://github.com/FormingWorlds/PROTEUS/pull/311
  • Citation info by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/313
  • Update plots and CLI responsiveness by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/316
  • Restrict time-steps to be smaller than the predicted time until model termination by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/317
  • Support for depth-dependent tidal heating by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/321
  • Fix interior plot and update docs by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/323
  • Add installation instructions for Snellius cluster. by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/315
  • Dummy tides inequality, convergence robustness, docs by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/326
  • Support for physical tidal heating module 'lovepy' by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/329
  • Fix os.cpucount() function in gridproteus.py for users with Python<3.13 by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/333
  • AGNI no-solve configuration and minor changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/334
  • Enable/disable real gas EOS in AGNI by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/336
  • Atmospheric escape time-step and other changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/337
  • Updates to Julia packages by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/340
  • Update snellius docs and modules. PROTEUS works. by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/341
  • Support for H2S and NH3 outgassing by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/342
  • Synthetic observables with PLATON by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/343
  • Diagnostic parameters and minor changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/344
  • Escaping composition set by user-selected reservoirs by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/346
  • Ls/aragog adiabat by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/349
  • Rework configuration and docs for simplicity by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/352
  • Adding melting curves as a key on toml file by @planetmariana in https://github.com/FormingWorlds/PROTEUS/pull/357
  • New config keys on toml file from aragog interior model by @planetmariana in https://github.com/FormingWorlds/PROTEUS/pull/359
  • Fix offline chemistry script. Other minor fixes to PROTEUS. New config options. by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/354
  • Software test for running PROTEUS with AGNI atmosphere model by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/361
  • Store Fxuv and use correct distance scaling by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/363
  • Improvements to code test coverage by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/364
  • Update documentation for Kapteyn cluster usage by @timlichtenberg in https://github.com/FormingWorlds/PROTEUS/pull/368
  • Integrate offline chemistry into main codebase by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/366
  • Update the documentation to use condormaster on Kapteyn cluster by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/351
  • Provide MORS with correct reference age for rotation rate. by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/371
  • Calculate synthetic observations based on offline chemistry output by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/377
  • Documentation for Habrok cluster by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/381
  • Generate slurm config from grid_proteus by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/382
  • Grid PROTEUS docs and fixes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/383
  • Archive data files from simulations by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/385
  • Limit platon temperature range, and a mitigation for data-download failures by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/393
  • Handle cases where elemental inventory is zero by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/397
  • Respect minimum time requirement, add vars to config by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/400
  • Update VULCAN wrapper with new Config object by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/402
  • Fix 353 by @HannoSpreeuw in https://github.com/FormingWorlds/PROTEUS/pull/403
  • New plot to visualise planet evolution by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/406
  • Event triggering to recompute outer boundary condition by @planetmariana in https://github.com/FormingWorlds/PROTEUS/pull/408

Full changelog

https://github.com/FormingWorlds/PROTEUS/compare/v24.12.11...v25.05.20

- Python
Published by nichollsh about 1 year ago

proteus - v24.12.11

What's Changed

  • Tidying some stuff by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/116
  • Fixed installation instructions : underscore in the step 4 command by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/117
  • Switch documentation over to mkdocs by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/121
  • Rewrite AGNI interface with JuliaCall and other refactoring by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/123
  • Change project slug in documentation by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/124
  • Set up pyproject.toml by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/125
  • Fix banner in readme by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/129
  • Set up automated tests via Github Actions by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/128
  • Escape by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/132
  • Atmos wrapper by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/133
  • Set up release workflow by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/139
  • Fix * imports by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/138
  • Merge escape2 branch to master by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/140
  • Refactor start_proteus.py and move config to toml by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/142
  • Add integration test for PROTEUS by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/149
  • Add linting config and fix linting issues by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/146
  • Add plots to CLI by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/151
  • Installation and logging updates by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/155
  • Update CITATION.cff by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/153
  • Master -> main by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/159
  • Janus wrapper by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/150
  • Remove submodules by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/158
  • Emission spectrum calculation and other minor changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/161
  • Bugfix for plotting by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/164
  • Fixes to environment in files and docs by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/170
  • Outgassing handled by CALLIOPE and other minor additions by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/176
  • High-resolution postprocessing and download data by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/179
  • Fixes to dummy atmosphere and other minor changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/183
  • Dummy interior model and further work on generalising submodules by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/185
  • Dummy test by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/188
  • Time-averaged orbital distance and minor changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/191
  • Plotting I/O improvements by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/195
  • Remove SPIDER and PETSc submodules by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/197
  • MacOS tests and standalone setup by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/198
  • Dummy integration by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/199
  • Implement new config by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/189
  • Zephyrus by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/181
  • Config implementation by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/203
  • Generalised outgassing wrapper by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/211
  • Comparison with population data, rework planetary vs interior mass/radius by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/214
  • Do not test example configs by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/219
  • Generalise stellar wrapper, dummy star module by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/220
  • Update documentation for config by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/217
  • Add validators to config by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/223
  • Add mass-radius curves to population plots by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/222
  • Download spectral files as required by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/228
  • Escape config by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/225
  • Support for arbitrary gases by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/229
  • Star wrapper consistency by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/230
  • Fix grid_proteus.py by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/231
  • Fix unit conversion in dummy star and add test by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/234
  • Aragog constant by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/235
  • Read aragog output files and make interior plots by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/239
  • Fix deprecation warnings from config update by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/226
  • Refactor and optimize data download by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/244
  • Atmosphere model wrapper by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/243
  • Display information on module versions, remove PROTEUS.env by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/246
  • Tests using physical simulations by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/247
  • Add gas overlap option to config by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/249
  • Update aragog wrapper with recent changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/254
  • Implementation of Rxuv computation for escape by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/227
  • Add aragog as a package dependency. by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/255
  • Calculate and store orbital period by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/257
  • Remove config compatibility code by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/251
  • Update README.md by @timlichtenberg in https://github.com/FormingWorlds/PROTEUS/pull/260
  • Update test data for new version of Mors/Spada. by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/264
  • Self-consistent mass and radius for interior modules by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/262
  • Set interior structure by: total planet mass, radius by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/272
  • Dummy tidal heating by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/275
  • Ls/resume aragog by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/279
  • Pass radionuclide parameters from config by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/278
  • Add cli doctor command by @stefsmeets in https://github.com/FormingWorlds/PROTEUS/pull/274
  • Pass tidal heating to Aragog and SPIDER by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/282
  • Validate escape config by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/290
  • Ls/structure aragog by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/291
  • Allow setting Hydrogen inventory relative to mantle mass by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/292
  • Do not require internet access by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/294
  • Update termination criteria by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/297
  • Allow setting volatile abundances as both metallicity or concentration by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/298
  • Add a section in documentation for installation on Kapteyn cluster by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/299
  • Update kapteyn cluster documentation webpage by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/301
  • Organize input folder by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/300
  • Neglect checking for CH4 molar abundance by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/304
  • Set p_obs from CFF, update postprocessing scripts by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/305
  • Minor updates for the documentation of the Kapteyn cluster section by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/307
  • Minor update of escape.toml by @EmmaPostolec in https://github.com/FormingWorlds/PROTEUS/pull/308
  • Ls/aragog lookup by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/306
  • ls/proteus to pypi by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/310

New Contributors

  • @EmmaPostolec made their first contribution in https://github.com/FormingWorlds/PROTEUS/pull/117
  • @stefsmeets made their first contribution in https://github.com/FormingWorlds/PROTEUS/pull/121

Full Changelog: https://github.com/FormingWorlds/PROTEUS/compare/v24.07.25...v24.12.11

- Python
Published by lsoucasse over 1 year ago

proteus - Version 24.07.25

What's Changed

  • Sulfur outgassing by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/102
  • Stellar modelling updates by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/108
  • Integrate JANUS package by @lsoucasse in https://github.com/FormingWorlds/PROTEUS/pull/109
  • Detangling input/output variables by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/111
  • Simulation can be resumed by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/112
  • Calculates some observational quantities by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/114
  • A dummy escape module by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/115
  • Documentation updates
  • Other minor changes

New Contributors

  • @lsoucasse made their first contribution in https://github.com/FormingWorlds/PROTEUS/pull/108

Full Changelog: https://github.com/FormingWorlds/PROTEUS/compare/v24.05.29...v24.07.25

- Python
Published by nichollsh almost 2 years ago

proteus - Version 24.05.29

What's Changed

  • Updates to AGNI interface by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/88
  • Updates to default case and removed duplicate code by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/89
  • Rewrite SolveVolatiles outgassing script and other minor changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/98

Full Changelog: https://github.com/FormingWorlds/PROTEUS/compare/v24.04.04...v24.05.29

- Python
Published by nichollsh almost 2 years ago

proteus - Version 24.04.04

Summary

  • Stability improvements. The model now uses a more robust time-stepping scheme, which should mean that it does not take unphysically large steps that lead to submodules becoming decoupled. There are also other safety-checks, such as re-running SPIDER steps if the attempted step size and tolerances were inappropriate. New convergence criteria have been implemented for steady-state cases which do not solidify before reaching global radiative equilibrium.
  • Documentation updates. The ReadTheDocs files are now more coherent, with tables for outlining the parameters and fixes to the installation instructions. The submodule AEOLUS has been renamed to JANUS, to avoid confusion with other codes.
  • Model output. Plots have been improved and tidied, and are now generally faster to create. The model now outputs its stdout to a log file as well as to the terminal. The GridPROTEUS tool now uses queueing and multiprocessing, such that PROTEUS can now be easily run many times in parallel across a parameter space.
  • Clouds. The model now includes clouds, through JANUS, although they haven't been extensively tested and are disabled by default.

Merged pull requests

  • Update my e-mail address by @djbower in https://github.com/FormingWorlds/PROTEUS/pull/58
  • Significant model stability improvements, plotting updates, and other changes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/67
  • Support for JANUS, logging, GridProteus, and stability improvements by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/78
  • Clouds and minor fixes by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/79
  • Plot updates. Import optimisations. Config updates. by @nichollsh in https://github.com/FormingWorlds/PROTEUS/pull/85

Full Changelog: https://github.com/FormingWorlds/PROTEUS/compare/v23.11.15...v24.04.04

- Python
Published by nichollsh about 2 years ago

proteus - Version 23.11.15

This is the first release since Lichtenberg et al., 2021. Significant changes have been made to the model since then, so I will not make a direct comparison here.

The model is able to simulate the evolution of a magma ocean planet from a completely molten state to solidification. It accounts for energy transport through the interior (convection, conduction, settling, phase change), surface (conduction), and atmosphere (radiation, convection). The composition of the atmosphere is set by melt-vapour equilibrium with the magma ocean, requiring mass balance between equilibrium chemistry and solubility in the melt. Downwelling SW radiation from the star is calculated from stellar evolution tracks, and using time-resolved spectra. The model supports several volatiles at runtime, but includes tools for post-processing simulation results with robust photochemical kinetics. Output data are automatically plotted. The model's modular nature allows the submodules (e.g. AEOLUS) to be swapped for alternatives, such as AGNI.

This release has been able demonstrate that an Earth-like case with a pure-steam atmosphere cools within a few Myr, while Venus maintains a partially molten state thanks to a strong greenhouse effect. Highly irradiated planets (e.g. TRAPPIST-1b) are shown to maintain an almost entirely molten state as long as they maintain their atmospheres.

Submodules have been validated separately. This release does not include submodules explicitly, so they will need to be downloaded according to the documentation.

- Python
Published by nichollsh over 2 years ago

proteus - Module arrangement from Lichtenberg+ 2021 JGRP

Submodule versions from Lichtenberg et al. (2021, JGRP).

- Python
Published by timlichtenberg about 5 years ago