# Analysis of the Transonic Buffet Characteristics of Stationary and Pitching OAT15A Airfoil
## 2 Numerical Methods
### Dynamic Mode Decomposition  
The Dynamic Mode Decomposition (DMD) method is used in this work, and is briefly introduced below. DMD is a data-driven algorithm for extracting information about the flow response dynamics from experimental measurements or direct numerical simulations of flow fields [18]. A snapshot of the flow field data at the \(i\)th sampling time is obtained from experiment or numerical simulation, denoted by the vector \(\mathbf{v}_{i}\) (\(i=1\cdots N\)), \(\mathbf{v}_{i}\in\Re^{m\times 1}\), where \(m\) represents the number of physical quantities of the flow field, and \(N\) is the number of snapshots. The data shall be represented in the form of a snapshot sequence, denoted by,  
\[\mathbf{V}_{1}^{N}=[\mathbf{v}_{1}\ \mathbf{v}_{2}\ \cdots\ \mathbf{v}_{N}] \tag{2}\]  
We assume a linear dynamical system \(\mathbf{A}\in\Re^{m\times m}\), which can map the current flow field to the subsequent flow field  
\[\mathbf{v}_{i+1}=\mathbf{A}\mathbf{v}_{i} \tag{3}\]  
Further, Equation (3) can also be written in terms of the entire snapshot history as  
\[\mathbf{V}_{2}^{N}=[\mathbf{v}_{2}\ \mathbf{v}_{3}\ \cdots\ \mathbf{v}_{N}]=\mathbf{A}[\mathbf{v}_{1}\ \mathbf{v}_{2}\ \cdots\ \mathbf{v}_{N-1}]=\mathbf{A}\mathbf{V}_{1}^{N-1} \tag{4}\]  
For the matrix \(\mathbf{V}_{1}^{N-1}\) of rank \(r\), the goal of DMD algorithm is to find a matrix \(\widetilde{\mathbf{A}}\in\mathbb{C}^{r\times r}\) to replace the full-order matrix \(\mathbf{A}\). This is performed via the Singular Value Decomposition (SVD) of the snapshot matrix \(\mathbf{V}_{1}^{N-1}\). By retaining the first \(r\) principle singular values, we have  
\[\mathbf{A}=\mathbf{U}_{r}\widetilde{\mathbf{A}}\mathbf{U}_{r}{}^{*} \tag{5}\]  
where \(\mathbf{U}_{r}\) comes from the SVD of \(\mathbf{V}_{1}^{N-1}=\mathbf{U}_{r}\mathbf{\Sigma}\mathbf{W}_{r}{}^{*}\). So, we have \(\mathbf{U}_{r}{}^{*}\mathbf{U}_{r}=\mathbf{I}\), \(\mathbf{U}_{r}\in\Re^{m\times r}\mathbf{W}_{r}{}^{*}\mathbf{W}_{r}=\mathbf{I}\), \(\mathbf{W}_{r}\in\Re^{r\times N-1}\). Substituting Equation (5) into (4), we can obtain Equation (6),  
\[\mathbf{A}\approx\widetilde{\mathbf{A}}=\mathbf{U}_{r}{}^{*}\mathbf{V}_{2}^{N}\mathbf{W}_{r}\mathbf{ \Sigma}_{r}{}^{-1} \tag{6}\]  
The eigendecomposition of \(\widetilde{\mathbf{A}}\) then yields Ritz eigenvalues \(\lambda_{i}\) and eigenvectors \(\mathbf{y}_{i}\) that satisfy \(\widetilde{\mathbf{A}}\mathbf{y}_{i}=\lambda_{i}\mathbf{y}_{i}\). The \(i\)th DMD mode \(\mathbf{\varphi}_{i}\) is defined as  
\[\mathbf{\varphi}_{i}=\mathbf{U}_{r}\mathbf{y}_{i} \tag{7}\]  
The \(i\)th DMD mode eigenvalue is defined as \(g_{i}=\frac{\log(\lambda_{i})}{\Delta t}\), and the constant sampling time \(\Delta t\) is the time interval between two consecutive flow field snapshots. The real part of the eigenvalue represents the growth rate associated with this dynamic mode. A positive real part represents the growth of the mode, while a negative real part corresponds to the decay. The real part of zero indicates that the corresponding mode is stable. The imaginary part represents the modal circular frequency. In addition, it is also possible to judge that the modes are stable or not according to the r positions of the Ritz eigenvalues on the unit circle. In terms of the eigenvalues and modes, the snapshot of the flow field at a time instance \(i\) can be expressed as below,  
\[\mathbf{v}_{i}=\sum_{j=1}^{N-1}a_{j}{\left(\lambda_{j}\right)}^{i-1}\mathbf{\varphi}_{ j}=\mathbf{\Phi}\mathbf{D}_{a}\mathbf{\Lambda}^{i-1} \tag{8}\]  
where \(\mathbf{\Phi}=[\mathbf{\varphi}_{1}\quad\cdots\quad\mathbf{\varphi}_{N-1}]\), \(\mathbf{D}_{a}= \begin{bmatrix}a_{1}&&\\ &\ddots&\\ &&a_{N-1}\end{bmatrix} \), \(\mathbf{\Lambda}^{i-1}= \begin{bmatrix}1&\lambda_{1}&\cdots&\left(\lambda_{1} \right)^{i-1}\\ \vdots&\vdots&\vdots&\vdots\\ 1&\lambda_{N-1}&\cdots&\left(\lambda_{N-1}\right)^{i-1}\end{bmatrix} \)  
\(\mathbf{a}=[a_{1}\ a_{2}\ \cdots a_{N-1}]=\mathbf{Y}^{+}\mathbf{U}_{r}{}^{*}\mathbf{v}_{1}\).