Python Bindings for Pressio
This is the documentation of the Python bindings library, which is one component of the Pressio project.
Note that if you get an import error, it might be that the version of
pytest you are using is not compatible with the
pip command you used to install. Make sure you use Python commands from the same distribution.
Pressio can be applied to any dynamical system expressible in a continuous-time form as
and/or in a discrete-time form
Here, is the full-order model (FOM) state, the FOM velocity, is time, and is the residual.
This formulation is quite general and does not make any assumption on its origin: it may be derived from the spatial discretization (regardless of the discretization method) of a PDE problem, or from naturally discrete systems.
We leverage this expressive mathematical framework as a pivotal design choice to enable a minimal application programming interface (API) that is natural to dynamical systems: you choose the formulation more convenient to you, and interface your application to Pressio by creating a corresponding adapter class to expose the operators needed for the chosen formulation. In general, you don't need to support both: each one has advantages and disadvantages, and sometimes the choice is dictated directly by your native application (for example, in some cases it might be easier to directly expose the discrete-time residual).
Read this doc page to learn more about the adapter classes and see code templates.
cd pressio4py/demos python3 ./<demo-subdir-name>/main.py
The full license is available here.
We are working on publishing this: you can find our arXiv preprint at: https:/