形式陈述
高阶展开里的嵌套导数越来越多,怎样系统地检查数值方法的阶数?对自治常微分方程 公理库 常微分方程 Ordinary differential equation · ODE 未知函数及其单一自变量导数组成的方程。 y ′ = f ( y ) ,这里用有限、无标号、非平面的根树 公理库 有根树与祖先关系 Rooted tree · Ancestor relation in a rooted tree · Parent and depth in a tree 在树中选定根后,由唯一根路径定义父子、祖先、深度与子树。 形状记录微分如何嵌套;孩子的排列不构成新的树,求和时每个非同构的非空根树只取一次。单节点树 ∙ 对应 F ( ∙ ) = f ;把若干子树接到新根,定义
F ( [ τ 1 , … , τ m ] ) = f ( m ) ( F ( τ 1 ) , … , F ( τ m ) ) . 式中的 f ( m ) 是反复求多元导数 公理库 多元函数导数 Derivative in several variables · Jacobian derivative Fréchet 导数在有限维 Euclidean 坐标中的 Jacobian、梯度与方向导数表示。 得到的对称 m -线性映射;逐阶讨论假定相关阶数的连续导数存在。上面递归定义的量称为初等微分。树的节点数记为 | τ | ,对称因子 σ ( τ ) 计入相同分支的排列重复:σ ( ∙ ) = 1 ,若根的不同子树形状分别出现 m 1 , … , m r 次,则 σ ( [ τ 1 , … , τ m ] ) = ( ∏ i = 1 r m i ! ) ∏ j = 1 m σ ( τ j ) 。本文采用
B ( a , h f , y ) = y + ∑ τ h | τ | σ ( τ ) a ( τ ) F ( τ ) ( y ) 的 B-级数约定。精确流的权重为 a ( τ ) = 1 / γ ( τ ) ,其中 γ ( ∙ ) = 1 ,γ ( [ τ 1 , … , τ m ] ) = | τ | ∏ j γ ( τ j ) 。这些是用于逐阶比较的形式级数;收敛仍需额外正则性与范围条件。
直觉
根的子节点数告诉我们对 f 求几阶导数,子树告诉我们往导数中放什么。三节点链对应 f ′ ( f ′ f ) ,一根接两个叶子的树对应 f ″ ( f , f ) ;两者节点数相同,微分结构不同。
由多元 Taylor 展开 公理库 多元 Taylor 定理 Multivariable Taylor theorem 用各阶导数给出多元函数的局部多项式展开及余项控制。 ,精确流到三阶为
y ( h ) = y + h f + h 2 2 f ′ f + h 3 6 { f ″ ( f , f ) + f ′ ( f ′ f ) } + O ( h 4 ) . 链的 γ = 6 , σ = 1 ,双叶树的 γ = 3 , σ = 2 ,都产生 1 / 6 ,但对数值方法必须分别匹配,不能只比较一个三阶总数。
例子与边界
从树得到 RK 三阶条件
对RK 方法 公理库 Runge–Kutta 方法 Runge-Kutta method · RK method 用一步内多个相互依赖的 stage 统一显式与隐式 Runge–Kutta 方法,并以 Butcher tableau、阶条件和稳定函数刻画结构。 记 c = A 1 ,从阶段展开可得前三阶条件
b T 1 = 1 , b T c = 1 / 2 , b T ( c ⊙ c ) = 1 / 3 , b T A c = 1 / 6. 最后两个分别对应双叶树和三节点链。显式中点的 A = ( 0 0 1 / 2 0 ) 、b = ( 0 , 1 ) T 、c = ( 0 , 1 / 2 ) T 满足前两式;但 b T ( c ⊙ c ) = 1 / 4 、b T A c = 0 ,两条三阶条件都不成立,所以一般只有二阶。
若只用线性测试方程 f ( y ) = λ y ,则 f ″ = 0 ,所有分叉树的初等微分都消失。某个方法即使在线性问题上表现为高阶,也可能没有通过非线性分叉树条件。这是单一测试方程不能认证一般阶数的原因。
推论与应用
计算高阶条件时,枚举目标阶数以内的非同构根树,递归计算阶段权重,与 1 / γ 比较。固定一棵树时可复用子树结果;真正增长的成本来自树的数量随阶数迅速增加。软件计算能辅助验证系数,树的归一化约定仍须与公式一致。
B-级数还组织方法复合与修正方程,但并非所有几何积分器都由普通 B-级数表示。分裂、约束及特殊流形结构可能需要扩展的代数对象。
单元练习:四种结构分别核验
对谐振子取 h = 1 / 2 。写出显式 Euler、先动量后位置的辛 Euler 与隐式中点矩阵,检查辛性、能量和可逆性,再解释修正方程的首项。另用 RATTLE 处理单位圆初值 ( q , p ) = ( ( 1 , 0 ) , ( 0 , 1 ) ) 、步长 0.2 。
三个矩阵分别为 E = ( 1 1 / 2 − 1 / 2 1 ) 、S = ( 3 / 4 1 / 2 − 1 / 2 1 ) 、M = 1 17 ( 15 8 − 8 15 ) 。二维恒等式给出 E T J E = ( 5 / 4 ) J ,而 S T J S = M T J M = J 。
显式 Euler 每步能量乘 5 / 4 。辛 Euler 保持 H ~ = ( q 2 + p 2 − q p / 2 ) / 2 ,通常不保持原圆形能量,也不自身时间对称。隐式中点满足 M T M = I ,本例同时保辛、保能量、可逆,却仍有相位误差。显式 Euler 的修正向量场首项为 f − ( h / 2 ) f ′ f ;在 f ( y ) = A y , A 2 = − I 时是 A y + ( h / 2 ) y ,显示人为向外增长。
RATTLE 的答案为 q + = ( 0.96 , 0.2 ) 、p + = ( − 0.2 , 0.96 ) ,位置范数一、内积零。验收须逐项说清:保辛蕴含保体积,逆命题在高维不成立;时间对称性涉及 Φ − h = Φ h − 1 ;保能量只约束某个标量水平集;形式修正方程通常通过有限截断获得误差解释。
参考资料
Chartier, Hairer and Vilmart, Algebraic structures of B-series , Foundations of Computational Mathematics 10, 2010, pp. 407–427,树权重、复合与代入。
BSeries.jl, API reference , elementary weights, density, symmetry and order conditions,归一化与可计算阶条件。
Hairer, Nørsett and Wanner, Solving Ordinary Differential Equations I , 2nd ed., Springer, 1993, Chapter II,RK 树展开。