Operator inference for data-driven, non-intrusive model reduction of dynamical systems.
Project description
Operator Inference in Python
This is a Python implementation of Operator Inference for learning projection-based polynomial reduced-order models of dynamical systems. The procedure is data-driven and non-intrusive, making it a viable candidate for model reduction of "glass-box" systems. The methodology was introduced in [1].
See the Wiki for mathematical details and API documentation. See this repository for a MATLAB implementation.
Quick Start
Installation
Install the package from the command line with the following single command (requires pip).
$ python3 -m pip install --user rom-operator-inference
See the wiki for other installation options.
Usage
Given a basis matrix Vr, snapshot data X, and snapshot time derivatives Xdot, the following code learns a reduced model for a problem of the form dx / dt = c + Ax(t), then solves the reduced system for 0 ≤ t ≤ 1.
import numpy as np
import rom_operator_inference as roi
# Define a model of the form dx / dt = c + Ax(t).
>>> model = roi.InferredContinuousROM(modelform="cA")
# Fit the model to snapshot data X, the time derivatives Xdot,
# and the linear basis Vr by solving for the operators c_ and A_.
>>> model.fit(Vr, X, Xdot)
# Simulate the learned model over the time domain [0,1] with 100 timesteps.
>>> t = np.linspace(0, 1, 100)
>>> x_ROM = model.predict(X[:,0], t)
Examples
The examples/ folder contains scripts and notebooks that set up and run several examples:
examples/tutorial.ipynb: A walkthrough of a very simple heat equation example.examples/heat_1D.ipynb: A more complicated one-dimensional heat equation example [1].examples/data_driven_heat.ipynb: A purely data-driven example using data generated from a one-dimensional heat equation [4].
Contributors: Renee Swischuk, Shane McQuarrie, Elizabeth Qian, Boris Kramer, Karen Willcox.
References
These publications introduce, build on, or use Operator Inference. Entries are listed chronologically.
-
[1] Peherstorfer, B. and Willcox, K., Data-driven operator inference for non-intrusive projection-based model reduction. Computer Methods in Applied Mechanics and Engineering, Vol. 306, pp. 196-215, 2016. (Download)
BibTeX
@article{PW2016OperatorInference, title = {Data-driven operator inference for nonintrusive projection-based model reduction}, author = {Peherstorfer, B. and Willcox, K.}, journal = {Computer Methods in Applied Mechanics and Engineering}, volume = {306}, pages = {196--215}, year = {2016}, publisher = {Elsevier} } -
[2] Qian, E., Kramer, B., Marques, A., and Willcox, K., Transform & Learn: A data-driven approach to nonlinear model reduction. In the AIAA Aviation 2019 Forum & Exhibition, Dallas, TX, June 2019. Paper AIAA-2019-3707. (Download)
BibTeX
@inbook{QKMW2019TransformAndLearn, title = {Transform \& Learn: A data-driven approach to nonlinear model reduction}, author = {Qian, E. and Kramer, B. and Marques, A. N. and Willcox, K. E.}, booktitle = {AIAA Aviation 2019 Forum}, year = {2018}, address = {Dallas, TX}, note = {Paper AIAA-2019-3707}, doi = {10.2514/6.2019-3707}, URL = {https://arc.aiaa.org/doi/abs/10.2514/6.2019-3707}, eprint = {https://arc.aiaa.org/doi/pdf/10.2514/6.2019-3707} } -
[3] Swischuk, R., Mainini, L., Peherstorfer, B., and Willcox, K., Projection-based model reduction: Formulations for physics-based machine learning. Computers & Fluids, Vol. 179, pp. 704-717, 2019. (Download)
BibTeX
@article{SMPW2019PhysicsbasedML, title = {Projection-based model reduction: Formulations for physics-based machine learning}, author = {Swischuk, R. and Mainini, L. and Peherstorfer, B. and Willcox, K.}, journal = {Computers \& Fluids}, volume = {179}, pages = {704--717}, year = {2019}, publisher = {Elsevier} } -
[4] Swischuk, R., Physics-based machine learning and data-driven reduced-order modeling. Master's thesis, Massachusetts Institute of Technology, 2019. (Download)
BibTeX
@phdthesis{swischuk2019MLandDDROM, title = {Physics-based machine learning and data-driven reduced-order modeling}, author = {Swischuk, Renee}, year = {2019}, school = {Massachusetts Institute of Technology} } -
[5] Peherstorfer, B. Sampling low-dimensional Markovian dynamics for pre-asymptotically recovering reduced models from data with operator inference. arXiv:1908.11233. (Download)
BibTeX
@article{peherstorfer2019samplingMarkovian, title = {Sampling low-dimensional Markovian dynamics for pre-asymptotically recovering reduced models from data with operator inference}, author = {Peherstorfer, Benjamin}, journal = {arXiv preprint arXiv:1908.11233}, year = {2019} } -
[6] Swischuk, R., Kramer, B., Huang, C., and Willcox, K., Learning physics-based reduced-order models for a single-injector combustion process. AIAA Journal, Vol. 58:6, pp. 2658-2672, 2020. Also in Proceedings of 2020 AIAA SciTech Forum & Exhibition, Orlando FL, January, 2020. Paper AIAA-2020-1411. Also Oden Institute Report 19-13. (Download)
BibTeX
@article{SKHW2020ROMCombustion, title = {Learning physics-based reduced-order models for a single-injector combustion process}, author = {Swischuk, R. and Kramer, B. and Huang, C. and Willcox, K.}, journal = {AIAA Journal}, volume = {58}, number = {6}, pages = {2658--2672}, year = {2020}, publisher = {American Institute of Aeronautics and Astronautics} } -
[7] Qian, E., Kramer, B., Peherstorfer, B., and Willcox, K., Lift & Learn: Physics-informed machine learning for large-scale nonlinear dynamical systems. Physica D: Nonlinear Phenomena, Vol. 406, May 2020, 132401. (Download)
BibTeX
@article{QKPW2020LiftAndLearn, title = {Lift \& Learn: Physics-informed machine learning for large-scale nonlinear dynamical systems.}, author = {Qian, E. and Kramer, B. and Peherstorfer, B. and Willcox, K.}, journal = {Physica {D}: {N}onlinear {P}henomena}, volume = {406}, pages = {132401}, url = {https://doi.org/10.1016/j.physd.2020.132401}, year = {2020} } -
[8] Benner, P., Goyal, P., Kramer, B., Peherstorfer, B., and Willcox, K., Operator inference for non-intrusive model reduction of systems with non-polynomial nonlinear terms. arXiv:2002.09726. Also Oden Institute Report 20-04. (Download)
BibTeX
@article{BGKPW2020OpInfNonPoly, title = {Operator inference for non-intrusive model reduction of systems with non-polynomial nonlinear terms}, author = {Benner, P. and Goyal, P. and Kramer, B. and Peherstorfer, B. and Willcox, K.}, journal = {arXiv preprint arXiv:2002.09726}, year = {2020} } -
[9] Yıldız, S., Goyal, P., Benner, P., and Karasözen, B., Data-driven learning of reduced-order dynamics for a parametrized shallow water equation. arXiv:2007.14079. (Download)
BibTeX
@article{SGBK2020OpInfAffine, title = {Data-Driven Learning of Reduced-order Dynamics for a Parametrized Shallow Water Equation}, author = {Y{\i}ld{\i}z, S. and Goyal, P. and Benner, P. and Karas{\"o}zen, B.}, journal = {arXiv preprint arXiv:2007.14079}, year = {2020} } -
[10] McQuarrie, S. A., Huang, C., and Willcox, K., Data-driven reduced-order models via regularized operator inference for a single-injector combustion process. arXiv:2008.02862. (Download)
BibTeX
@article{MHW2020regOpInfCombustion, title = {Data-driven reduced-order models via regularized operator inference for a single-injector combustion process}, author = {McQuarrie, S. A. and Huang, C. and Willcox, K.}, journal = {arXiv preprint arXiv:2008.02862}, year = {2020} }
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rom_operator_inference-1.2.1.tar.gz.
File metadata
- Download URL: rom_operator_inference-1.2.1.tar.gz
- Upload date:
- Size: 44.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/0.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0.post20200814 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0ede1cfc6674bef6e156bc035e6c37ee03cc3457830243fcdf3e90a54df4cae
|
|
| MD5 |
a8ad773974d24311a50fa5f3ec17dc36
|
|
| BLAKE2b-256 |
80192da775f136094a4ffbec9bd1c05d02a97e7ede9c8e4367b5bd0312edba96
|
File details
Details for the file rom_operator_inference-1.2.1-py3-none-any.whl.
File metadata
- Download URL: rom_operator_inference-1.2.1-py3-none-any.whl
- Upload date:
- Size: 55.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/0.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0.post20200814 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.7.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85f1fb6b841bd0c183d17bfdacd5e4abdf8a1975a41fc83afeb115ad3c97da44
|
|
| MD5 |
385e6309e59980912c05c27b5cf87f1a
|
|
| BLAKE2b-256 |
c8819b78dc6d47e3bcd0f3cd23ece6acf6fa61c0efc25d07d46473fd64569c56
|