InterpDiscreteModel#
- class InterpDiscreteModel(operators, solver=None, InterpolatorClass=None)[source]#
Parametric discrete dynamical system model \(\qhat(\bfmu)_{j+1} = \fhat(\qhat(\bfmu)_{j}, \u_{j}; \bfmu)\) where the parametric dependence is handled by elementwise interpolation.
Here,
\(\qhat_j\in\RR^{r}\) is the \(j\)-th iteration of the model state,
\(\u_j\in\RR^{m}\) is the (optional) corresponding input, and
\(\bfmu\in\RR^{p}\in\RR^{p}\) is the parameter vector.
The structure of \(\fhat\) is specified through the
operators
attribute.- Parameters:
- operatorslist of
opinf.operators
objects Operators comprising the terms of the model. For this class, these must be interpolated parametric operators.
- InterpolatorClasstype or None
Class for the elementwise interpolation. Must obey the syntax
>>> interpolator = InterpolatorClass(data_points, data_values) >>> interpolator_evaluation = interpolator(new_data_point)
This can be, e.g., a class from
scipy.interpolate
. IfNone
(default), usescipy.interpolate.CubicSpline
for one-dimensional parameters andscipy.interpolate.LinearNDInterpolator
otherwise.
- operatorslist of
Properties:- A_#
opinf.operators.LinearOperator
(orNone
).
- B_#
opinf.operators.InputOperator
(orNone
).
- G_#
opinf.operators.CubicOperator
(orNone
).
- H_#
opinf.operators.QuadraticOperator
(orNone
).
- N_#
opinf.operators.StateInputOperator
(orNone
).
- c_#
opinf.operators.ConstantOperator
(orNone
).
- input_dimension#
Dimension \(m\) of the input (zero if there are no inputs).
- operators#
Operators comprising the terms of the model.
- parameter_dimension#
Dimension \(p\) of a parameter vector \(\bfmu\).
- solver#
Solver for the least-squares regression, see
opinf.lstsq
.
- state_dimension#
Dimension \(r\) of the state.
Methods:Make a copy of the model.
Construct a nonparametric model by fixing the parameter value.
Learn the model operators from data.
Construct a reduced-order model by taking the (Petrov-)Galerkin projection of each model operator.
Sum the state Jacobian of each model operator.
Load a serialized model from an HDF5 file, created previously from the
save()
method.Step forward the discrete dynamical system
niters
steps.Evaluate the least-squares solver and process the results.
Evaluate the right-hand side of the model by applying each operator and summing the results.
Serialize the model, saving it in HDF5 format.
Set the interpolator for the operator entries.