3、多自由度系统:质量矩阵与刚度矩阵、模态分析基础、振型叠加法

好,咱们进入多自由度系统。说实话,单自由度系统你搞明白了,多自由度就是它的“升级版”。但别小看这个升级,从1个到N个,很多概念会发生质变。

我个人习惯把多自由度系统比作“一群人拉手跳舞”。单自由度是一个人独舞,你只要管好他自己就行。多自由度呢?每个人都会影响旁边的人,牵一发而动全身。这就是耦合——多自由度系统的核心难点。

3.1 质量矩阵与刚度矩阵:系统的“身份证”

先问个问题:怎么描述一个多自由度系统?

答案是矩阵。质量矩阵 [M] 和刚度矩阵 [K],就是系统的两张“身份证”。

拿一个最简单的两自由度系统举例——两个质量块,三根弹簧串联。你想想看,第一个质量块动一下,第二个会怎样?肯定跟着动。这种“你动我也动”的关系,就体现在矩阵的非对角元素里。

质量矩阵 [M]

  • 对角元素 mii:第 i 个自由度自身的质量
  • 非对角元素 mij:质量耦合项(大多数工程问题中为0,即集中质量矩阵)

刚度矩阵 [K]

  • 对角元素 kii:第 i 个自由度自身的刚度贡献
  • 非对角元素 kij:刚度耦合项——这才是关键

核心要点:刚度矩阵的非对角元素不为零,意味着系统存在“弹性耦合”。你推第一个质量,第二个也会动。我在项目中遇到过一台精密机床,就是因为忽略了这种耦合,导致共振频率算错了整整30%。

写出来就是这样的运动方程:

[M]{ẍ} + [K]{x} = {F(t)}

嗯,这里要注意:如果系统有阻尼,还要加上阻尼矩阵 [C]。但模态分析基础阶段,我们先忽略阻尼,把问题简化。

3.2 模态分析基础:找到系统的“固有性格”

为什么要做模态分析?说白了,就是想知道系统“天生”爱怎么振动。

每个多自由度系统都有自己“偏爱”的振动形态——这就是模态。我经常跟年轻工程师说:模态就是结构的“性格”,你摸透了它的性格,才能跟它好好相处。

模态分析要解决的核心问题

  1. 系统有哪些固有频率?(ω1, ω2, ..., ωn
  2. 每个频率对应的振型是什么?({φ1}, {φ2}, ..., {φn})

数学上,这就是求解广义特征值问题:

[K]{φ} = ω² [M]{φ}

解出来的 ω² 就是特征值,{φ} 就是特征向量——也就是振型。

我的经验:实际工程中,我们通常只关心前几阶模态。为什么?因为高阶模态能量低,对响应贡献小。我曾经处理过一个桥梁振动问题,只取了前3阶模态,计算结果和实测误差不到5%。

振型有个非常重要的性质——正交性。什么意思?

不同阶的振型之间是“正交”的,就像三维空间里的x、y、z轴互相垂直一样。用数学表达:

i}T [M] {φj} = 0  (i ≠ j)
{φi}T [K] {φj} = 0  (i ≠ j)

这个性质太重要了。它让我们能把耦合的运动方程“解耦”——把一群人拉手跳舞,变成每个人单独跳舞。

3.3 振型叠加法:化繁为简的利器

好,现在进入实战环节。有了模态,怎么用?

振型叠加法的思路非常巧妙:既然系统有N个“天生”的振动形态,那任何复杂的振动都可以看成这些基本形态的“组合”。

就像调色——任何颜色都可以由红、绿、蓝三种基色按比例混合而成。振型叠加法也是这个道理。

具体步骤

  1. 坐标变换:把物理坐标 {x} 变换到模态坐标 {q}
{x} = [Φ]{q} = φ1q1 + φ2q2 + ... + φnqn

其中 [Φ] 是振型矩阵,每一列是一个振型。

  1. 解耦:代入运动方程,利用正交性,得到N个独立的单自由度方程
mi''qi'' + ki''qi = fi''(t)   (i = 1, 2, ..., n)

这里的 mi''、ki'' 叫模态质量和模态刚度。

  1. 分别求解:每个方程都是单自由度问题,用第2章的方法逐个击破
  2. 叠加:把各阶模态的响应叠加起来,得到物理坐标下的总响应

避坑指南:我曾经犯过一个错误——为了省事只取了1阶模态去算一个冲击响应,结果误差大到离谱。后来才明白:冲击载荷会激发高频成分,必须取足够多的模态。一般规则是:截止频率要取到激励频率的2-3倍以上。

3.4 知识体系总览

下面这张图,是我自己总结的多自由度系统分析流程。你跟着这个思路走,基本不会乱。

多自由度系统振动分析流程 建立物理模型 确定自由度、质量、刚度 组装[M]、[K]矩阵 注意耦合项的处理 模态分析 求解特征值问题 振型叠加法 坐标变换 → 解耦 → 求解 → 叠加 时域/频域响应 位移、速度、加速度 关键概念 • 固有频率 • 振型(模态形状) • 正交性 • 模态质量/刚度 • 模态参与因子 • 截断误差 图:多自由度系统振动分析核心流程

3.5 实战中的几个要点

关于矩阵组装

我建议你养成“逐自由度”组装的习惯。先确定每个自由度的编号,再按编号填充矩阵。别小看这一步,我曾经见过有人把刚度矩阵的符号搞反了,结果算出来的固有频率全是虚数——那叫一个尴尬。

关于模态截断

实际系统可能有几十上百个自由度,但没必要全算。怎么选?看激励频率范围。如果激励主要在低频段,取前5-10阶就够了。但如果是冲击或宽带激励,得多取一些。

经验法则:模态截断的截止频率,建议取到最高激励频率的3倍以上。这样能保证90%以上的响应能量被覆盖。

关于振型归一化

振型的大小是相对的,可以任意缩放。常见的归一化方式有两种:

  • 对质量矩阵归一化:{φ}T[M]{φ} = 1
  • 最大位移归一化:振型中最大元素为1

我个人习惯用第一种,因为后续计算模态坐标时更方便。

好了,多自由度系统的核心内容就这些。记住:质量矩阵和刚度矩阵是“原料”,模态分析是“加工”,振型叠加法是“成品”。三步走,稳得很。