FbDMD

Derived module from dmdbase.py for forward/backward dmd.

FbDMD.atilde

Get the reduced Koopman operator A, called A tilde.

FbDMD.dmd_timesteps

Get the timesteps of the reconstructed states.

FbDMD.dynamics

Get the time evolution of each mode.

FbDMD.eigs

Get the eigenvalues of A tilde.

FbDMD.fit

Compute the Dynamic Modes Decomposition to the input data.

FbDMD.modes

Get the matrix containing the DMD modes, stored by column.

FbDMD.original_timesteps

Get the timesteps of the original snapshot.

FbDMD.plot_eigs

Plot the eigenvalues.

FbDMD.plot_modes_2D

Plot the DMD Modes.

FbDMD.plot_snapshots_2D

Plot the snapshots.

FbDMD.reconstructed_data

Get the reconstructed data.

FbDMD.snapshots

Get the original input data.

class FbDMD(svd_rank=0, tlsq_rank=0, exact=False, opt=False, rescale_mode=None, sorted_eigs=False)[source]

Bases: pydmd.dmd.DMD

Forward/backward DMD class.

Parameters
  • svd_rank (int or float) – the rank for the truncation; If 0, the method computes the optimal rank and uses it for truncation; if positive interger, the method uses the argument for the truncation; if float between 0 and 1, the rank is the number of the biggest singular values that are needed to reach the ‘energy’ specified by svd_rank; if -1, the method does not compute truncation.

  • tlsq_rank (int) – rank truncation computing Total Least Square. Default is 0, that means no truncation.

  • exact (bool) – flag to compute either exact DMD or projected DMD. Default is False.

  • opt (bool or int) – argument to control the computation of DMD modes amplitudes. See DMDBase. Default is False.

  • rescale_mode ({'auto'} or None or numpy.ndarray) – Scale Atilde as shown in 10.1016/j.jneumeth.2015.10.010 (section 2.4) before computing its eigendecomposition. None means no rescaling, ‘auto’ means automatic rescaling using singular values, otherwise the scaling factors.

  • sorted_eigs ({'real', 'abs'} or False) – Sort eigenvalues (and modes/dynamics accordingly) by magnitude if sorted_eigs=’abs’, by real part (and then by imaginary part to break ties) if sorted_eigs=’real’. Default: False.

Reference: Dawson et al. https://arxiv.org/abs/1507.02264