## 2 Nonlinear Subspace Identification of Mechanical Systems
### Subspace System Identification  
As the nonlinear vibrating equation can be recast into a discrete-time state-space system as presented in Equation (4), the identified state-space model within a similarity transformation can be obtained using the subspace-based method. The procedure of subspace system identification is briefly given. The identification problem statement of subspace identification algorithms is as follows, for a given \(s\) measurements of the input \(\boldsymbol{u}\) and the output \(\boldsymbol{q}\) generated by the unknown system of order \(N\), to determine the order \(N\) of the unknown system and the system matrices \(\mathbf{A}_{\mathrm{d}}\), \(\mathbf{B}_{\mathrm{d}}^{\mathrm{e}}\), \(\mathbf{C}_{\mathrm{d}}\), and \(\mathbf{D}_{\mathrm{d}}^{\mathrm{e}}\) up to within a similarity transformation [33]. In the time domain, the output Hankel matrix is defined as  
\[ \begin{split}\mathbf{Q}_{\mathrm{p}}&=\left[\begin{array}[ ]{cccc}\boldsymbol{q}(0)&\boldsymbol{q}(1)&\cdots&\boldsymbol{q}(l-1)\\ \boldsymbol{q}(1)&\boldsymbol{q}(2)&\cdots&\boldsymbol{q}(l)\\ \vdots&\vdots&\ddots&\vdots\\ \boldsymbol{q}(i-1)&\boldsymbol{q}(i)&\cdots&\boldsymbol{q}(i+l-2)\end{array} \right]\in\mathbb{R}^{mi\times l}\\ \mathbf{Q}_{\mathrm{f}}&=\left[\begin{array}{cccc}\boldsymbol{q}(i)& \boldsymbol{q}(i+1)&\cdots&\boldsymbol{q}(i+l-1)\\ \boldsymbol{q}(i+1)&\boldsymbol{q}(i+2)&\cdots&\boldsymbol{q}(i+l)\\ \vdots&\vdots&\ddots&\vdots\\ \boldsymbol{q}(2i-1)&\boldsymbol{q}(2i)&\cdots&\boldsymbol{q}(2i+l-2)\end{array} \right]\in\mathbb{R}^{mi\times l}\end{split}  \tag{5}\]  
where \(i\) is an user-defined index, \(l\) is typically equal to \(s-2i+1\), and \(s\) is the number of data sample. The subscript \(\mathrm{p}\) and \(\mathrm{f}\) stand for _past_ and _future_, respectively. Similarly, the extended input block Hankel matrix is  
\[ \begin{split}\mathbf{U}_{\mathrm{p}}&=\left[\begin{array}{ c c c c}\boldsymbol{u}(0)&\boldsymbol{u}(1)&\cdots&\boldsymbol{u}(l-1)\\ \boldsymbol{u}(1)&\boldsymbol{u}(2)&\cdots&\boldsymbol{u}(l)\\ \vdots&\vdots&\ddots&\vdots\\ \boldsymbol{u}(i-1)&\boldsymbol{u}(i)&\cdots&\boldsymbol{u}(i+l-2)\end{array} \right]\in\mathbb{R}^{(m+n)i\times l}\\ \mathbf{U}_{\mathrm{f}}&=\left[\begin{array}{cccc}\boldsymbol{u}(i)& \boldsymbol{u}(i+1)&\cdots&\boldsymbol{u}(i+l-1)\\ \boldsymbol{u}(i+1)&\boldsymbol{u}(i+2)&\cdots&\boldsymbol{u}(i+l)\\ \vdots&\vdots&\ddots&\vdots\\ \boldsymbol{u}(2i-1)&\boldsymbol{u}(2i)&\cdots&\boldsymbol{u}(2i+l-2)\end{array} \right]\in\mathbb{R}^{(m+n)i\times l}\end{split}  \tag{6}\]Then the time-domain output-state-input matrix equation Equations (4) is rewritten as follows by taking account of extended observability matrix \(\mathbf{\Gamma}_{i}\) and the lower-block triangular Toeplitz matrix \(\mathbf{\Lambda}_{i}\). \[\mathbf{Q}_{\mathrm{p}}=\mathbf{\Gamma}_{i}\mathbf{X}_{\mathrm{p}}+\mathbf{\Lambda}_{i} \mathbf{U}_{\mathrm{p}} \tag{7}\]  
where \(\mathbf{X}_{\mathrm{p}}=[ \begin{array}{cccc}\mathbf{x}(0)&\mathbf{x}(1)&\cdots&\mathbf{x }(l-2)&\mathbf{x}(l-1)\end{array} ]\in\mathbb{R}^{N\times l}\) is the state sequence, and \(\mathbf{\Gamma}_{i}\) and \(\mathbf{\Lambda}_{i}\) are defined as  
\[\mathbf{\Gamma}_{i}=\left[ \begin{array}{c}\mathbf{C}_{\mathrm{d}}\\ \mathbf{C}_{\mathrm{d}}\mathbf{A}_{\mathrm{d}}\\ \vdots\\ \mathbf{C}_{\mathrm{d}}\mathbf{A}_{\mathrm{d}}^{i-1}\end{array} \right]\in \mathbb{R}^{li\times N}, \tag{8}\] \[\mathbf{\Lambda}_{i}=\left[