The ROM tools and workflows Python library comprises a set of algorithms for constructing and exploiting ROMs that rely on protocol classes that encapsulate all the information needed to run a given algorithm. The philosophy is that, for any given application, the user simply needs to "fill out" a class that meets the required API of the protocol. Once this class is complete, the user gains access to all of our existing algorithms.
https://pressio.github.io/rom-tools-and-workflows/romtools.html
https://pressio.github.io/rom-tools-and-workflows-demos/
cd my-path/rom-tools-and-workflows
pip install .
Note: you need pytest
installed
cd my-path/rom-tools-and-workflows
pytest
Note: some tests actually generate some auxiliary/temporary files which
are handled via the tmp_path
as suggested https://docs.pytest.org/en/7.1.x/how-to/tmp_path.html.
cd <repo-dir>
pdoc ./romtools -t ./custom-template --math --docformat google
this opens a browser with the module documentation.
More info about pdoc
can be found here