jade

Core implementation of the JADE (Joining Atmosphere and Dynamics for Exoplanets) model.

https://github.com/jade-exoplanets/jade

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Core implementation of the JADE (Joining Atmosphere and Dynamics for Exoplanets) model.

Basic Info
  • Host: GitHub
  • Owner: JADE-Exoplanets
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: main
  • Size: 3.98 MB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 2
Created over 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme Contributing License Citation

README.md

DOI

JADE: Joining Atmosphere and Dynamics for Exoplanets

JADE is a comprehensive Python framework for simulating the coupled evolution of exoplanetary atmospheres and orbital dynamics in hierarchical three-body systems.

Overview

JADE couples the most relevant mechanisms affecting close-orbiting exoplanets:

Dynamical Components:

  • Simulates the evolution of hierarchical three-body systems
  • Models von Zeipel–Lidov–Kozai resonances using secular formalism
  • Truncates the Hamiltonian up to the 4th (hexadecapolar) order
  • Integrates short-range forces dampening resonances:
    • Tidal dissipation
    • Rotational dissipation
    • General relativistic precession

Atmospheric Components:

  • Models planets as extended objects with complex structure:
    • Iron nucleus
    • Silicate mantle
    • H/He atmosphere with trace metals
  • Dynamically integrates atmospheric evolution in response to:
    • Orbital changes
    • Stellar radiative input
    • Internal heating
  • Simulates XUV-induced photo-evaporation

All these components interact holistically, making JADE a unique tool for studying the long-term evolution of exoplanetary systems over Gyr timescales.

Installation Guide

Important note for macOS users: make sure the Command Line Tools are installed before doing anything.

First, clone the JADE repository: bash git clone https://github.com/JADE-Exoplanets/JADE.git cd JADE

Then, you have to set up a virtual environment. JADE performs computationally intensive simulations that require specific optimizations for best performance. We provide multiple installation methods tailored to different hardware configurations. Be sure to activate the virtual environment you install before running any JADE simulation.

Automated Setup (Recommended)

Our setup script automatically detects your hardware and creates an optimized environment:

bash # Run the script with default settings (auto-detects best method) python setup.py

The script will: 1. Detect your CPU architecture 2. Choose the best installation method for your system 3. Create an optimized environment 4. Run a performance benchmark

Available Installation Methods

Running the script with no argument makes it automatically detect the best method. You can also impose a method using the --method argument. The script supports three installation methods, each with different advantages:

| Method | Best For | Advantages | Command | |--------|----------|------------|---------| | conda | Intel CPUs | MKL optimizations, 10–250× faster | --method conda | | UV | Apple Silicon, AMD | Guarantees Python 3.8, fast install | --method uv | | pip | Fallback option | Standard Python tooling | --method pip |

Example Usage

Aside from --method, the setup script also accepts the --env argument, to choose the name of your virtual environment, as well as the --force argument, to force the recreation of an existing environment. Here are some example usages:

```bash # For Intel systems with conda already installed python setup.py --method conda --env jade

# For M1/M2 Macs or AMD systems (ensures Python 3.8) python setup.py --method uv

# Force recreation of an existing environment python setup.py --force ```

Manual Installation Options

If you prefer to set up your environment manually, follow one of these approaches:

Option 1: Using conda (Best for Intel CPUs)

bash # Create conda environment from provided configuration conda env create -f environment.yml conda activate jade

Option 2: Using UV (Recommended for Apple Silicon/AMD)

```bash # Install UV if not already available curl -LsSf https://astral.sh/uv/install.sh | sh

# Install Python 3.8 and create environment uv python install cpython-3.8 uv venv --python cpython-3.8 source .venv/bin/activate

# Install dependencies uv pip install -r requirements.txt ```

Option 3: Standard pip/venv (Not recommended for large simulations)

```bash python -m venv .venv source .venv/bin/activate # On Linux/Mac # or # .venv\Scripts\activate # On Windows

pip install -r requirements.txt ```

Performance Expectations

Performance varies significantly based on installation method and hardware:

  • Intel CPUs with conda (MKL), or Apple Silicon/AMD with UV (OpenBLAS): A standard JADE simulation (e.g., input/examples/example_fd1.txt) may complete in seconds
  • Other configurations or standard pip: The same simulation could take 10–250× longer

The difference is primarily due to optimized linear algebra libraries (MKL/OpenBLAS) in numerical packages, which dramatically impact the integration of differential equations.

Troubleshooting

If you experience slow performance:

  1. Verify installation method: Use conda for Intel systems and uv for others
  2. Check Python version: JADE requires Python 3.8
  3. Run the benchmark: The setup script includes a benchmark to verify performance
  4. Memory requirements: Ensure you have sufficient RAM (4GB minimum)

