Skip to main content

Geometry package for high energy physics (Geant4, Fluka)

Project description

pyg4ometry

Python code for rapid creation and conversion of radiation transport Monte Carlo (Geant4 and Fluka) geometries.

PyPI GitHub tag (latest by date) GitHub Workflow Status pre-commit Code style: black Codecov GitHub issues GitHub pull requests License Read the Docs

Warning

Work-in-progress repackaging of https://bitbucket.org/jairhul/pyg4ometry. Report issues and pull requests there.

Installing

  • pip install pyg4ometry

Warning Most dependencies are available from pip but you will need to install OpenCASCADE cgal, mpfr, gmp, ROOT

Building

  • git clone https://github.com/g4edge/pyg4ometry.git
  • cd pyg4ometry
  • pip install . or
  • pip install --editable . for a version which you can edit

Warning If you update your git clone and the pybind11 C++ has changes you will need to reinstall and this trigger a rebuild

Manual

Online manual

Developer commands (for detailed developer notes see readthedocs)

  • Building the manual
    • pip install '.[docs]' to install doc building dependencies
    • cd pyg4ometry/docs
    • make
  • Running tests
    • pip install '.[test]' to install test running dependencies
    • cd pyg4ometry/tests
    • pytest
  • Git commit
    • pre-commit
      • pre-commit install to setup pre-commit in source dir (only once)
      • pre-commit run --all-files run pre-commit locally
      • pre-commit run --all-files black run only black
    • messages
      • Start commit message with submodule : (type of change) detailed notes
      • e.g pycgal : (extra functionality) more 2d mesh processing
  • Pull request
    • PR messages should just explain the change in a concise way as they will form part of the change log
      • e.g FLUKA region viewer
    • Update the CHANGELOG.md file for generating the release notes

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

pyg4ometry-1.1.0.tar.gz (6.1 MB view hashes)

Uploaded Source

Built Distributions

pyg4ometry-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pyg4ometry-1.1.0-cp311-cp311-macosx_13_0_arm64.whl (6.6 MB view hashes)

Uploaded CPython 3.11 macOS 13.0+ ARM64

pyg4ometry-1.1.0-cp311-cp311-macosx_10_9_x86_64.whl (29.3 MB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

pyg4ometry-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pyg4ometry-1.1.0-cp310-cp310-macosx_13_0_arm64.whl (6.5 MB view hashes)

Uploaded CPython 3.10 macOS 13.0+ ARM64

pyg4ometry-1.1.0-cp310-cp310-macosx_10_9_x86_64.whl (29.2 MB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

pyg4ometry-1.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pyg4ometry-1.1.0-cp39-cp39-macosx_13_0_arm64.whl (6.5 MB view hashes)

Uploaded CPython 3.9 macOS 13.0+ ARM64

pyg4ometry-1.1.0-cp39-cp39-macosx_10_9_x86_64.whl (29.2 MB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

pyg4ometry-1.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pyg4ometry-1.1.0-cp38-cp38-macosx_13_0_arm64.whl (6.5 MB view hashes)

Uploaded CPython 3.8 macOS 13.0+ ARM64

pyg4ometry-1.1.0-cp38-cp38-macosx_10_9_x86_64.whl (29.2 MB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

pyg4ometry-1.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

pyg4ometry-1.1.0-cp37-cp37m-macosx_10_9_x86_64.whl (29.2 MB view hashes)

Uploaded CPython 3.7m macOS 10.9+ x86-64

Supported by

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