Skip to main content

Post-processing tool for pebble accretion onto planetary embryos from TripodPy hydrodynamic simulations.

Project description

PA3Py — Pebble Accretion Post-Processing for TripodPy

License: MIT Tests Documentation Status

PA3Py is a Python post-processing package for computing pebble accretion growth of planetary embryos from TripodPy hydrodynamic disk simulations. It is not a standalone disk evolution code — it reads TripodPy HDF5 output snapshots and computes embryo growth on top of them.

The physics follows Ormel (2017) and Drążkowska et al. (2023), including headwind/shear regime switching, 2D–3D turbulence transition, Safronov ballistic onset, and a dynamic isolation mass cap.

Please read the documentation for a full description.

Installation

Clone the repository and install via pip:

git clone https://github.com/mmmaxii/PA3Py.git
cd PA3Py
pip install .

For an editable installation (recommended during development):

pip install -e ".[dev]"

Requirements

  • Python ≥ 3.9
  • TripodPy simulation output (HDF5 snapshots)
  • numpy, scipy, h5py, matplotlib

Quick Start

from pa3py import PA3Py

sim = PA3Py("path/to/tripodpy/output/")

# Run pebble accretion for embryos at 2, 5, 10, 20 AU
results = sim.run_growth([2.0, 5.0, 10.0, 20.0])

# Hovmöller diagram (dust-to-gas ratio vs time)
sim.plot_hovmoller(field='epsilon')

For custom chemistry (multi-snowline, 4-species):

from pa3py import PA3Py, FunctionComposition
from pa3py import constants as c

def my_chemistry(r_cm, t_sec):
    if r_cm < 3.0 * c.AU:
        return {'silicates': 1.0}
    elif r_cm < 5.0 * c.AU:
        return {'silicates': 0.5, 'H2O': 0.5}
    else:
        return {'silicates': 0.3, 'H2O': 0.3, 'CO2': 0.4}

sim = PA3Py("path/to/output/", comp_model=FunctionComposition(my_chemistry))
results = sim.run_growth([5.0, 10.0, 20.0])

Physics & References

  • Ormel (2017): The Emerging Paradigm of Pebble Accretion
  • Drążkowska et al. (2023): Planet Formation Theory in the Era of ALMA and Kepler

Acknowledgements

PA3Py was developed at the Pontificia Universidad Católica de Chile. Contact: mvalderrav@uc.cl

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pa3py-1.0.0.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pa3py-1.0.0-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

Details for the file pa3py-1.0.0.tar.gz.

File metadata

  • Download URL: pa3py-1.0.0.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pa3py-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7ea005b2345e666621633d1e86a5dc3c4ea6d5f06c4fb22f89888060cea8e4dd
MD5 ef0177ba3c2bf2e58c1642867abde104
BLAKE2b-256 30affb9878f3b063cf945b73ac0a11259fa907a664e660a7effdd920fd7a011b

See more details on using hashes here.

File details

Details for the file pa3py-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pa3py-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 17.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pa3py-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 647f5afa4d3206ac58c6b127fe1cd7950ba4a452a6458c6b81de41e99cb46196
MD5 a97cd113f555295e416f670d01f15752
BLAKE2b-256 20182d36dd240fbcb749328d672543f6e0f1544fd093bd8743d5429bd56a8987

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page