Pressio C++ Library

Leading-edge reduced order models (ROMs) for dynamical systems in science and engineering.

This is the documentation of the C++ library, one component of the Pressio ecosystem.


NameDescription/ContentLinksCorresponding header(s)
mplmetaprogramming functionalitiesCode
Documentation
<pressio/mpl.hpp>
utilslogging, static constants, crtp helper, etcCode
Documentation
<pressio/utils.hpp>
type_traitstraits/detection classesCode
Documentation
<pressio/type_traits.hpp>
expressionsclasses for various abstractions (span, diagonal, subspan, etc.)Code
Documentation
<pressio/expressions.hpp>
opsspecializations of shared-memory and distributed linear algebra kernelsCode
Documentation
<pressio/ops.hpp>
qrQR factorization functionalitiesCode
Documentation
<pressio/qr.hpp>
solvers_linearlinear solvers (wrappers around existing TPLs)Code
Documentation
<pressio/solvers_linear.hpp>
solvers_nonlinear
general info
Newton-Raphson
Gauss-Newton
Levenberg-Marquardt
Code
Documentation
Documentation
Documentation
Documentation
<pressio/solvers_nonlinear.hpp>
ode
explicit steppers
implict steppers
advancers
Code
Documentation
Documentation
Documentation

<pressio/ode_steppers_explicit.hpp>
<pressio/ode_steppers_implicit.hpp>
<pressio/ode_advancers.hpp>
(for everything: <pressio/ode.hpp>)
rom
general info
decoder
Galerkin
Steady LSPG
Unsteady LSPG
WLS
Code
Documentation
Documentation
Documentation
Documentation
Documentation
Documentation


<pressio/rom_decoder.hpp>
<pressio/rom_galerkin.hpp>
<pressio/rom_lspg.hpp>
<pressio/rom_lspg.hpp>
<pressio/rom_wls.hpp>
(for everything: <pressio/rom.hpp>)

Getting Started

License and Citation

The full license (BSD-3) is available here.

We are working on publishing this: you can find our arXiv preprint at: https://arxiv.org/abs/2003.07798

Questions?

Find us on Slack: https://pressioteam.slack.com or open an issue on github.