2. 非线性系统建模与状态空间表示
分岔分析的一切结论都建立在“模型”之上。若模型写错、状态变量选错、平衡点方程列错,后续的特征值计算、参数扫描和分岔图都只是对错误对象的精确计算。本节从三个典型实际对象出发,说明如何把物理机理转写为非线性微分方程,再整理成状态空间形式,并给出平衡点与周期轨道的定义与求解路径。
一、从机理到方程:三个对象的建模要点
单摆。取摆角 θ 为广义坐标,规定逆时针为正、竖直向下为 θ=0。对摆球列切向牛顿方程,得
m L θ'' = -m g sinθ - c L θ'
=> θ'' + (c/m) θ' + (g/L) sinθ = 0
其中 c 为粘性阻尼系数。关键的非线性来自 sinθ:小角度下 sinθ≈θ 得到线性化模型,但大幅摆动、翻转运动必须保留 sinθ。若存在恒定外力矩 T,则右端再加 T/(mL²),此时系统可能出现平衡点消失的鞍结分岔,这正是后续章节的典型例子。
电路。以范德波尔振荡器为例,含非线性负阻(如隧道二极管或运放实现的负阻)与 LC 回路。对电容电压 v 和电感电流 i 列 KCL、KVL:
C dv/dt = i - g(v)
L di/dt = -v
=> v'' - (1/C)(i'(v) ... ) 整理后得 v'' - μ(1 - v²)v' + ω₀²v = 0
非线性项 μ(1−v²)v' 表示“小振幅时注入能量、大振幅时耗散能量”,它使系统收敛到一条稳定周期轨道(极限环),是研究周期轨道与 Hopf 分岔的标准模型。
化学反应器。连续搅拌釜(CSTR)中一级放热反应,以浓度 CA 与温度 T 为状态,物料与能量守恒给出
dC_A/dt = (C_Af - C_A)/τ - k₀ exp(-E/(RT)) C_A
dT/dt = (T_f - T)/τ + (-ΔH)/(ρc_p) k₀ exp(-E/(RT)) C_A - UA(T - T_c)/(Vρc_p)
Arrhenius 项 exp(−E/RT) 是强非线性来源,它使系统可存在多个稳态(点火/熄火),对应鞍结分岔与滞后现象。
二、状态空间形式
统一写成 ẋ = f(x, μ),x ∈ ℝⁿ 为状态向量,μ 为参数。做法是:对 n 阶标量方程引入 x₁=θ, x₂=θ' 等,把高阶方程降为一阶方程组。单摆即
x₁' = x₂
x₂' = -(g/L) sin x₁ - (c/m) x₂ + T/(mL²)
状态变量选择不唯一,但应满足:能唯一确定系统未来演化、数量最少、物理意义清晰。选错(例如把两个不独立变量都当状态)会导致雅可比矩阵奇异,平衡点分析失效。参数 μ 不进入状态,它是分岔分析中要扫描的外生量。
三、平衡点与周期轨道的求解
平衡点满足 f(x*, μ)=0。单摆无外力时 x₂*=0,sin x₁*=0,得 (0,0) 与 (π,0)(模 2π)。有恒力矩 T 时需解 sin x₁* = T/(mgL),仅当 |T|≤mgL 有解,|T|=mgL 时两平衡点合并后消失——这就是鞍结分岔的几何来源。数值上可用牛顿法从多个初值出发求全部根,避免漏根。
周期轨道是满足 x(t+T)=x(t) 的非平凡闭轨。解析上常借助首次积分或 Lienard 变换;数值上常用打靶法:猜测初值与周期,积分一个周期后要求回到初值,用牛顿法修正,并检查 Floquet 乘子判断稳定性。范德波尔系统在 μ>0 时存在唯一稳定极限环,可用打靶法求得其幅值与周期随 μ 的变化。
四、一个可执行的建模流程
以带恒力矩的单摆为例,完整走一遍:
- 确定坐标与正方向:θ 逆时针为正,竖直向下为零位。
- 列机理方程:mLθ'' = −mg sinθ − cLθ' + T。
- 降阶:x₁=θ,x₂=θ',得 x₁'=x₂,x₂'=−(g/L)sin x₁−(c/m)x₂+T/(mL²)。
- 求平衡点:令右端为零,x₂*=0,sin x₁*=T/(mgL)。取 g=9.8, L=1, m=1,则临界力矩 T_c=9.8。
- 参数扫描:令 T 从 0 增至 9.8,记录平衡点个数由 2 变 1 再变 0 的过程,即为分岔图的骨架。
- 数值验证:用四阶 Runge–Kutta 从不同初值积分,观察相轨迹是否收敛到对应平衡点或极限环。
需要强调:上述数值(g=9.8、L=1、T_c=9.8)是教学示例参数,用于说明计算路径,并非实测数据。实际工程中应代入真实几何与阻尼参数,并对平衡点方程做数值求根以覆盖全部解。
建模完成后,才进入线性化与特征值分析:在平衡点处计算雅可比矩阵 J=∂f/∂x,其特征值实部穿越零或出现纯虚对,分别对应鞍结、Hopf 等分岔。因此本节的状态空间整理与平衡点求解,是后续所有分岔判据的输入,必须保证方程、符号约定与参数含义在全文一致。