Basic Usage

For a comprehensive introduction to JADE, please refer to the first tutorial: Tutorial 1: Basic Setup and Simulation

Once you are familiar with it, you can engage in more advanced use cases of JADE, described by the other tutorials.

Citation

If you use JADE in your research, please cite the following article in your publication: Attia, M., Bourrier, V., Eggenberger, P., et al. 2021, A&A, 647, A40

If you need to reference this repository, please refer to the CITATION file.

Contributing

Contributions to JADE are welcome! Please see our Contributing Guidelines for more information on how to get involved.

License

JADE is licensed under the BSD 3-Clause License—see the LICENSE file for details.

Acknowledgments

  • The main contributor to the development of this software is Mara Attia, with help from Jean-Baptiste Delisle and Victor Ruelle. We acknowledge the use of the Claude AI assistant (Anthropic, 2024) for code optimization.
  • We offer our thanks to Elsa Bersier (ESBDI, Geneva) for designing the JADE logo.
  • This work has been carried out within the framework of the NCCR PlanetS supported by the Swiss National Science Foundation under grants 51NF40182901 and 51NF40205606. This project has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (project SPICE DUNE, grant agreement no. 947634; grant agreement no. 730890).

Owner

  • Name: JADE: Joining Atmosphere and Dynamics for Exoplanets
  • Login: JADE-Exoplanets
  • Kind: organization

Reference implementation and development space for the Joining Atmosphere and Dynamics for Exoplanets (JADE) code.

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: "Attia"
    given-names: "M."
    orcid: "https://orcid.org/0000-0002-7971-7439"
  - family-names: "Bourrier"
    given-names: "V."
    orcid: "https://orcid.org/0000-0002-9148-034X"
  - family-names: "et al."
title: "JADE: Joining Atmosphere and Dynamics for Exoplanets"
version: 1.0.0
date-released: 2021-03-01
doi: 10.5281/zenodo.15167399
url: "https://doi.org/10.5281/zenodo.15167399"
repository-code: "https://github.com/JADE-Exoplanets/JADE"
license: BSD-3-Clause
references:
  - type: article
    authors:
      - family-names: "Attia"
        given-names: "M."
      - family-names: "Bourrier"
        given-names: "V."
      - family-names: "Eggenberger"
        given-names: "P."
      - family-names: "et al."
    title: "The JADE code: Coupling secular exoplanetary dynamics and photo-evaporation"
    journal: "Astronomy & Astrophysics"
    volume: 647
    article-number: A40
    year: 2021
    doi: 10.1051/0004-6361/202039452
    url: "https://doi.org/10.1051/0004-6361/202039452"
preferred-citation:
  type: article
  authors:
    - family-names: "Attia"
      given-names: "M."
    - family-names: "Bourrier"
      given-names: "V."
    - family-names: "Eggenberger"
      given-names: "P."
    - family-names: "et al."
  title: "The JADE code: Coupling secular exoplanetary dynamics and photo-evaporation"
  journal: "Astronomy & Astrophysics"
  volume: 647
  article-number: A40
  year: 2021
  doi: 10.1051/0004-6361/202039452
  url: "https://doi.org/10.1051/0004-6361/202039452"
abstract: >
  JADE (Joining Atmosphere and Dynamics for Exoplanets) couples the most relevant mechanisms affecting close-orbiting exoplanets. 
  It simulates the evolution of a hierarchical three-body system to monitor von Zeipel–Lidov–Kozai resonances 
  using a secular formalism truncated up to the 4th (hexadecapolar) order. JADE integrates short-range forces dampening the resonance 
  (tidal and rotational dissipation, general relativistic precession) while modeling the inner planet as an extended object
  with a complex structure (iron nucleus surrounded by a silicate mantle, topped by an atmosphere of H/He and trace metals).
  The atmosphere dynamically evolves in response to orbital changes, stellar radiation, internal heating, and XUV-induced photo-evaporation.
keywords:
  - exoplanets
  - planetary dynamics
  - hierarchical systems
  - von Zeipel-Lidov-Kozai
  - planetary internal structure
  - atmospheric evolution
  - atmospheric evaporation

GitHub Events

Total
  • Release event: 1
  • Delete event: 11
  • Push event: 20
  • Pull request event: 23
  • Create event: 13
Last Year
  • Release event: 1
  • Delete event: 11
  • Push event: 20
  • Pull request event: 23
  • Create event: 13

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 0
  • Total pull requests: 9
  • Average time to close issues: N/A
  • Average time to close pull requests: 1 minute
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 9
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 9
  • Average time to close issues: N/A
  • Average time to close pull requests: 1 minute
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 9
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • maraattia (9)
Top Labels
Issue Labels
Pull Request Labels