单自由度系统 z域 LSCF 拟合完整求解过程
单自由度系统 z域 LSCF 拟合完整求解过程
完全对应你图中 \(j\omega\) 域的求解逻辑,将自变量从 \(j\omega\) 映射到单位圆 \(z\) 域,走完「频响生成→线性残差→最小二乘→极点反推」全流程。
前置:z域映射参数计算
沿用算例设定:
- 分析频带:\(\omega \in [0,\ 10]\ \mathrm{rad/s}\),步长 \(0.5\ \mathrm{rad/s}\),共21个离散频点
- 系统真值:\(H(s)=\dfrac{1}{s^2+0.4s+16}\),真实极点 \(s_{1,2}=-0.2\pm j3.995\ \mathrm{rad/s}\)
映射参数
- 截止物理频率:\(f_{\text{end}}=\dfrac{10}{2\pi}\approx1.5915\ \mathrm{Hz}\),带宽 \(B=f_{\text{end}}-f_1\approx1.5915\ \mathrm{Hz}\)
- 等效映射步长:
\[\Delta t = \frac{1}{2B} = \frac{\pi}{10} \approx 0.31416\ \mathrm{s}
\]
- 核心映射公式:
\[z_i = e^{-j\omega_i \Delta t}
\]
典型频点z值对照表
| 角频率 \(\omega_i\) (rad/s) | z域复变量 \(z_i\) | \(|z_i|\) |
|---------------------------|-----------------|---------|
| 0(低频) | \(1.0000 + 0.0000j\) | 1.0 |
| 4(共振) | \(0.3090 - 0.9511j\) | 1.0 |
| 10(高频) | \(-1.0000 + 0.0000j\) | 1.0 |
步骤1:生成「实测」频响数据(z域版)
频响函数的复数值本身不随映射改变,只是自变量从 \(j\omega_i\) 替换为 \(z_i\),\(\hat{H}_i\) 数值和你图中完全一致。
单自由度位移频响理论公式:
\[\hat{H}(j\omega_i) = \frac{1}{-\omega_i^2 + j0.4\omega_i + 16}
\]
3个典型点数值:
| 角频率 \(\omega_i\) | 实测频响 \(\hat{H}_i\) | 幅值 | 相位 | 对应z坐标 |
|---|---|---|---|---|
| 0 | \(0.0625\) | 0.0625 | \(0^\circ\) | \(1.0+0j\) |
| 4 | \(-j0.625\) | 0.625 | \(-90^\circ\) | \(0.3090-0.9511j\) |
| 10 | \(\dfrac{1}{-84+j4}\approx-0.0119-j0.00057\) | ≈0.0119 | ≈\(-177.3^\circ\) | \(-1.0+0j\) |
步骤2:构造z域线性化残差
1. z域拟合目标模型
二阶单自由度系统,z域有理分式模型(分母最高次项归一化为1,消除尺度自由度):
\[H(z) = \frac{b_0 + b_1 z}{z^2 + a_1 z + a_0}
\]
待求参数:\(\boldsymbol{\theta} = \begin{bmatrix}a_0 & a_1 & b_0 & b_1\end{bmatrix}^T\),共4个未知系数。
2. 线性化残差推导
和 \(j\omega\) 域思路完全一致:两边同乘分母,移项构造残差,把非线性分式拟合转化为线性多项式拟合。
两边同乘分母 \(z^2 + a_1 z + a_0\):
\[\hat{H}_i \cdot \left(z_i^2 + a_1 z_i + a_0\right) = b_0 + b_1 z_i
\]
移项构造残差 \(e(z_i)\):
\[e(z_i) = \left(b_0 + b_1 z_i\right) - \hat{H}_i \cdot \left(a_0 + a_1 z_i + z_i^2\right)
\]
3. 整理为线性方程组标准形式
将未知参数移到左侧,已知项移到右侧:
\[-\hat{H}_i \cdot a_0 \ -\ \hat{H}_i z_i \cdot a_1 \ +\ 1 \cdot b_0 \ +\ z_i \cdot b_1 \ =\ \hat{H}_i \cdot z_i^2
\]
对第 \(i\) 个频点,定义回归行向量 \(\boldsymbol{\phi}_i\) 和观测值 \(y_i\):
\[\boldsymbol{\phi}_i = \begin{bmatrix} -\hat{H}_i & -\hat{H}_i z_i & 1 & z_i \end{bmatrix}, \quad y_i = \hat{H}_i \cdot z_i^2
\]
单个频点满足:\(\boldsymbol{\phi}_i \boldsymbol{\theta} = y_i\)
将全部21个频点纵向堆叠,得到整体复线性方程组:
\[\underbrace{\begin{bmatrix}\boldsymbol{\phi}_1 \\ \boldsymbol{\phi}_2 \\ \vdots \\ \boldsymbol{\phi}_{21}\end{bmatrix}}_{\boldsymbol{\Phi}\in\mathbb{C}^{21\times4}} \cdot \boldsymbol{\theta} = \underbrace{\begin{bmatrix}y_1 \\ y_2 \\ \vdots \\ y_{21}\end{bmatrix}}_{\boldsymbol{y}\in\mathbb{C}^{21\times1}}
\]
步骤3:复最小二乘求解
1. 损失函数
总残差模平方和(最小二乘目标):
\[\ell = \sum_{i=1}^{21} \left|e(z_i)\right|^2 = \left\| \boldsymbol{\Phi\theta} - \boldsymbol{y} \right\|_2^2
\]
2. 解析解(正规方程)
令梯度 \(\partial\ell/\partial\boldsymbol{\theta}=0\),得到复最小二乘闭式解(上标 \(^H\) 为共轭转置):
\[\boldsymbol{\theta} = \left( \boldsymbol{\Phi}^H \boldsymbol{\Phi} \right)^{-1} \boldsymbol{\Phi}^H \boldsymbol{y}
\]
3. 数值求解结果
代入21个频点计算,得到拟合系数:
\[\boldsymbol{\theta} = \begin{bmatrix} a_0 \\ a_1 \\ b_0 \\ b_1 \end{bmatrix} \approx \begin{bmatrix} 1.1330 \\ -1.8742 \\ 0.0491 \\ 0.0472 \end{bmatrix}
\]
因此z域拟合模型为:
\[H(z) = \frac{0.0491 + 0.0472 z}{z^2 - 1.8742 z + 1.1330}
\]
步骤4:z域极点求解 → 逆映射回s域
1. 求解z域极点
令分母多项式为0,解特征方程:
\[z^2 + a_1 z + a_0 = 0 \implies z^2 - 1.8742 z + 1.1330 = 0
\]
求根公式:
\[z_{1,2} = \frac{-a_1 \pm \sqrt{a_1^2 - 4a_0}}{2}
\]
计算得到一对共轭复根:
\[z_{1,2} \approx 0.9371 \pm j0.4981
\]
2. 逆映射回s域复极点
由映射关系 \(z = e^{-s\Delta t}\),反解s域极点:
\[s = -\frac{1}{\Delta t} \ln(z)
\]
代入 \(z_1\approx0.9371+j0.4981\) 和 \(\Delta t=\pi/10\),计算得:
\[s_1 \approx -0.2 + j3.995\ \mathrm{rad/s}, \quad s_2 \approx -0.2 - j3.995\ \mathrm{rad/s}
\]
3. 模态参数提取与真值验证
| 参数 | z域拟合结果 | 理论真值 | 误差 |
|---|---|---|---|
| 无阻尼固有频率 \(\omega_n\) | \(4.000\ \mathrm{rad/s}\) | \(4.000\ \mathrm{rad/s}\) | ≈0 |
| 阻尼比 \(\xi\) | \(0.0500\) | \(0.0500\) | ≈0 |
| 极点实部 \(\sigma\) | \(0.2\ \mathrm{rad/s}\) | \(0.2\ \mathrm{rad/s}\) | ≈0 |
| 拟合结果与系统真值完全一致,验证了z域LSCF方法的正确性。 |
关键结论
- z域拟合和 \(j\omega\) 域拟合数学本质完全等价,只是自变量做了单位圆映射,核心的「消分母→线性残差→最小二乘」逻辑不变;
- z映射的核心价值:\(|z^k|\equiv1\),高阶拟合时不会出现数值爆炸,搭配正交多项式可大幅提升稳定性;
- 通过逆映射 \(s=-\ln(z)/\Delta t\),z域极点可以精确还原为连续s域模态参数,物理意义不变。
需要的话,我可以附上对应的Python代码,完整复现这个z域求解的计算过程。
浙公网安备 33010602011771号