板书小抄
从对流方程到可信的数值解 · 正文 40 页,页上预估合计约 51 分钟 · ← → 翻页 · N 讲稿 · B 备用目录 · R 返回
左栏 · 全程保留
- Lorenz 方程与 σ、β、ρ(板块 1)
- J 矩阵,写在方程下面(板块 4)
中间 · 推导区,随写随擦
- Galerkin 代入三项,截断的代价
- 不动点、分类讨论、三次式验算
- 截面映射与蛛网草图
- 局部指数、diag(2, ½)、迹
- 精度估算:对数时间、幂律、方法、稳定域
右栏 · 全程保留,逐条攒
- 停不下(板块 2)
- 一个方向在拉伸,λ₁ ≈ 0.9(板块 4)
- 体积缩到零,Σλ = tr J(板块 4)
- T = ln(1/δ)/λ₁ → +2.55 / 位,41(板块 5)
- 守恒乘法,混沌加法(板块 6)
数字是页码与每页 data-min 之和。标签:板书写上黑板 心算边写边算 对图指着 PPT 讲 演示现场拖滑块
开场
演示封面:x 初值差 10⁻⁵,|Δ| 到 1 停在 t ≈ 13.6(心算 5 × 2.55 ≈ 12.7)
演示第 3 页:同方程、同初值、同 DOP853,只拧 rtol
rtol 1e−3 / 1e−6 / 1e−9 / 1e−12 → 脱钩 5.4 / 10.6 / 18.4 / 26.8;步数 300 多 → 3700 多
“rtol = 1e−6 的这条和参考解,哪一条是对的?”
停一下等回答。脱钩之前参考解对;脱钩之后两条都只是吸引子上的某一条轨道,“哪条对”这个问题本身没了意义。后两个间隔都是 8 左右:每收紧 1000 倍只多 8,这个 8 第 ② 部分算。目录页只请大家记住 2.55。
容差收紧十亿倍,可信时间只从 5 走到 27。
方程从哪来
对图Ra = gαΔT H³ / (νκ) = 想翻的 ÷ 拦着的
对图Boussinesq → 流函数 ψ 与温度偏离 θ 两条 PDE。只读花括号:平流 · 粘性 · 浮力 · 热扩散 · 搬运背景温度
未知量是函数 → 无穷维
“这组方程从哪来,怎么放进计算机?”
锅里的水底下烧:热的变轻想上去,冷的想下来;粘性 ν 拖住流动,热扩散 κ 抹平温差。Ra 小拦得住,水不动;过了临界值长出一排对流卷。能拧的只有 ΔT,Ra ∝ ΔT,这个旋钮后面叫 ρ。
θ 是实际温度减掉传导直线:水不动 θ = 0,所以 θ 量的是对流本身。
两条 PDE,未知量是函数,要先变成有限个数。
板书 ẋ =σ(y − x)ẏ =ρx − y − xzż =xy − βz
σ = ν/κ = 10 β = 4/(1+a²) = 8/3 ρ = Ra/Rac = 28
ψ ∝ x · sin kX sin πZ θ ∝ y · cos kX sin πZ − z · sin 2πZ
x 卷转速(正负是转向)· y 升降流温差 · z 剖面弯曲,Nu = 1 + 2z/ρ
线方法:先空间离散、再时间推进,和声学 FDTD 一样;只是第 1 步用 Fourier 模态,只留 3 个,N = 3,小到每一步都看得清。
大写 X、Z 是坐标,小写 x、y、z 是只随时间变的振幅(H = 1,k = πa)。z 的模态只随竖直 Z 变:中段被搅匀拉平、近板变陡,所以 z 就是对流多运走的热。
x 是转速,y 是温差,z 是多运的热。
板书Galerkin:代进 PDE → 乘每个模态 → 在一个卷上积分。线性项各回各的模态,只看平流 J(a, b) = u·∇b:
- ① 卷 × 卷 J(ψ, ∇²ψ) = 0(∇²ψ = −K²ψ)→ ẋ 线性
- ② x × y (kπ/2) sin 2πZ(cos²kX + sin²kX = 1,X 消掉)→ 恰好是 z 的花样 → ż 里 +xy
- ③ x × z kπ cos kX (sin 3πZ − sin πZ):sin πZ 回 y → ẏ 里 −xz;sin 3πZ 不在三个模态里 → 扔掉 = 截断
“只留三项,为什么能自己闭合?扔掉了什么?”
② 是 z 非留不可的理由:x、y 一乘直接生出 z。不留 z,方程只剩线性部分,ρ > 1 时振幅指数增长,没有东西让它停;z 是非线性的刹车。
③ 是截断发生的唯一地方。被问到可现场验 ②:积化和差后含 cos 2kX 的项正好抵消,只剩 sin 2πZ。
截断就是扔掉 sin 3πZ;z 是非线性的刹车。
心算扔掉的 sin 3πZ 与留下的 −xz 同系数(③ 括号里两项)
留下的 −xz 比驱动 ρx = z/ρ;定常卷 C± 上 z = ρ − 1:
ρ = 1.1:0.1/1.1 ≈ 9% ρ = 28:27/28 ≈ 96%
传热:定常卷上 Nu = 1 + 2z/ρ = 3 − 2/ρ ≤ 3(ρ = 28 是 2.93);真实对流 Nu 约 ∝ Ra1/3,无界
⇒ ρ = 28 时高阶模早被强烈激发:三行方程是自洽的数学对象,不是流体模型
刚过 ρ = 1,xz 是小量乘小量,扔掉的那块也小,截断有渐近依据;到 28,扔掉的强迫和驱动 ρx 同一量级,真实流体里 sin 3πZ 一定长起来。传热是第二个迹象:截断把 Nu 封顶在 3。
第 10 页一句带过:线性项只有驱动和扩散,非线性两项 −xz、xy 都是 u·∇θ,混沌全来自搬运。
恰好就是这组方程的装置:Malkus 水车、热虹吸环、单模激光(Haken 1975)。
后面的结论关于方程本身,不关于天气。
Rac(a) = π⁴(1+a²)³/a²,a² = ½ 最小 → 27π⁴/4 ≈ 657.5
β = 4/(1 + ½) = 8/3,卷宽 √2 H σ = 10 > β + 1 = 11/3 ρ = 28 > ρH ≈ 24.74
“为什么是 8/3 这么怪的数?”
8/3 是最先失稳的那种卷的几何;σ 和水同量级(室温约 7),还得大于 β + 1,否则 C± 永不失稳;28 刚过 24.74。量级(被问再说):1 cm 水层上下差 1 K,Ra 约 1.5×10⁴;一个时间单位约一分钟;刚性板临界值是 1708。
8/3 是几何,10 是水,28 刚过失稳。
Euler u ← u + h f(u) 一阶
RK4 四个斜率加权:h 减半,误差 ÷ 2⁴ = 16
DOP853 8 阶,每步估局部误差,按 rtol 调 h;rtol = 1e−13 当参考解
“怎么让计算机往前走一步?”
左边代码就是全部计算:一个 f、一个循环。全篇实算只用 DOP853,只拧 rtol,开场演示就在拧它。过渡:方程有了,积分器也有了;谈误差之前,先看方程自己会做什么。
每一步都很准;问题是误差怎么累积。
不动点、分类讨论、三次式验算
演示ρ:0.5 → 慢拖过 1 → 10 → 24.5(点“推一下”)→ 28
每拖之前先猜:“ρ 小于 1 会怎样?刚过 1?一直加热下去?”
0.5 不动;过 1 卷自己长出来,转向随机;10 定常卷更强;过 24.74,x 在正负间跳,停不下来。24.5 推一下(z 加 15)就不再回来:两种结局并存,看初值。
拧 ρ,从静止到定常卷,再到停不下来的翻转。
板书ẋ = ẏ = ż = 0:y = x,z = x²/β,x(ρ − 1 − z) = 0
→ 原点 O;C± = (±√(β(ρ−1)), ±√(β(ρ−1)), ρ − 1)
心算ρ = 28:8/3 × 27 = 72,√72 ≈ 8.49 → C± = (±8.49, ±8.49, 27)
板书原点扔掉 xz、xy:λ = −β;λ² + (σ+1)λ + σ(1−ρ) = 0
两根之和 −(σ+1) < 0;两根之积 σ(1−ρ):ρ > 1 变负 → 一正一负,鞍点
“刚才停下来的点,能不能不积分,直接从方程里找出来?”
O 是静止导热,C± 是定常卷,正负是转向;(x, y) → (−x, −y) 对称,所以成对。原点附近 xz、xy 是小量乘小量,扔掉就是线性化,z 自己分出去。ρ = Ra/Rac 这样归一化,就是为了让阈值落在 1。
ρ = 1,原点从稳定变成鞍点,C± 诞生。
| ρ | 原点 | C± | 看到的 |
|---|---|---|---|
| < 1 | 稳定:积 > 0,两根皆负 | 不存在 | 静止导热 |
| = 1 | 一根过零:叉式分岔 | 诞生 | 对流起来 |
| 1 ~ 24.74 | 鞍点 | 稳定;ρ > 1.35 起是复根,螺旋收拢 | 定常卷 |
| > 24.74 | 鞍点 | 一对复根穿虚轴,失稳 | 停不下 |
13.926 同宿爆炸,生出的混沌集不吸引;24.06 起混沌吸引子与稳定 C± 共存,去哪看初值(亚临界)
对着第 16 页四格读:0.5 一个点;10 原点空心、两条轨道螺旋落进 C±;24.5 一条在两叶间游荡、一条困在 C+ 旁;28 三个点全空心。
第 17 页分岔图的纵轴:固定 ρ,把 z 每个波峰竖着点上去。ρH 以下那一列收到 ρ − 1,正是 C± 的高度:虚部让轨道绕着转出峰,负实部让峰逐圈收拢。带在 ρ ≈ 23.8 就出现(23.8 到 24.06 是长暂态),比 ρH 早。
板书λ³ + a₂λ² + a₁λ + a₀ = 0
a₂ = σ+β+1,a₁ = β(σ+ρ),a₀ = 2σβ(ρ−1),ρ > 1 全正
全正 ⇒ 没有 λ ≥ 0 的实根 ⇒ 失稳只能一对复根从 ±iω 穿过:Hopf
代 λ = iω:虚部 ω² = a₁,实部 a₂ω² = a₀ ⇒ a₂a₁ = a₀
ρH = σ(σ+β+3)/(σ−β−1) = (10 × 47/3)/(19/3) = 470/19 ≈ 24.74
此时分解为 (λ + a₂)(λ² + a₁):ω = √(8/3 × 34.74) ≈ 9.62,第三根 −a₂ = −41/3
“一直加热,定常卷什么时候站不住?”
系数全正挡住的只是实根:反例 λ³ + λ² + λ + 2,实根约 −1.35,三根之和 −1,复根实部 +0.18。根随 ρ 连续地动,到右半平面必须过虚轴;a₀ > 0,λ = 0 不是根,只能在 ±iω 成对穿。分母 σ − β − 1 说明为什么要 σ > β + 1。
亚临界:穿越时没有小极限环接住,轨道一离开 C± 就跳到远处的吸引子。
第一条:停不下,ρ = 28 时三个不动点全不稳。
心算a₂ = 41/3 ≈ 13.67 a₁ = 8/3 × 38 ≈ 101.3 a₀ = 160/3 × 27 = 1440
根:−13.85,0.094 ± 10.19i
- ✓ 和 = −a₂:−13.85 + 2 × 0.094 = −13.67 = tr J
- ✓ 积 = −a₀:13.85 × (10.19² + 0.094²) ≈ 13.85 × 104 ≈ 1440
- ✓ Routh–Hurwitz:a₂a₁ ≈ 1385 < a₀ = 1440,差 55 → 复根实部 > 0
- ✓ 反推实部:a₂a₁ − a₀ = −2α[(r − α)² + ω²] → α ≈ 55 / (2 × 293) ≈ 0.094
- ✓ 原点:λ² + 11λ − 270 = 0 → (−11 ± √1201)/2 = +11.83,−22.83;连 −β,和 −13.67 = tr J
三个系数就够验算,不用解三次方程。Vieta:a₂ = −(根之和) = −tr J,a₀ = −(根之积) = −det J。
ρ 每加 1,a₀ 涨 160/3 ≈ 53,a₂a₁ 只涨 41/3 × 8/3 ≈ 36,所以一过 ρH 就一直是 a₀ 大。
两个不动点的特征值加起来都是 −13.67。先记下这个数:第 23 页它是 tr J。
截面与一维映射
板书平面流线不交叉 → 有界轨道只能落到不动点或闭轨(Poincaré–Bendixson)→ 混沌至少三维
截面 z = ρ − 1 = 27,只记上行:Pn+1 = F(Pn)
心算T = 3000 内 3992 次 → 一圈 ≈ 3000/3992 ≈ 0.75 个时间单位
草图xn → xn+1 四段;门槛 |x| ≈ 13.25:内侧留叶、下一圈更往外;外侧换叶,越过得越少落得越远
蛛网 −12.2 → −12.8 → −14.0 → 13.3 → −15.3 → 11.4
留叶 56.7%;换后再换 47%;最长连换 9 次。|F′| > 1 处处 ⇒ 映射的任何不动点都不稳定
“三个不动点都站不住,轨道在两叶之间怎么换?”
竖一块平面,轨道每从同一侧穿过一次记一个点,其余全扔:三维的流变成平面上的映射,时间换成“第几圈”。每一叶是一张薄片,切过平面是一条细线,细到看不出宽度,就是 DKY = 2.06。
一个点是一步,不是一个位置。0→1→2 沿绿色往外爬到门槛;3 是 13.3,只越过 0.06,被甩到对面最外圈 −15.3;4 越过 2,反而落到右叶中心附近的 11.4。截面降到一维就不受“流线不交叉”的限制,点一下一下跳,映射上可以有混沌。
近邻每圈乘 |F′| > 1;“乘多少”变成一个数就是 Lyapunov 指数,要算它先在任意一点线性化(下一页)。
三维的流压成一条一维映射,映射处处拉伸。
Jacobian 与 Lyapunov 指数
板书δu̇ = J(u) δu,Jij = ∂fi/∂uj J =−σσ0ρ − z−1−xyx−β
逐行:σ(y−x) → −σ, σ, 0;xρ − xz − y → ρ−z, −1, −x;xy − βz → y, x, −β
读三次:不动点上常数 → 特征值(板块 2,代 0 即原点矩阵)· 对角线 tr J 与点无关 · 沿轨道每点不同 → 局部指数、QR
“轨道上任意一点旁边差一点点,这一点点下一刻怎么变?”
J 的第 i 行回答:第 i 个变量的变化率对 x、y、z 各多敏感。线性项求导得常数,xz、xy 求导留下 x、y、z,所以轨道走到哪 J 就是哪个矩阵。
J 里有 x、y、z,所以它随轨道上的点变。
板书d/dt ln|δu| = e·J e,e = δu/|δu|
例:J = [0 1; 0 0](剪切),特征值 0, 0;e = (1, 1)/√2 → e·J e = ½ > 0
Lorenz 沿吸引子:平均 0.907 = λ₁,标准差 4.25,51% 的时刻 < 0;J 最大实部特征值平均 1.65 ≠ λ₁
“轨道走到这一点,扰动在这里长得多快?”
|δu|² 求导得 2δu·Jδu,除以 2|δu|² 就是 e·Je。只给一个点不够,还要说扰动指向哪。特征值说“一直乘同一个矩阵,最后谁赢”;e·Je 说“此刻这个方向怎样”。下一刻矩阵换了,本征方向也换了。
窗口 τ 上平均 = 有限时间指数:τ = 0.5 标准差 2.60,43% 的窗口在缩;τ → ∞ 收拢到 λ₁。图上红色在两叶交界与外缘。
局部指数随点、随方向跳,只有长期平均才是 λ₁。
板书λ = lim (1/t) ln(|M(t)δu₀| / |δu₀|),M′ = JM,M(0) = I
线段 eλ₁t 面积 e(λ₁+λ₂)t 体积 e(λ₁+λ₂+λ₃)t
板书例:每步乘 diag(2, ½),λ = ±ln 2
v₁ = (1, 0) → (2ⁿ, 0);v₂ = (1, 1) → (2ⁿ, 2⁻ⁿ),长度 ≈ 2ⁿ,又量到 +ln 2
夹角 ≈ 4⁻ⁿ(n = 10 → 10⁻⁶);减掉 v₁ 方向 → (0, 2⁻ⁿ),−ln 2 出来:这一步就是 Gram–Schmidt,即 QR
λk = (1/(nΔt)) Σ ln|Rkk| = ⟨qk·J qk⟩,Δt = 1
“J 在不动点上看特征值就行,沿着轨道为什么不行?”
每走 Δt 乘一次 I + J(u)Δt,沿轨道是一长串各不相同的矩阵,没有共用的本征方向。随手跟三个向量,全倒向 λ₁:第 22 页不做 QR,t = 30 时夹角 3×10⁻¹⁴(心算 e−(λ₁−λ₂)t = e−30 ≈ 10⁻¹³),三条斜率 0.98 / 1.01 / 1.05 全是 λ₁;做 QR 后分开成 0.92 / −0.003 / −14.58。
为什么每 Δt = 1 就做:夹角到 10⁻¹⁶ 就丢,ln(10¹⁶)/0.9 ≈ 41,和双精度预报极限是同一个数;长度到 e709 溢出。
第二条:一个方向在拉伸,λ₁ ≈ 0.9。
板书Σ qk·J qk = tr(QᵀJQ) = tr J = −(σ+1+β) = −41/3 ≈ −13.67,每一瞬间
λ = (+0.904, 0, −14.57):λ₂ = 0 沿流方向;λ₃ = −13.67 − 0.90 = −14.57
心算DKY = 2 + 0.904/14.57 ≈ 2.06;体积每个时间单位乘 e−13.67 ≈ 10⁻⁶;实测 Σλ − tr J = 2×10⁻⁹,不拟合
回扣截面一圈 0.75:0.9 × 0.75 ≈ 0.68,e0.68 ≈ 2 → 映射每圈把近邻拉开约 2 倍
“三个指数加起来是多少?能不能不算?”
换一组正交坐标轴不改迹。Lorenz 特殊在对角线 −σ、−1、−β 是粘性和两项热扩散,没有变量:搬运只挪体积,耗散才缩体积。和式守的是变分方程、积分精度、QR 记账;三个数怎么分它管不到,λ₁ 单独的依据是第 26 页系综斜率 0.875。
回扣那一行是 Abramov 公式:截面映射的指数 = λ₁ × 平均回归时间;拿 fig14 的截面数据拟合局部斜率核过,平均 ln|F′| = 0.68。停不下、跑不掉(备用 2)、体积为零 → 奇怪吸引子。
第三条:体积缩到零,Σλ = tr J = −13.67。
精度估算
板书|Δ(t)| ≈ δ eλ₁t ⇒ T = ln(1/δ)/λ₁;δ ÷ 10 ⇒ T + ln10/λ₁ ≈ 2.55
| 例子 | 位数 | 心算 | 实测 | 页 |
|---|---|---|---|---|
| 封面 δ = 1e−5 | 5 | 12.7 | 13.6 | 1 |
| 开场 rtol 每紧 1000 倍 | 3 | 7.6 | 7.8、8.4 | 3 |
| 系综 δ = 1e−9 | 9 | 23 | 中位 23.4 越过 1 | 26 |
| rtol 1e−4 → 1e−12 | 8 | 20.4 | 5.69 → 26.88,+21.2 | 27 |
| rtol 1e−6 对 1e−9 | 3 | 7.6 | 10.5 → 18.3,+7.8 | 31 |
| 双精度 1e−16 | 16 | 41 | 40.76 | 28 |
“算得更准,能多算多久?”
第 25 页先跑 ε = 1e−6;再问“缩小一百万倍到 1e−12,能多看多久?”猜完再扫:每条线平移,6 × 2.55 ≈ 15,不是一百万倍的时间,是加 15。
第 26 页:16 个吸引子上的状态各推 4 个方向 1e−9,共 64 对;读三段:对齐、直线、在 20 左右走平。斜率 0.875 对 QR 的 0.904,差 3%,没有共用代码。第 27 页:rtol 也是 δ;拟合斜率 1.131 对 1/λ₁ = 1.107,差 2%(有效初始误差与 rtol 同阶,不严格成正比)。
老实交代:单个起点相邻间隔在 0.2 到 7 之间跳,所以要多起点取中位。
精度乘 10,时间只加 2.55。
板书ε = 2⁻⁵² ≈ 2.2×10⁻¹⁶:一个数能存多细 | rtol:每步截断误差的要求,建在 ε 之上
心算1e−12 离地板 4 位 → 4 × 2.55 ≈ 10 → 上限 ≈ 41
每步几百次乘加 × 几千步 → 实际地板约 1e−14;scipy 遇 rtol < 100ε 抬回 → 参考解停在 1e−13。1e−13 对参考解(只差 atol 1e−15 / 1e−16)也在 t = 33.3 脱钩
rtol 和双精度是两回事。就算算法完美,初值只能存到 1e−16,t > 41 算的就不是那个初值的轨道:“哪条对”在双精度下没有答案。到这里全是坏消息。
t > 41,单条轨道在双精度下没有答案。
板书p 阶:每步误差 ∝ hp+1 ⇒ h ∝ tol1/p ⇒ nfev ∝ s · tol−1/p
- RK4:h ÷ 2 → 误差 ÷ 16
- 收紧 10⁶:RK45 106/5 ≈ 16(实测 15.7);DOP853 106/8 ≈ 5.6(实测 5.8)
- DOP853 1e−4 → 1e−12:步数 × 108/8 = 10,时间 5.7 → 26.9
- 5 阶对 8 阶:每个数量级 101/5 − 1/8 = 100.075 ≈ 1.19(实测 1.18);交汇在 1e−4 到 1e−6;误差 1e−10 时 6100 对 1440 次
心算算力 × 10:Lorenz(DOP853)时间 +20;Kepler(Verlet 误差 ∝ h²t)时间 × 100
第 28 页算账:8 阶方法步数随 rtol 的 −1/8 次方涨,8 个数量级正好 10 倍。10 倍的计算换来 5.7 到 26.9;再要 20 个时间单位得再收紧 8 个数量级,双精度已经到头。
第 38 页 Kepler(e = 0.6,RK4 步长取 Verlet 的 4 倍,同等代价):Verlet 能量误差 7.4×10⁻⁴ 跑 1000 周期不涨,RK4 线性漂移,第 33 周期超过;可信时间对代价是幂律,斜率 2.0 / 2.5。
精度换时间:守恒是乘法,混沌是加法。
| RK4 | RK45 | DOP853 | |
|---|---|---|---|
| 阶 p | 4 | 5 | 8 |
| 每步求 f 次数 s | 4 | 6 | 12 |
| 步长 · 误差估计 | 固定 · 无 | 自适应 · 5−4 | 自适应 · 5 与 3 |
| 稳定域负实轴交点 | −2.785 | −3.31 | −6.39 |
| 稳定上限 h = 交点 / 21.85 | 0.127 | 0.151 | 0.293 |
| 刚性代价 s / 交点 | 1.44 | 1.81 | 1.88 |
嵌入式:同一组 ki 两套权重,两个解之差就是本步误差估计,几乎不花额外 f;err ≤ 1 接受,下一步 h ← 0.9 h err−1/p。
被问“为什么用 DOP853”:rtol = 1e−4 时两者 f 次数持平,容差越紧 DOP853 越划算。刚性时步长被稳定域卡住,s / 交点三者差不多,阶数换不来步数。
积分器决定代价,λ₁ 决定 2.55。
板书ẏ = λy:真解一步 × ehλ,格式一步 × R(hλ);z = hλ 读作“一步跨过几个时间尺度”
RRK4(z) = 1 + z + z²/2 + z³/6 + z⁴/24;稳定域 |R| ≤ 1,负实轴交 −2.785
吸引子上 J 的谱:Re λ ∈ [−21.85, +10.55],|λ| ≤ 23.0,36% 实部 > 0。最快衰减模 λ = −21.85(时间尺度 0.046):
| h | hλ | ehλ | R(hλ) | 读法 |
|---|---|---|---|---|
| 0.01 | −0.22 | 0.8037 | 0.8037 | 准 |
| 0.12 | −2.62 | 0.073 | 0.78 | 稳定但不准 |
| 0.15 | −3.28 | 0.038 | 2.03 | 出界,10 步放大约 1000 倍 |
心算RK4 上限 2.785/21.85 ≈ 0.127(数值 0.1253);实际 h ≈ 0.01,差一个数量级
| rtol = 1e−4,负实轴 | 精度域 | 衰减模 hλ | 稳定域 |
|---|---|---|---|
| RK45 | −0.63 | −1.81 | −3.31 |
| DOP853 | −1.81 | −4.57 | −6.39 |
DOP853 最大步占稳定上限:1e−4 时 0.84 → 1e−13 时 0.07
增长模(备用 6 的红点)永远在稳定域外,那是格式在正确复现真实的增长;要求全谱 |R| ≤ 1 只会得到 h = 0。稳定域只约束衰减模。
衰减模的振幅早衰减没了,误差估计看不见它,控制器不管它的精度,把它带出精度域,但还在稳定域里:步长由慢模的精度定。
刚性反例(备用 9):y′ = −1000(y − cos t),T = 10,步数 ≈ 10 × 1000 / 交点:RK45 3020(实测 3025),DOP853 1560(实测 1567),与 rtol、阶数都无关;隐式 Radau 只要 112 次。
步长由慢模的精度定,衰减模只要还在稳定域里就没事。
板书稳定性 Lorenz 上不是瓶颈:h 离上限一个数量级
→ 精度 决定代价;阶数在这里值钱
→ λ₁ 决定可信时间:每位 +2.55,与积分器无关
→ 双精度 1e−16 天花板 41
推论:收敛阶要在 t ≪ 1/λ₁ 的窗口里验,过了可预报时间误差饱和成水平线(备用 10)
被问“步长再小一点不就行了?”(备用 4):数值稳定性是方法加步长的性质,步长能改;Lyapunov 指数是流的性质,步长改不了。步长变小只减少注入的误差量,这些误差随后照样按 eλt 放大。
被问“红色区域减步长有没有用?”:有用,理由是少往那里注入误差,不是压住 λ。
什么可信
对图30 影随:数值轨道紧跟另一条真解;一致双曲才是定理,Lorenz 含原点不是(Tucker 2002)
对图31 中心实验:rtol 1e−6 / 1e−9 / 1e−13 → 10.5 / 18.3 / 33.3 脱钩;Lorenz 映射三色重合,厚度 8.6×10⁻⁵
对图32 不变密度:三个 rtol 间总变差 0.0099 · 33 吸引子:可信的是形状和统计
“单条轨道不可信,那还有什么可信?”
第 31 页多停:左边问“t 时刻你在哪”,取决于初值,被 eλ₁t 放大;右边问“从这么高的峰出发,下一个峰多高”,是方程本身的性质。映射斜率绝对值处处大于 1:左支 +1.1 到 +2.6,右支 −1.15 到 −4.4。
同一组数据,按时间看是废品,按映射看完好。
对图35 判据三行:保守(不变量,长时间可信)· 耗散非混沌(收敛到对的吸引子,可信)· 耗散混沌(无结构可保,看统计量)
对图36 截面:k 个点(收拢)· 闭曲线(刚性转动,误差线性涨)· 细线(指数散开)
板书37 哈密顿守三样:dH/dt = HqHp − HpHq = 0;tr J = Hpq − Hqp = 0;MᵀΩM = Ω → 指数 ±λ 成对。Lorenz:没有 H;tr J = −13.67;3 维配不成对
“换一类系统,答案还一样吗?”
第 36 页心算:ρ = 350 周期 0.39,λ₂ = −0.73,每周期乘 e−0.28 ≈ 0.75;ω = 2/5 每次转 144°,5 步闭合;ω = 0.618 每次转 222.5°(反着 137.5°,黄金角),永不闭合,就是李萨如图。
第 37 页:守恒量沿轨道是常数且连续;吸引盆里每条轨道都贴到吸引子上,混沌轨道走遍吸引子,于是它在整个吸引盆上是常数,什么也区分不了。
守恒量记得初值,吸引子让轨道忘掉初值。
对图38 Kepler:算力 × 10 → 可信时间 × 100(幂律);Lorenz:+20(对数)
对图39 声学:Yee FDTD 里 E、H 错开半格 = 蛙跳 = 辛(第一行);声湍流报谱、相关函数、统计矩(第三行)
板书40 右栏最后一句:守恒看不变量,混沌看统计量
第 38 页 (c) 老实讲:同等代价下 RK4 的线在 Verlet 上面;辛格式买到的不是更准,而是不漂,跑得越久越占优。
第 40 页把黑板擦一遍:一,没有守恒量,体积以 −13.67 缩;二,精度乘 10 只多 2.55,天花板 41;三,Lorenz 映射、不变密度不随 rtol 变。
守恒系统看不变量,混沌系统看统计量;精度换时间,前者乘法,后者加法。
被追问
数字汇总
| 闭式与不动点 | |
| tr J | −13.6667 |
| C± | (±8.485, ±8.485, 27) |
| ρH · Hopf 穿越频率 ω | 470/19 = 24.737 · 9.62 |
| 原点特征值 | +11.83, −2.67, −22.83 |
| C± 特征值 | −13.85, 0.094 ± 10.19i |
| 同宿爆炸 · 混沌集变吸引子 | 13.926 · 24.06 |
| Rac 自由滑移 · 刚性板 | 657.5 · 1708 |
| 数值 | |
| J 的谱 Re λ · 实部为正 | [−21.85, 10.55] · 36.3% |
| RK4 稳定步长上限 | 0.1253 |
| 交点 RK4 / RK45 / DOP853 | −2.785 / −3.31 / −6.39 |
| DOP853 最大步占稳定上限 | 0.84(1e−4)→ 0.07(1e−13) |
| Lyapunov 与可预报性 | |
| λ₁ / λ₂ / λ₃(T = 2000) | 0.9038 / −0.0004 / −14.570 |
| Σλ − tr J | 2.17×10⁻⁹ |
| DKY · 倍增时间 | 2.062 · 0.767 |
| λ₁ 系综 · 容差斜率 | 0.8750 · 0.8839 |
| 局部指数 均值 · 标准差 · 为负 | 0.907 · 4.25 · 51% |
| 双精度预报极限 · 不做 QR 的夹角(t = 30) | 40.76 · 3×10⁻¹⁴ |
| 统计与对照 | |
| 映射厚度 · 密度总变差 | 8.6×10⁻⁵ · 0.0099 |
| 截面 次数 · 留叶 · 门槛 | 3992 · 56.7% · 13.25 |
| Kepler 能量误差 Verlet · RK4 | 7.4×10⁻⁴ · 2.2×10⁻² |
| ρ = 350 周期 · 每周期收缩 | 0.3885 · 0.75 |
数字出自 uv run lorenz63 info、report/figures 与 report.md;截断代价 (ρ−1)/ρ 与每圈约 2 倍是板书心算。页码是 slides.html 页脚显示的编号,备用页显示为“备用 n”。