高阶泰勒展开误差传播 返回
数学与数值分析

高阶泰勒展开误差传播模拟器

输入测量公式,超越GUM一阶传播:通过4阶泰勒展开计算输出的均值偏移、方差修正、偏度与峰度,并与蒙特卡罗参考值(JCGM 101思想)对比,判断正态近似是否可靠。

如需基于蒙特卡罗的不确定度传播基础讲解,请见 不确定度传播与蒙特卡洛分析工具
测量公式与输入量
可用:x, y, + − * / ^ ( ), sin cos tan atan exp log sqrt abs, pi, e。不含y时按单变量处理。
x 的均值 μx
输入量 x 的最佳估计值
x 的标准不确定度 u(x)
正态分布 N(μx, u²) 的标准差
y 的均值 μy
输入量 y 的最佳估计值
y 的标准不确定度 u(y)
正态分布 N(μy, u²) 的标准差
假定各输入相互独立且服从正态分布 N(μ, u²)(GUM/JCGM 101的代表性情形)。
计算结果
f(μ)(名义值)
均值偏移 Δ(2阶+)
u_c 一阶(GUM)
u_c 4阶泰勒
偏度 γ₁(3阶+)
超额峰度 γ₂(4阶+)
u_c 蒙特卡罗参考
正态近似可靠性
各阶收敛 — 均值偏移・u_c・偏度・峰度
各阶泰勒多项式的统计量;最右侧MC为蒙特卡罗参考值(JCGM 101)。一阶时Δ、γ₁、γ₂恒为0——这正是正态近似本身。
输出分布 — 蒙特卡罗 vs 一阶正态近似
直方图=蒙特卡罗得到的实际分布。曲线=GUM一阶正态近似 N(f(μ), u₁²)。偏差越大,线性化越危险。
理论与主要公式

\( y = f(\mu) + \sum_i \frac{\partial f}{\partial x_i}\delta_i + \frac{1}{2}\sum_{i,j} \frac{\partial^2 f}{\partial x_i \partial x_j}\delta_i\delta_j + \cdots \)

测量方程在均值附近的泰勒展开(δᵢ = xᵢ − μᵢ)。本工具用数值微分构建含交叉项在内的全部4阶项。

\( u_c^2 \approx \sum_i \left(\frac{\partial f}{\partial x_i}\right)^2 u_i^2 \qquad \Delta = E[y] - f(\mu) \approx \frac{1}{2}\sum_i \frac{\partial^2 f}{\partial x_i^2} u_i^2 \)

左:GUM一阶(线性)不确定度传播律。右:二阶项产生的输出均值偏移,在非线性测量中表现为系统性偏差。

\( \gamma_1 = \frac{E[(y-\bar y)^3]}{u_c^3} \qquad \gamma_2 = \frac{E[(y-\bar y)^4]}{u_c^4} - 3 \)

偏度γ₁(主要来自3阶项)与超额峰度γ₂(主要来自4阶项),正态分布时均为0。泰勒多项式的矩用12点Gauss–Hermite求积精确计算。

对话理解:为什么要展开到4阶?

🙋
我做不确定度预算时一直用GUM公式 \(u_c^2=\sum (\partial f/\partial x_i)^2 u_i^2\)。什么时候它会不够用?
🎓
公式接近线性、相对不确定度较小时它完全够用。但那个公式是一阶泰勒展开——把测量方程换成了切平面。对弯曲明显的方程它会漏掉三件事:输出均值会偏移、离散度的估计会改变、分布会偏离正态。
🙋
均值偏移有点反直觉。输入围绕μ对称散布,输出的均值却会偏离f(μ)?
🎓
罪魁是二阶项 \(\tfrac12 f''u^2\)。以 f=x²、x=1±0.1 为例,输出均值是1.01而不是1。曲率把对称的输入散布映射成不对称的输出。实验室里它表现为"取平均也消不掉"的系统偏差,比如校准曲线弯曲的仪器。
🙋
3阶和4阶该怎么理解?需求里提到了偏度和峰度。
🎓
3阶项产生分布的左右不对称——偏度γ₁。分布偏斜后,k=2区间就不再是"95%"。4阶项决定尾部厚度——超额峰度γ₂。γ₂为正意味着极端离群值比正态分布预测的更常见。所以3、4阶告诉你扩展不确定度U=k·u_c的解释还能信多少。
🙋
展开到4阶就一定能和蒙特卡罗一致吗?
🎓
不一定——这是实践中最重要的教训。比如 f=eˣ、u=0.3 时,4阶的u_c反而比一阶离参考值更远,因为截断泰勒级数的矩不是单调收敛的。所以本工具始终并排显示JCGM 101的蒙特卡罗参考值。泰勒与MC不一致时,应该相信MC。
🙋
正态近似可靠性徽章是根据什么判断的?
🎓
蒙特卡罗分布的|γ₁|和|γ₂|。经验准则:|γ₁|≤0.3且|γ₂|≤0.5时正态近似在实用上安全;|γ₁|>0.5或|γ₂|>1时应改用蒙特卡罗(JCGM 101)重新评估区间。阈值是惯用值,要求高时请自行收紧。

