Skip to main content
Log in

Spatio-Temporal Koopman Decomposition

  • Published:
Journal of Nonlinear Science Aims and scope Submit manuscript

Abstract

This paper deals with a new purely data-driven method, called the spatio-temporal Koopman decomposition, to approximate spatio-temporal data as a linear combination of (possibly growing or decaying exponentially) standing or traveling waves. The method combines (i) either standard singular value decomposition (SVD) or higher-order SVD and (ii) either standard dynamic mode decomposition (DMD) or an extension of this method by the authors, called higher-order DMD. In particular, for periodic or quasiperiodic attractors, the method gives the spatio-temporal pattern as a superposition of standing and/or traveling waves, which are identified in an efficient and robust way. Such superposition may give the whole pattern as a modulated, periodic or quasiperiodic, standing or traveling wave. The method is illustrated in some simple toy-model dynamics, and its performance is tested in the identification of standing and traveling waves in the Ginzburg–Landau equation and of azimuthal waves in a rotating spherical shell with thermal convection.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

Notes

  1. https://es.mathworks.com/matlabcentral/fileexchange/25514-tp-tool/content/tptool/array/hosvd.m.

References

  • Andersson, N., Eriksson, L.-E.: A novel solver acceleration technique based on dynamic mode decomposition. In: 6th European Conference on Computational Fluid Dynamics (ECFD VI), Barcelona, Spain, pp. 4832–4851, 20–25 July (2014)

  • Aranson, I.S., Kramer, L.: The world of the complex Ginzburg–Landau equation. Rev. Mod. Phys. 74, 100–142 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  • Arbabi, H., Mezić, I.: Ergodic theory, dynamic mode decomposition and computation of spectral properties of the Koopman operator (2016). arXiv preprint arXiv:1611.06664

  • Benito, N., Arias, J.R., Velazquez, A., Vega, J.M.: Real time performance improvement of engineering control units via higher order singular value decomposition: application to a SI engine. Control Eng. Pract. 19, 1315–1327 (2011)

    Article  Google Scholar 

  • Blackburn, H.M., Marques, F., Lopez, J.M.: Symmetry breaking of two-dimensional time-periodic wakes. J. Fluid Mech. 522, 395–411 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  • Brunton, S.L., Brunton, B.W., Proctor, J.L., Kaiser, E., Kutz, J.N.: Chaos as an intermittently forced linear system. Nat. Commun. 8, 19 (2017)

    Article  Google Scholar 

  • Cebeci, T.: Convective Heat Transfer. Springer, Berlin (2002)

    Book  MATH  Google Scholar 

  • Chandrasekhar, S.: Hydrodynamic and Hydromagnetic Stability. Oxford University Press, Oxford (1961)

    MATH  Google Scholar 

  • Charbonneau, P.: Solar and Stellar Dynamos. Springer, Berlin (2013)

    Book  Google Scholar 

  • Cross, M., Hohenberg, P.: Pattern formation outside of equilibrium. Rev. Mod. Phys. 65, 851–1112 (1993)

    Article  MATH  Google Scholar 

  • de Lathauwer, L., de Moor, B., Vandewalle, J.: A multilinear singular value decomposition. SIAM J. Matrix Anal. Appl. 21, 1253–1278 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  • de Lucas, S., Vega, J.M., Velazquez, A.: Aeronautic conceptual design optimization method based on high order singular value decomposition. AIAA J. 49, 2713–2725 (2011)

    Article  Google Scholar 

  • Garcia, F., Net, M., Garcia-Archilla, B., Sánchez, J.: A comparison of high-order time integrators for thermal convection in rotating spherical shells. J. Comput. Phys. 229, 7997–8010 (2010)

    Article  MATH  Google Scholar 

  • Garcia, F., Sánchez, J., Net, M.: Numerical simulations of thermal convection in rotating spherical shells under laboratory conditions. Phys. Earth Planet. Inter. 230, 28–44 (2014)

    Article  Google Scholar 

  • Giannakis, D., Slawinska, J., Zhao, Z.: Spatio-temporal feature extraction with data-driven Koopman operators. J. Mach. Learn. Res. Workshop Conf. Proc. 44, 103–115 (2015)

    Google Scholar 

  • Golub, G.H., van Loan, G.T.: Matrix Computations. John Hopkins University Press, Baltimore (1996)

    MATH  Google Scholar 

  • Haragus, M., Iooss, G.: Local Bifurcations, Center Manifolds, and Normal Forms in Infinite Dimensional Dynamical Systems. Springer, Berlin (2010)

    MATH  Google Scholar 

  • Kolda, T.G., Bader, B.W.: Tensor decompositions and applications. SIAM Rev. 51, 455–500 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  • Koopman, B.: Hamiltonian systems and transformations in Hilbert space. Proc. Natl. Acad. Sci. USA 17, 315–318 (1931)

    Article  MATH  Google Scholar 

  • Le Clainche, S., Sastre, F., Vega, J.M., Velazquez, A.: Higher order dynamic mode decomposition of noisy experimental data: the flow structure of a zero-net-mass-flux jet. In: Proceedings of 47th AIAA Fluid Dynamics Conference, AIAA paper 2017–3304 (2017)

  • Le Clainche, S., Vega, J.M.: Higher order dynamic mode decomposition. SIAM J. Appl. Dyn. Syst. 16(2), 882–925 (2017)

    Article  MathSciNet  MATH  Google Scholar 

  • Le Clainche, S., Vega, J.M.: Higher order dynamic mode decomposition to identify and extrapolate flow patterns. Phys. Fluids 29(8), 084102 (2017)

    Article  Google Scholar 

  • Le Clainche, S., Vega, J.M., Soria, J.: Higher order dynamic mode decomposition of noisy experimental data: the flow structure of a zero-net-mass-flux jet. Exp. Therm. Fluid Sci. 88, 336–353 (2017)

    Article  Google Scholar 

  • Lorente, L.S., Vega, J.M., Velazquez, A.: Generation of aerodynamics databases using high-order singular value decomposition. J. Aircraft 45, 1779–1788 (2008)

    Article  Google Scholar 

  • Marques, F., Meseguer, A., Lopez, J.M., Pacheco, J.R., Lopez, J.M.: Bifurcations with imperfect SO(2) symmetry and pinning of rotating waves. Proc. R. Soc. A 469, 20120348 (2013)

    Article  MathSciNet  Google Scholar 

  • Mellibovsky, F., Eckhardt, B.: Takens–Bogdanov bifurcation of travelling-wave solutions in pipe flow. J. Fluid Mech. 670, 96–129 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  • Mezić, I.: Spectral properties of dynamical systems, model reduction and decompositions. Nonlinear Dyn. 41(1), 309–325 (2005)

    MathSciNet  MATH  Google Scholar 

  • Mezić, I.: Analysis of fluid flows via spectral properties of the Koopman operator. Ann. Rev. Fluid Mech. 45, 357–378 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  • Mezić, I., Banaszuk, A.: Comparison of systems with complex behavior. Physica D 197, 101–133 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  • Omberg, L., Golub, G.H., Alter, O.: A tensor higher-order singular value decomposition for integrative analysis of DNA microarray data from different studies. Proc. Nat. Acad. USA 104, 18371–18376 (2007)

    Article  Google Scholar 

  • Press, W.H., Teukolsky, S.A., Vetterling, W.T., Flannery, B.P.: Numerical Recipes in C. Cambridge Univeristy Press, Cambridge (1988)

    MATH  Google Scholar 

  • Rowley, C.W., Mezić, I., Bagheri, S., Schlatter, P., Henningson, D.S.: Spectral analysis of nonlinear flows. J. Fluid Mech. 641, 115–127 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  • Sanchez, J., Net, M., Simo, C.: Computation of invariant tori by Newton–Krylov methods in large-scale dissipative systems. Physica D 239, 123–133 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  • Sánchez, J., García, F., Net, M.: Computation of azimuthal waves and their stability in thermal convection in rotating spherical shells with application to the study of a double-Hopf bifurcation. Phys. Rev. E 87(033014), 1–11 (2013)

    Google Scholar 

  • Savas, B., Eden, L.: Handwritten digit classification using higher order singular value decomposition. Pattern Recognit. 40, 993–1003 (2007)

    Article  MATH  Google Scholar 

  • Schmid, P.J.: Dynamic mode decomposition of numerical and experimental data. J. Fluid Mech. 656, 5–28 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  • Sharma, A.S., Mezić, I., McKeon, B.J.: Correspondence between Koopman mode decomposition, resolvent mode decomposition, and invariant solutions of the Navier–Stokes equations. Phys. Rev. Fluids 1, 032402 (2016)

    Article  Google Scholar 

  • Stewart, G.W.: Error and perturbation bounds for subspaces associated with certain eigenvalue problems. SIAM Rev. 15, 727–764 (1973)

    Article  MathSciNet  MATH  Google Scholar 

  • Susuki, Y., Mezić, I.: A prony approximation of Koopman mode decomposition. In: 2015 IEEE 54th Annual Conference Decision and Control (CDC), pp. 7022–7027. IEEE (2015)

  • Takens, F.: Detecting strange attractors in turbulence. In: Rand, D.A., Young, L.-S. (eds.) Lecture Notes in Mathematics, pp. 366–381. Springer, Berlin (1981)

    Google Scholar 

  • Tu, J.H., Rowley, C.W., Luchtenburg, D.M., Brunton, S.L., Kutz, J.N.: On dynamic mode decomposition: theory and applications (2013). arXiv preprint: arXiv:1312.0041

  • Tucker, L.R.: Some mathematical notes on three-mode factor analysis. Psychometrika 3, 279–311 (1966)

    Article  MathSciNet  Google Scholar 

  • Wall, M.E., Rechtsteiner, A., Rocha, L.M.: Singular value decomposition and principal component analysis. In: Berrar, D.P., Dubitzky, W., Granzowr, M. (eds.) A Practical Approach to Microarray Data Analysis, pp. 91–109. Kluwer, Norwell (2003)

    Chapter  Google Scholar 

