Pressio: Enabling projection-based model reduction for large-scale nonlinear dynamical systems
arXiv:2003.07798
Abstract
This work introduces Pressio, an open-source project aimed at enabling leading-edge projection-based reduced order models (ROMs) for large-scale nonlinear dynamical systems in science and engineering. Pressio provides model-reduction methods that can reduce both the number of spatial and temporal degrees of freedom for any dynamical system expressible as a system of parameterized ordinary differential equations (ODEs). We leverage this simple, expressive mathematical framework as a pivotal design choice to enable a minimal application programming interface (API) that is natural to dynamical systems. The core component of Pressio is a C++11 header-only library that leverages generic programming to support applications with arbitrary data types and arbitrarily complex programming models. This is complemented with Python bindings to expose these C++ functionalities to Python users with negligible overhead and no user-required binding code. We discuss the distinguishing characteristics of Pressio relative to existing model-reduction libraries, outline its key design features, describe how the user interacts with it, and present two test cases -- including one with over 20 million degrees of freedom -- that highlight the performance results of Pressio and illustrate the breath of problems that can be addressed with it.
arXiv comment32 pages, 5 figures, supplement of 6 pages; Added references in intro, corrected fig5b, few more clarifications in sec4.2
References in corpus (8)
- The GNAT method for nonlinear model reduction: effective implementation and application to computational fluid dynamics and turbulent flows
- Finite volume POD-Galerkin stabilised reduced order methods for the parametrised incompressible Navier-Stokes equations
- Pod-Galerkin Reduced Order Methods for CFD Using Finite Volume Discretisation: Vortex Shedding Around a Circular Cylinder
- Conservative model reduction for finite-volume models
- pyMOR - Generic Algorithms and Interfaces for Model Order Reduction
- OCCA: A unified approach to multi-threading languages
- Space-time Galerkin POD with application in optimal control of semi-linear parabolic partial differential equations
- Stability conditions for the explicit integration of projection based nonlinear reduced-order and hyper reduced structural mechanics finite element models