什么是高阶泰勒展开误差传播

对被测量 y = f(x₁, x₂, …),常规不确定度评估把测量方程在均值附近线性化(一阶泰勒展开),用灵敏系数与输入不确定度合成(GUM:JCGM 100)。当方程非线性较强或输入相对不确定度较大时,线性化无法正确再现输出分布的均值、方差与形状。把展开扩展到2、3、4阶,会依次出现"均值偏移与方差修正""偏度(不对称性)""峰度(尾部厚度)"的统计修正。本工具在同一画面上量化这一层级,分解显示每一阶的贡献大小。

数值方法与前提条件

输入公式由安全的表达式解析器解释,在均值附近用5点中心差分数值计算至4阶的偏导数(双变量时含交叉项 f_xy, f_xxy, f_xyy, f_xxyy, f_xxxy, f_xyyy),构建4阶泰勒多项式。对该多项式,在独立正态输入 N(μᵢ, uᵢ²) 下的均值、方差、偏度、峰度用12点Gauss–Hermite求积计算——该求积对次数不超过23的多项式是精确的,因此除泰勒截断外不引入数值误差。同时并行执行相同条件的蒙特卡罗计算(Box–Muller,默认20万样本)作为参考。前提:①输入相互独立;②各输入服从正态分布;③公式在均值附近光滑(4次可微)。

工程实践中的用途

典型场景是校准与检验的不确定度预算。像圆柱体积 V=πr²h 这类乘积/幂形式的公式,相对不确定度超过百分之几后二阶均值偏移就不可忽略。比值 R=V/I 与倒数 1/x 在分母不确定度较大时分布右偏(γ₁>0),k=2区间变得不对称。指数/对数响应(热电偶电动势、衰减率、pH等)偏度峰度都较大,沿用正态近似会高估区间的置信水平。用本工具确认与MC的差距,对危险情形改用JCGM 101的蒙特卡罗评估,是务实的用法。

常见误解与注意事项

"阶数越高一定越准"是误解:由截断泰勒级数构造的矩不单调收敛,u=0.3的eˣ预设就能重现4阶暂时比1阶更差的情形。本工具的高阶修正假定输入独立且正态;均匀分布输入或相关输入需要不同的矩代数,请使用含协方差项的扩展(GUM 5.2)或蒙特卡罗法。另外,含绝对值或阈值(存在不可微点)的公式会破坏数值微分,请确认均值附近光滑,并留意错误提示。

常见问题

与一阶(GUM)误差传播有什么区别?

GUM标准传播律基于测量方程的线性化(一阶泰勒展开)。本工具展开到4阶,量化线性化原理上无法体现的均值偏移(2阶)、方差修正、偏度(3阶)与峰度(4阶),并按阶分解,便于看清哪种效应起主导作用。

与蒙特卡罗法(JCGM 101)是什么关系?

JCGM 101规定用蒙特卡罗法直接传播输入分布。本工具始终并行执行相同条件的蒙特卡罗计算,展示各阶泰勒统计量是否向参考值收敛。两者不一致时请采用蒙特卡罗结果。

偏度和峰度该怎么用?

用于检验扩展不确定度 U=k·u_c 解释的有效性。γ₁、γ₂都接近0时,"k=2约覆盖95%"成立。一旦|γ₁|>0.5或|γ₂|>1,包含区间将不对称且厚尾,建议用蒙特卡罗评估区间(如JCGM 101的最短包含区间)。

能更换输入分布或加入相关性吗?

当前版本支持独立正态输入。均匀/三角分布或输入间相关会改变高阶矩代数,暂不支持;此类情形请用蒙特卡罗法(自行计算或符合JCGM 101的软件)评估。

数值微分的精度可靠吗?

步长按尺度自动设定(|μ|的1%),用5点差分格式求至4阶导数。实现已对已知解验证:线性公式的高阶项精确为0,f=x²的均值偏移与方差与解析值一致。在不可微点或奇点(分母为0)附近结果会不稳定,请留意错误提示。