Download references

Acknowledgements

This research was partially supported by the Spanish Ministry of Economy and Competitiveness, under Grant TRA2016-75075-R. The authors are also indebted to the anonymous referees for some useful comments on an earlier version of the manuscript that helped to improve the presentation.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to José M. Vega.

Additional information

Communicated by Paul Newton.

Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (pptx 109513 KB)

Appendices

Appendix A. HODMD: The DMD-d Algorithm

The aim is to obtain the reduced spatial and temporal DMD expansions appearing in (2.6)–(2.7), (4.7)–(4.8), and (4.19)–(4.21), whose computation is completely similar. Thus, we only consider the temporal expansion (2.6), which can be written in vector form as

$$\begin{aligned}&\hat{\varvec{t}}_{k}\simeq \sum _{n=1}^{N}\hat{a}_{n} \hat{\varvec{q}}_{n}\hbox {e}^{(\delta _{n}+\small {\hbox {i}}\omega _{n})t_k} \quad \text {for }r=1,\ldots ,R'\text { and }k=1,\ldots ,K, \end{aligned}$$
(A.1)

where the index k denotes the involved equispaced values of time,

$$\begin{aligned} t_k=(k-1)\Delta t, \end{aligned}$$
(A.2)

and notation has been simplified by omitting the superscript t appearing in (2.6), (4.7), and (4.19). By construction, the reduced snapshots \((\hat{\varvec{t}}_{k})\) are mutually orthogonal and thus linearly independent. The computation is to be performed using the reduced snapshot matrix

