| Code | |
| Documentation | |
| GitHub | |
| PyPi |
PyMetric began as the backend for the Pisces project and has grown into a self-contained package. It provides a seamless interface for performing coordinate-dependent operations in Python—ranging from coordinate transformations and differential operations to solving equations of motion. In addition, it offers robust data structures that natively respect and understand underlying coordinate systems and grid architectures, enabling efficient handling of both curvilinear and structured grids.
PyMetric requires Python 3.9 or newer. To install the most recent stable version of the code, use pip:
$ pip install pymetric-libThe active development version can be obtained with
$ pip install git+https://github.com/Pisces-Project/PyMetricPyMetric depends on several packages, which will be installed automatically:
- unyt: Unit and quantity manipulations
- numpy: Numerical operations
- scipy: Interpolation and curve fitting
- h5py: HDF5 file interaction
- tqdm: Progress bars
- sympy: Symbolic mathematics.
In addition to the standard versions of the codebase, there are a few special dependency versions of the code.
pymetric-lib[docs]will install all of the relevant Sphinx dependencies.pymetric-lib[test]will install all of the dependencies for running the testing suite.
PyMetric is open source. Community contributions are welcome! Fork this repository to make your own modifications, or submit an issue to suggest new features or report bugs.
If you use PyMetric for academic work, please include a statement in your publication similar to:
This work made use of PyMetric, a geometry and mathematics framework for computational physics, developed by Eliza Diggins and available at https://github.com/Pisces-Project/PyMetric
