DiscreteModel#

class DiscreteModel(operators, solver=None)[source]#

Nonparametric discrete dynamical system model \(\qhat_{j+1} = \fhat(\qhat_{j}, \u_{j})\).

Here,

  • \(\qhat_j\in\RR^{r}\) is the \(j\)-th iteration of the model state, and

  • \(\u_j\in\RR^{m}\) is the (optional) corresponding input.

The structure of \(\fhat\) is specified through the operators attribute.

Parameters:
operatorslist of opinf.operators objects

Operators comprising the terms of the model.

solveropinf.lstsq object or float > 0 or None

Solver for the least-squares regression. Defaults:

Properties:
A_#

opinf.operators.LinearOperator (or None).

B_#

opinf.operators.InputOperator (or None).

G_#

opinf.operators.CubicOperator (or None).

H_#

opinf.operators.QuadraticOperator (or None).

N_#

opinf.operators.StateInputOperator (or None).

c_#

opinf.operators.ConstantOperator (or None).

input_dimension#

Dimension \(m\) of the input (zero if there are no inputs).

operator_matrix#

\(r \times d(r, m)\) operator matrix, e.g., \(\Ohat = [~\chat~~\Ahat~~\Hhat~~\Bhat~]\).

This matrix does not includes the entries of any operators whose entries are known a priori.

operators#

Operators comprising the terms of the model.

solver#

Solver for the least-squares regression, see opinf.lstsq.

state_dimension#

Dimension \(r\) of the state.

Methods:

copy

Make a copy of the model.

fit

Learn the model operators from data.

galerkin

Construct a reduced-order model by taking the (Petrov-)Galerkin projection of each model operator.

jacobian

Sum the state Jacobian of each model operator.

load

Load a serialized model from an HDF5 file, created previously from the save() method.

predict

Step forward the discrete dynamical system niters steps.

refit

Solve the Operator Inference regression using the data from the last fit() call, then extract the inferred operators.

rhs

Evaluate the right-hand side of the model by applying each operator and summing the results.

save

Serialize the model, saving it in HDF5 format.

stack_trajectories

Translate a collection of state trajectories and (optionally) inputs to arrays that are appropriate arguments for fit().