Dynamic mode decomposition


Dynamic mode decomposition is a dimensionality reduction algorithm developed by Peter Schmid in 2008.
Given a time series of data, DMD computes a set of modes each of which is associated with a fixed oscillation frequency and decay/growth rate. For linear systems in particular, these modes and frequencies are analogous to the normal modes of the system, but more generally, they are approximations of the modes and eigenvalues of the composition operator. Due to the intrinsic temporal behaviors associated with each mode, DMD differs from dimensionality reduction methods such as principal component analysis, which computes orthogonal modes that lack predetermined temporal behaviors. Because its modes are not orthogonal, DMD-based representations can be less parsimonious than those generated by PCA. However, they can also be more physically meaningful because each mode is associated with a damped sinusoidal behavior in time.

Overview

Dynamic mode decomposition was first introduced by Schmid as a numerical procedure for extracting dynamical features from flow data.
The data takes the form of a snapshot sequence
where is the -th snapshot of the flow field, and is a data matrix whose columns are the individual snapshots. The subscript and superscript denote the index of the snapshot in the first and last columns respectively. These snapshots are assumed to be related via a linear mapping that defines a linear dynamical system
that remains approximately the same over the duration of the sampling period. Written in matrix form, this implies that
where is the vector of residuals that accounts for behaviors that cannot be described completely by,,, and. Regardless of the approach, the output of DMD is the eigenvalues and eigenvectors of, which are referred to as the DMD eigenvalues and DMD modes respectively.

Algorithm

There are two methods for obtaining these eigenvalues and modes. The first is Arnoldi-like, which is useful for theoretical analysis due to its connection with Krylov methods. The second is a singular value decomposition based approach that is more robust to noise in the data and to numerical errors.

The Arnoldi approach

In fluids applications, the size of a snapshot,, is assumed to be much larger than the number of snapshots, so there are many equally valid choices of. The original DMD algorithm picks so that each of the snapshots in can be written as the linear combination of the snapshots in.
Because most of the snapshots appear in both data sets, this representation is error free for all snapshots except, which is written as
where is a set of coefficients DMD must identify and is the residual.
In total,
where is the companion matrix
The vector can be computed by solving a least squares problem, which minimizes the overall residual. In particular if we take the QR decomposition of, then.
In this form, DMD is a type of Arnoldi method, and therefore the eigenvalues of are approximations of the eigenvalues of. Furthermore, if is an eigenvector of, then is an approximate eigenvector of. The reason an eigendecomposition is performed on rather than is because is much smaller than, so the computational cost of DMD is determined by the number of snapshots rather than the size of a snapshot.

The SVD-based approach

Instead of computing the companion matrix, the SVD-based approach yields the matrix that is related to via a similarity transform. To do this, assume we have the SVD of. Then
Equivalent to the assumption made by the Arnoldi-based approach, we choose such that the snapshots in can be written as the linear superposition of the columns in, which is equivalent to requiring that they can be written as the superposition of POD modes. With this restriction, minimizing the residual requires that it is orthogonal to the POD basis. Then multiplying both sides of the equation above by yields, which can be manipulated to obtain
Because and are related via similarity transform, the eigenvalues of are the eigenvalues of, and if is an eigenvector of, then is an eigenvector of.
In summary, the SVD-based approach is as follows:
  1. Split the time series of data in into the two matrices and.
  2. Compute the SVD of.
  3. Form the matrix, and compute its eigenvalues and eigenvectors.
  4. The -th DMD eigenvalues is and -th DMD mode is the.
The advantage of the SVD-based approach over the Arnoldi-like approach is that noise in the data and numerical truncation issues can be compensated for by truncating the SVD of. As noted in accurately computing more than the first couple modes and eigenvalues can be difficult on experimental data sets without this truncation step.

Theoretical and algorithmic advancements

Since its inception in 2010, a considerable amount of work has focused on understanding and improving DMD. One of the first analyses of DMD by Rowley et al. established the connection between DMD and the Koopman operator, and helped to explain the output of DMD when applied to nonlinear systems. Since then, a number of modifications have been developed that either strengthen this connection further or enhance the robustness and applicability of the approach.
In addition to the algorithms listed here, similar application-specific techniques have been developed. For example, like DMD, Prony's method represents a signal as the superposition of damped sinusoids. In climate science, linear inverse modeling is also strongly connected with DMD. For a more comprehensive list, see Tu et al.

Examples

Trailing edge of a profile

The wake of an obstacle in the flow may develop a Kármán vortex street. The Fig.1 shows the shedding of a vortex behind the trailing edge of a profile. The DMD-analysis was applied to 90 sequential Entropy fields and yield an approximated eigenvalue-spectrum as depicted below. The analysis was applied to the numerical results, without referring to the governing equations. The profile is seen in white. The white arcs are the processor boundaries since the computation was performed on a parallel computer using different computational blocks.
Roughly a third of the spectrum was highly damped and is not shown. The dominant shedding mode is shown in the following pictures. The image to the left is the real part, the image to the right, the imaginary part of the eigenvector.
Again, the entropy-eigenvector is shown in this picture. The acoustic contents of the same mode is seen in the bottom half of the next plot. The top half corresponds to the entropy mode as above.

Synthetic example of a traveling pattern

The DMD analysis assumes a pattern of the form
where is any of the independent variables of the problem, but has to be selected in advance.
Take for example the pattern
With the time as the preselected exponential factor.
A sample is given in the following figure with, and. The left picture shows the pattern without, the right with noise added. The amplitude of the random noise is the same as that of the pattern.
A DMD analysis is performed with 21 synthetically generated fields using a time interval , limiting the analysis to.
The spectrum is symmetric and shows three almost undamped modes, whereas the other modes are heavily damped.
Their numerical values are respectively. The real one corresponds to the mean of the field, whereas corresponds to the imposed pattern with. Yielding a relative error of −1/1000. Increasing the noise to 10 times the signal value yields about the same error. The real and imaginary part of one of the latter two eigenmodes is depicted in the following figure.