$$\begin{aligned} \widehat{\varvec{T}}_1^K=[\hat{\varvec{t}}_1,\ldots ,\hat{\varvec{t}}_K]. \end{aligned}$$
(A.3)

Standard DMD (Schmid 2010) relies on the assumption

$$\begin{aligned} \widehat{\varvec{T}}_2^K\simeq \widehat{\varvec{R}}\, \widehat{\varvec{T}}_1^{K-1}\quad \text {or }\quad \hat{\varvec{t}}_{k+1}\simeq \widehat{\varvec{R}}\,\hat{\varvec{t}}_k \text { for }k=1,\ldots ,K-1, \end{aligned}$$
(A.4)

for a certain linear operator \(\widehat{\varvec{R}}\) (Koopman operator), which is a \(R'\times R'\) matrix. HODMD with index \(d\ge 1\), instead, is based on the more general DMD-d assumption

$$\begin{aligned} \widetilde{\varvec{T}}_2^{K-d}\simeq \widetilde{\varvec{R}}\, \widetilde{\varvec{T}}_1^{K-d-1} \quad \text {or }\quad \tilde{\varvec{t}}_{k+1}\simeq \widetilde{\varvec{R}}\,\tilde{\varvec{t}}_k \text { for }k=1,\ldots ,K-d, \end{aligned}$$
(A.5)

