Skip to content

Pisces-Project/PyMetric

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

docs/source/images/PyMetric.png

PyMetric

Code black isort Pre-Commit Xenon
Documentation docs NUMPSTYLE docformatter
GitHub Contributors Commits Tests
PyPi PyPi PyVersion Wheel License

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.

Installation

PyMetric requires Python 3.9 or newer. To install the most recent stable version of the code, use pip:

$ pip install pymetric-lib

The active development version can be obtained with

$ pip install git+https://github.com/Pisces-Project/PyMetric

Dependencies

PyMetric 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.

Development

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.

Acknowledgment

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

About

PyMetric is a differential geometry and field computation library designed for symbolic and numerical analysis on structured coordinate systems. It enables seamless computation of gradients, divergences, Laplacians, and tensor operations on curvilinear grids, with full support for units, symbolic expressions, and high-performance backends.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages