class EDMDModel¶
- class deeptime.decomposition.EDMDModel(operator: ndarray, basis: Callable[[ndarray], ndarray], eigenvalues, modes)¶
The EDMD model which can be estimated from a
EDMD
estimator. It possesses the estimated operator as well as capabilities to project onto modes.- Parameters:
operator ((n, n) ndarray) – The estimated operator.
basis (callable) – The basis transform that was used.
eigenvalues ((n, ) ndarray) – Eigenvalues for the modes.
modes ((k, n) ndarray) – The EDMD modes.
See also
Attributes
Transforms the current state \(x_t\) to \(f(x_t)\).
Same as
operator
.The operator \(K\) so that \(\mathbb{E}[g(x_{t+\tau})] = K^\top \mathbb{E}[f(x_t)]\) in transformed bases.
Inverse of the operator \(K\), i.e., \(K^{-1}\).
The dimension of data after propagation by \(K\).
Transforms the future state \(x_{t+\tau}\) to \(g(x_{t+\tau})\).
Methods
backward
(data[, propagate])Maps data backward in time.
copy
()Makes a deep copy of this model.
forward
(data[, propagate])Maps data forward in time.
get_params
([deep])Get the parameters.
set_params
(**params)Set the parameters of this estimator.
transform
(data, **kw)Transforms the data by first applying the basis and then the estimated modes, i.e.,
- __call__(*args, **kwargs)¶
Call self as a function.
- backward(data: ndarray, propagate=True)¶
Maps data backward in time.
- Parameters:
data ((T, n) ndarray) – Input data
propagate (bool, default=True) – Whether to apply the Koopman operator to the featurized data.
- Returns:
mapped_data – Mapped data.
- Return type:
(T, m) ndarray
- copy() Model ¶
Makes a deep copy of this model.
- Returns:
A new copy of this model.
- Return type:
copy
- forward(data: ndarray, propagate=True)¶
Maps data forward in time.
- Parameters:
data ((T, n) ndarray) – Input data
propagate (bool, default=True) – Whether to apply the Koopman operator to the featurized data.
- Returns:
mapped_data – Mapped data.
- Return type:
(T, m) ndarray
- get_params(deep=False)¶
Get the parameters.
- Returns:
params – Parameter names mapped to their values.
- Return type:
mapping of string to any
- set_params(**params)¶
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form
<component>__<parameter>
so that it’s possible to update each component of a nested object.- Parameters:
**params (dict) – Estimator parameters.
- Returns:
self – Estimator instance.
- Return type:
object
- transform(data: ndarray, **kw)¶
Transforms the data by first applying the basis and then the estimated modes, i.e.,
\[X \mapsto \Psi(X)\varphi\]where \(X\) is the input data, \(\Psi\) the basis transform, and \(\varphi\) the Koopman operator’s
- Parameters:
data ((T, n) ndarray) – Input data
- Returns:
transformed – The forward transform of the input data.
- Return type:
(T, n) ndarray
- property instantaneous_obs: Callable[[ndarray], ndarray]¶
Transforms the current state \(x_t\) to \(f(x_t)\). Defaults to f(x) = x.
- property operator: ndarray¶
The operator \(K\) so that \(\mathbb{E}[g(x_{t+\tau})] = K^\top \mathbb{E}[f(x_t)]\) in transformed bases.
- property operator_inverse: ndarray¶
Inverse of the operator \(K\), i.e., \(K^{-1}\). Potentially pseudo-inverse instead of true inverse.
- property output_dimension¶
The dimension of data after propagation by \(K\).
- property timelagged_obs: Callable[[ndarray], ndarray]¶
Transforms the future state \(x_{t+\tau}\) to \(g(x_{t+\tau})\). Defaults to f(x) = x.