for some \((R'd\times R'd\))-modified Koopman matrix \(\widetilde{\varvec{R}}\), where the modified snapshots and the modified snapshot matrix are defined as

$$\begin{aligned}&\tilde{\varvec{t}}_k=\left[ \begin{array}{c}\hat{\varvec{t}}_{k}\\ \hat{\varvec{t}}_{k+1}\\ \ldots \\ \hat{\varvec{t}}_{k+d-2} \\ \hat{\varvec{t}}_{k+d-1} \end{array}\right] ,\quad \widetilde{\varvec{T}}_{1}^{K-d}= [\tilde{\varvec{t}}_1,\ldots ,\tilde{\varvec{t}}_{k-d}] = \left[ \begin{array}{c}\widehat{\varvec{T}}_{1}^{K-d}\\ \widehat{\varvec{T}}_{2}^{K-d+1}\\ \ldots \\ \widehat{\varvec{T}}_{d-1}^{K-1} \\ \widehat{\varvec{T}}_{d}^{K} \end{array}\right] . \end{aligned}$$
(A.6)

Note that HODMD includes standard DMD as a particular case because (A.5) reduces to (A.4) for \(d=1\). As further discussed in Le Clainche and Vega (2017) by means of several counterexamples, if (A.4) holds, then the reduced snapshots are readily seen to satisfy (A.1), but the converse is generally untrue, namely not all expansions of the form (A.1) can be obtained using the assumption (A.4). Specifically, standard DMD cannot give the DMD expansion when the number of terms appearing in this expansion, N, is larger \(R'\). Instead, the expansion (A.1) can always be obtained from the snapshots under the DMD-d assumption (A.5) with appropriate d. For the particular case in which (A.1) and (A.5) are both exact, the equivalence of these two assumptions has been established in Le Clainche and Vega (2017, Appendix A, theorem D).

On the other hand, the modified Koopman matrix \(\widetilde{\varvec{R}}\) will not be calculated below because (A.5) is further dimension-reduced to take advantage of the redundancies that are present among the modified snapshots. Such redundancies are expected because of the correlations among the snapshots and the delayed snapshots.

With the above in mind, the DMD-d algorithm proceeds in three steps:

  • Step 1: Dimension reduction As anticipated, a new dimension reduction (in addition to that already performed in Sects. 2 and 4) is convenient. To this end, we apply truncated SVD to the modified snapshot matrix, defined in (A.6), which yields

    $$\begin{aligned} \widetilde{\varvec{T}}_{1}^{K-d}\simeq \widetilde{\varvec{U}}\,\widetilde{\varvec{\Sigma }}\,\widetilde{\varvec{V}}^\top \equiv \widetilde{\varvec{U}}\,\varvec{W}_1^{K-d}, \quad \text {with }\varvec{W}_1^{K-d}=\widetilde{\varvec{\Sigma }}\,\widetilde{\varvec{V}}^\top , \end{aligned}$$
    (A.7)

    where the \(R'd\times \widetilde{R}'\)-matrix \(\widetilde{\varvec{U}}\) and the \((K-d)\times \widetilde{R}'\)-matrix \(\widetilde{\varvec{V}}\) are such that \(\widetilde{\varvec{U}}^\top \widetilde{\varvec{U}}=\widetilde{\varvec{V}}^\top \widetilde{\varvec{V}}=\) the \(\widetilde{R}'\times \widetilde{R}'\)-unit matrix; \(\widetilde{\varvec{\Sigma }}\) is the \(\widetilde{R}'\times \widetilde{R}'\)-diagonal matrix containing the retained singular values \(\tilde{\sigma }_1,\tilde{\sigma }_2,\ldots ,\tilde{\sigma }_{\widetilde{R}'}\), which are sorted in decreasing order). The number of retained modes, \(\widetilde{R}'\), is chosen through the standard SVD-error estimate,

    $$\begin{aligned} \frac{\tilde{\sigma }_{\widetilde{R}'+1}^2+\cdots + \tilde{\sigma }_{\widetilde{R}}^2}{\tilde{\sigma }_{1}^2+\cdots +\tilde{\sigma }_{\widetilde{R}}^2}\le \varepsilon _1, \quad \text {with }\,\, \widetilde{R}=\min \{R' d,K-d\}, \end{aligned}$$
    (A.8)

    where, consistently with the primary dimension reduction already performed in Sects. 2 and 4, the threshold \(\varepsilon _1\) coincides its counterparts in the various applications of HODMD, in Eqs. (2.5), (4.5), (4.17), and (4.28).

    To complete the step, we note that the columns of the matrices \(\tilde{\varvec{T}}_1^{K-d}\) and \(\varvec{W}_1^{K-d}\) appearing in (A.7) are such that

    $$\begin{aligned} \tilde{\varvec{t}}_k=\tilde{\varvec{U}}\varvec{w}_k, \end{aligned}$$
    (A.9)

    pre-multiply (A.5) by \(\varvec{U}^\top \), and invoke (A.7), which leads to

    $$\begin{aligned} \varvec{W}_2^{K-d}\simeq \varvec{R}\,\varvec{W}_1^{K-d-1},\quad \text {or }\,\, \varvec{w}_{k+1}\simeq \varvec{R}\,\varvec{w}_{k}. \end{aligned}$$
    (A.10)

    Here, the involved Koopman matrices \(\varvec{R}\) and \(\tilde{\varvec{R}}\) are related to each other as \(\varvec{R}=\widetilde{\varvec{U}}^\top \widetilde{\varvec{R}} \widetilde{\varvec{U}}\), but this equation will not be needed below.

  • Step 2: Computation of the DMD modes, growth rates, and frequencies The dimension-reduced Koopman matrix \(\varvec{R}\) appearing in (A.10) is calculated via de pseudoinverse as follows. Standard SVD (no truncation) applied to the \(\tilde{R}'\times (K-d)\) matrix \(\varvec{W}_1^{K-d-1}\) yields

    $$\begin{aligned} \varvec{W}_1^{K-d-1}=\varvec{U}\varvec{\Sigma }\varvec{V}^\top , \end{aligned}$$
    (A.11)

    where the \(\widetilde{R}'\times \widetilde{R}'\) non-singular matrices \(\varvec{U}\) and \(\varvec{\Sigma }\) and the \((K-d)\times \widetilde{R}'\) rectangular matrix \(\varvec{V}\) are such that \(\varvec{U}\,\varvec{U}^\top =\varvec{U}^\top \varvec{U}=\varvec{V}^\top \varvec{V}=\) the \(\widetilde{R}'\times \widetilde{R}'\) unit matrix and \(\varvec{\Sigma }\) is diagonal. Thus, substituting (A.11) into (A.10), pre-multiplying the resulting equation by \(\varvec{U}^\top \), and postmultiplying by \(\varvec{V}\varvec{\Sigma }^{-1}\) yield

    $$\begin{aligned} \varvec{R}=\varvec{U}^\top \varvec{W}_2^{K-d}\varvec{V}\varvec{\Sigma }^{-1}. \end{aligned}$$
    (A.12)

    Once the matrix \(\varvec{R}\) has been calculated, (A.10) implies that the dimension-reduced snapshots \(\varvec{w}_k\) can be written as

    $$\begin{aligned}&\varvec{w}_{k}\simeq \sum _{n=1}^{\tilde{R}'} a_{n}\varvec{p}_n\mu _n^{k-1}, \end{aligned}$$
    (A.13)

    where \(\varvec{p}_n\) are the eigenvectors of \(\tilde{R}'\times \tilde{R}'\) matrix \(\varvec{R}\), \(\mu _n\) are the associated eigenvalues, and the amplitudes \(a_n\) remain undetermined. Substituting this into (A.9) yields the following expression for the modified snapshots appearing in (A.6)

    $$\begin{aligned} \tilde{\varvec{t}}_{k}\simeq \sum _{n=1}^{\tilde{R}'} a_{n}\tilde{\varvec{q}}_n\mu _n^{k-1},\quad \text {with }\tilde{\varvec{q}}_n=\tilde{\varvec{U}}\varvec{p}_n. \end{aligned}$$
    (A.14)

    According to (A.6), the first \(R'\) components of \(\tilde{\varvec{t}}_k\) give the reduced snapshots \(\hat{\varvec{t}}_k\), which can thus be written as

    $$\begin{aligned} \hat{\varvec{t}}_{k}\simeq \sum _{n=1}^{\tilde{R}'} a_{n}\hat{\varvec{q}}_n\mu _n^{k-1}, \end{aligned}$$
    (A.15)

    where, in principle, the reduced modes \(\hat{\varvec{q}}_n\) collect the first \(R'\) components of \(\tilde{\varvec{q}}_n\). However, for convenience, the reduced modes are rescaled as unit vectors, such that

    $$\begin{aligned} \Vert \hat{\varvec{q}}_n\Vert _2=1\quad \text {for }n=1,\ldots ,R', \end{aligned}$$
    (A.16)

    which modifies the (still undetermined) amplitudes \(a_n\). Invoking the expression (A.2) for the considered values of time, (A.15) readily yields the required DMD expansion (A.1), with

    $$\begin{aligned} \delta _n+\hbox {i}\omega _n=\frac{1}{\Delta t}\log \mu _n. \end{aligned}$$
    (A.17)

    which completes the step.

  • Step 3: Computation of the mode amplitudes The mode amplitudes are calculated using (A.15), which is highly overdetermined vector equation if \(K\gg R'\) (the usual case). Here, it is solved by least squares fitting via approximation via the pseudoinverse, namely by first rewriting (A.15) in matrix form as

    $$\begin{aligned} \varvec{L}\,\varvec{a}=\varvec{b}, \end{aligned}$$
    (A.18)

    where \(\varvec{a}=[a_1,\ldots ,a_n]^\top \) is the unknown amplitude vector and the \((R' K\times R')\)-matrix \(\varvec{L}\) and the forcing term \(\varvec{b}\) are readily calculated from (A.15). The pseudoinverse of \(\varvec{L}\) is calculated by applying standard SVD (no truncation) to the matrix \(\varvec{L}\), as

    $$\begin{aligned} \varvec{L}= \varvec{U}_1\varvec{\Sigma }_1\varvec{V}_1^\top , \end{aligned}$$
    (A.19)

    with the \((R'K\times R')\)-matrix \(\varvec{U}_1\) and the \(R'\times R'\)-matrices \(\varvec{\Sigma }_1\) and \(\varvec{V}_1\) such that

    $$\begin{aligned} \varvec{U}_1^\top \varvec{U}_1=\varvec{V}_1^\top \varvec{V}_1=\varvec{V}_1\,\varvec{V}_1^\top = \text {the}\,\, R'\times R' \text { unit matrix}. \end{aligned}$$
    (A.20)

    Substituting (A.19) into (A.18), pre-multiplying the resulting equation by \(\varvec{V}_1\varvec{\Sigma }_1^{-1}\varvec{U}_1^\top \), and invoking (A.20) yield

    $$\begin{aligned} \varvec{a}=\varvec{V}_1\varvec{\Sigma }^{-1}\varvec{U}_1^\top \,\varvec{b}. \end{aligned}$$
    (A.21)

    As a final step, the DMD modes can be reordered sorting the absolute value of the mode amplitudes in decreasing order, and a smaller number of modes, \(N\le R'\), is selected imposing that

    $$\begin{aligned} |a_{N+1}/a_1|<\varepsilon _2, \end{aligned}$$
    (A.22)

    for some tunable (small) threshold \(\varepsilon _2\). This completes the derivation of the DMD expansion (A.1).

As described above, the DMD-d algorithm involves the following tunable parameters: the index d and the thresholds \(\varepsilon _1\) and \(\varepsilon _2\), appearing in (A.8) and (A.22). The parameters \(\varepsilon _1\) and \(\varepsilon _2\) coincide with their counterparts selected in Sects. 2 and 4. Concerning the index d, when \(d>1\) because the number of involved frequencies is larger than the reduced dimension \(R'\), the size of the modified snapshot matrix defined in (A.6) is \(R'd\times (K-d)\), meaning that the number of terms appearing (A.14) (which coincides with the maximum number of terms appearing in the DMD expansion (A.1)) is such that

$$\begin{aligned} \tilde{R}'\le \min \{R'd,K-d\}. \end{aligned}$$
(A.23)

Thus, d must be neither too small nor too large. Usually, the optimal number of d is very easily found because the results are fairly insensitive to d in a wide interval around d. It must be also noted that, for a given sampled timespan, d scales with the considered number of snapshots, namely, e.g., d must be doubled when K is doubled.

Appendix B. Higher-Order Singular Value Decomposition

The description below is made for a P-th order tensor \(\varvec{T}\), whose components depend on P indexes, as

$$\begin{aligned} T_{j_1j_2\dots j_P}\quad \text {for }\,j_p=1,\ldots ,J_P\,\text { and }\,p=1,\ldots ,P. \end{aligned}$$
(B.1)

For \(P=2\), the tensor is a matrix and can be treated via standard SVD, which reads in this context as (Golub and van Loan 1996)

$$\begin{aligned} T_{j_1 j_2}=\sum _{r=1}^R\sigma _r U_{j_1r}V_{j_2r}, \end{aligned}$$
(B.2)

where R is the rank of the matrix. Higher-order tensors require more general decompositions (Kolda and Bader 2009). In particular, the HOSVD was introduced by Tucker (1966) and has been more recently popularized by de Lathauwer et al. (2000). HOSVD is very robust and computationally efficient decomposition, which has been used in a number of applications, including genomics (Omberg et al. 2007), pattern recognition (Savas and Eden 2007), aerodynamics (Lorente et al. 2008), dynamic control (Benito et al. 2011), and aeronautic design (de Lucas et al. 2011). In HOSVD, the tensor (B.1) is decomposed as

$$\begin{aligned} T_{j_1j_2\ldots j_P}=\sum _{j_1'=1}^{R_1}\sum _{j_2'=1}^{R_2}\cdots \sum _{j_P'=1}^{R_P} S_{j_1'j_2'\ldots j_P'}U^{(1)}_{j_1j_1'}U_{j_2j'_2}^{(2)}\dots U_{j_Pj'_P}^{(P)}, \end{aligned}$$
(B.3)

where, for \(p=1,\ldots ,P\),

$$\begin{aligned} R_p\le min\{J_p,H_p\},\quad \text {with }\,\,H_p=J_1\dots J_{p-1}J_{p+1}\dots J_P, \end{aligned}$$
(B.4)

is defined below. Note that S is another P-th order tensor, known as the core tensor, and the columns of the matrices \(U_{j_pj'_p}^{(p)}\) for \(p=1,\ldots ,P\), are known as the modes of the decomposition. The modes are the proper orthogonal decomposition (POD) modes of the associated tensor fibers (namely, the vectors that are obtained fixing all but one of the indexes of the tensor, see Fig. 16). In other words, for each index \(j_p\), the remaining indexes can be unfolded into a single index, which gives a matrix of order \(J_p\times H_p\), with \(H_p=J_1\dots J_{p-1}J_{p+1}\dots J_P\), whose rank is precisely the maximum index \(R_P\) appearing in (B.3). Applying standard SVD to this matrix, the resulting left-SVD modes are precisely the associated HOSVD modes appearing in (B.3) along this direction, \(U^{(p)}\). The singular values calculated via standard SVD are sorted in a decreasing order and denoted as

$$\begin{aligned} \sigma ^{(p)}_1\ge \ldots \ge \sigma ^{(p)}_{J_p}\ge 0\quad \text {for }p=1,\ldots ,P. \end{aligned}$$
(B.5)

Noting that the HOSVD-modes calculated that way are orthonormal with the Euclidean inner product, the core tensor is readily calculated in terms of the exact tensor and the modes as

$$\begin{aligned} S_{j_1'\ldots j_n'}= \sum _{j_1=1}^{J_1}\cdots \sum _{j_P=1}^{J_P}T_{j_1\ldots j_P}U_{j_1j'_1}^{(1)}\dots U_{j_Pj'_P}^{(P)}. \end{aligned}$$
(B.6)

The core tensor, the HOSVD modes, and the singular values along the various tensor fibers are very efficiently calculated using the MATLAB routine ‘hosvd’ (provided in the file exchange of MATLAB communityFootnote 1 as toolbox TP Tool), which is able to treat tensors of any order. It must be noted that this is a strict extension of SVD since, for matrices, it reduces to the standard SVD (B.2). In other words, if \(P=2\), then the core tensor (which is a matrix) is diagonal, and singular values along the two directions exactly coincide.

Fig. 16
figure 16

The fibers of a third-order tensor

Now, as in standard SVD, when the elements of the tensor \(\varvec{T}\) show redundancies along the various tensor directions, truncation of (B.3), as

$$\begin{aligned} T_{j_1j_2\ldots j_P}^\text {trunc}=\sum _{j_1'=1}^{J'_1}\sum _{j_2'=1}^{J'_2}\cdots \sum _{j_p'=1}^{J'_P} S_{j_1'j_2'\ldots j_n'}U^{(1)}_{j_1j_1'}U_{j_2j'_2}^{(2)}\dots U_{j_Pj'_P}^{(P)}, \end{aligned}$$
(B.7)

with

$$\begin{aligned} J'_p\le R_p\,\text { for }\,p=1,\ldots ,P, \end{aligned}$$
(B.8)

may still give a good approximation. It turns out that the relative RMS error of the truncated approximation is bounded as (Kolda and Bader 2009)

$$\begin{aligned} \text {RRMSE}\equiv \frac{\Vert \varvec{T}-\varvec{T}^\text {trunc}\Vert _\text {Fro}}{\Vert \varvec{T}\Vert _\text {Fro}} \le \text {EE}\equiv \frac{\sqrt{\sum _{p=1}^P[(\sigma ^{(p)}_{J'_p+1})^2+\cdots +(\sigma ^{(p)}_{J_p})^2]}}{\sqrt{\sum _{p=1}^P[(\sigma ^{(p)}_1)^2+\cdots +(\sigma ^{(p)}_{J_p})^2] }}, \end{aligned}$$
(B.9)

where \(\Vert \cdot \Vert \) stands for the Frobenius norm of the tensors (namely, the square root of the sum of the squares of its components) and the singular values \(\sigma ^{(p)}_1,\ldots ,\sigma ^{(p)}_{J_p}\) are as defined above, in (B.5). Thus, for a given required accuracy in terms of the RRMSE, \(\varepsilon _1\), the numbers of modes retained along the various directions may be selected such that

$$\begin{aligned} \text {EE}\le \varepsilon _1. \end{aligned}$$
(B.10)

However, this is only one condition that (for \(P\ge 3\)) does not determine the individual numbers of modes to be retained. The required additional conditions may be selected in various ways. A reasonable strategy is to equidistribute the error bound EE defined in (B.9) along the various dimensions, but requiring that the P terms in brackets in the numerator of (B.9) all be equal. This selects \(J'_1\),...,\(J'_P\) as the minimum values such that

$$\begin{aligned} \frac{\sigma ^{(p)}_{J'_p+1}}{\Vert \varvec{T}\Vert _\text {Fro}}\le \frac{\varepsilon _1}{\sqrt{P}}\text {for }p=1,\ldots ,P. \end{aligned}$$
(B.11)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Clainche, S.L., Vega, J.M. Spatio-Temporal Koopman Decomposition. J Nonlinear Sci 28, 1793–1842 (2018). https://doi.org/10.1007/s00332-018-9464-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00332-018-9464-z

Keywords

Mathematics Subject Classification

Navigation