Skip to content

pnnl/oat_python_pnnl

Repository files navigation

Open Applied Topology in Python

Open Applied Topology in Python (OAT-Python) is a package for fast, user-friendly algebra and topology. It provides Python wrappers for oat_rust, the Rust library Open Applied Topology.

Documentation and tutorials

Documentation for OAT-Python is currently under development.

Python users The best resources currently available are

  1. The Jupyter notebook tutorials published on OAT's main git repository, and
  2. Python's help() function.

Rust Developers If you are interested in modifying the Rust code in OAT-Python, see the API documenation for oat_python available at Crates.io.

Python Developers Documentation for the Python API is not available at this time (we are working to address this). In the meantime we have done our best to document the code, and encourage you to check out the source code directly.

Python Installation

  1. Download and install the most recent version of Rust. Make sure your installation is up to date by running rustup update in a command shell.

  2. Obtain a copy of OAT suite, which contains folders for OAT-Rust and OAT-Python. Don't move the contents out of this folder.

  3. Create a virtual Python environment, e.g. using Anaconda, or open one that you already have. In this example, let's assume the environment name is myenv. Activate myenv, and run

    pip install maturin

    A number of warning messages may appear; this is normal.

    If you already have maturin installed, make sure it is up to date!

  4. With myenv activated, CD into the oat_python folder, and run

    maturin develop --release
  5. OAT-Python should now be installed. Try running the Jupyter notebooks with myenv!

Contributing

For information on contributing, see CONTRIBUTING.

License

For inforamtion on copyright and licensing, see LICENSE.md and DISCLAIMER.md.

Attributions

OAT is an extension of the ExHACT library. See ATTRIBUTIONS.md for details.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published