Answers:
您的问题是关于模型验证的问题。您可以通过搜索验证与确认找到方法众多资源和标准(1997年罗彻,2002年,2004年,奥伯坎普夫和2002 Trucano,Salari&Knupp 2000,的Babuska和奥登2004年),以及更广泛的话题不确定性量化。我不想详细说明方法,而是要强调一个在这个问题上持坚定立场的社区。
1986年,Roache,Ghia和White制定了《流体工程学报》中有关数值精度控制的编辑政策声明,该声明以
在计算流体动力学界以及更广泛的计算物理学领域中存在一个专业问题。即,需要对数值精度的控制更高的标准。
[...]这个问题当然不是JFE所独有的,在1980-81年AFOSRHTTM-斯坦福大学复杂湍流会议上,这个问题变得更加突出。该会议评估委员会的结论是,在该会议的大多数意见书中,无法评估和比较不同湍流模型的准确性,因为无法将物理建模误差与与算法相关的数值误差区分开来。网格。对于一阶精确方法和混合方法尤其如此。
他们得出的结论非常直接:
《流体工程杂志》将不接受任何报告流体工程问题的数值解决方案的论文,这些论文未能解决系统的截断误差测试和准确性估算的任务。
我们必须明确指出,固定网格中的单个计算将是不可接受的,因为无法从此类计算中推断出准确度估算值。而且,编辑者不会认为与实验数据的合理一致性足以作为准确性的证明,尤其是在涉及任何可调整参数的情况下,例如在湍流建模中。
在目前的版本中包含了一整套标准,并表示,在我看来,其他领域都应该立志匹配的标准。遗憾的是,即使在今天,在许多领域中也缺乏对模型验证重要性的认识。
不存在上述标准,可靠的误差估计往往花费很多比近似计算更多。
基本上有四种误差估计:
(i)理论分析证明数值方法是数值稳定的。这实际上并没有给出错误条,因为分析仅保证所产生的错误不会比输入参数中的量化错误更严重。对于大多数科学计算而言,这已经足够了,因为输入也仅是近似值,因此使用数值稳定方法所产生的误差并不比使用稍微不同(但未知)的输入更糟糕。尽管人们发现几乎没有任何应要求报告所产生的所谓的向后误差的实现,但大多数备受推崇的数值方法都伴随着数值停滞分析。
(ii)渐近误差估计。这些假设假定可以忽略所有误差(输入误差,舍入误差或离散误差是最常见的来源)的乘积(如果函数是非常非线性的,则可以质疑),并使用灵敏度分析来传播输入误差。与数值稳定性分析一起,还可以捕获舍入误差或离散误差的影响。所产生的误差线与它们所基于的假设的有效性一样真实。使用自动微分工具,误差估计的成本除近似成本外通常为1或2倍。因此,这种误差估计在实践中相当普遍。
[编辑]例如,Oettli-Prager定理为线性系统的解提供了易于计算的向后误差估计。敏感度分析表明,这些误差必须乘以矩阵逆的范数,可以使用Hager的估计量(内置在现代条件数估计量中)进行估计。
(iii)随机误差分析:(CESTAC,http://www.sciencedirect.com/science/article/pii/0378475488900705)通过用相应的随机变量重载所有操作来完成,该变量评估三组参数,然后添加人为的随机舍入误差。最后三个结果用于计算平均值和标准偏差的平方根(与平均值的偏差平方和除以2 = 3-1)。这给出了舍入误差部分的相当有用的精度估计。但是,这并未考虑离散误差,而离散误差通常是ODE和PDE计算中的主要误差。由于执行重载操作的开销,因此成本取决于编程语言。假设(几乎绝不是这种情况)过载不会造成时间损失,那么与仅计算近似值相比,结果加误差估计的成本是三分之一。
(iv)间隔分析:如果正确完成,这将为所有错误源提供严格的界限,但在简单情况下,它需要大量经验(或包含它的软件)才能以不会严重高估真实错误的方式进行操作。对于线性代数(例如,IntLab http://www.ti3.tu-harburg.de/rump/intlab/),可以使用良好的区间软件,如果尺寸较大,则成本约为6),并且可以进行全局优化(例如, ,COCONUT http://www.mat.univie.ac.at/~coconut/coconut-environment/; 可能比近似全局优化要贵得多,甚至要便宜,这取决于问题的特征)。但是,许多其他类型的问题很容易准确地进行近似处理(例如,将太阳系大行星的轨迹围住10年之久),这对于当前的间隔方法来说是完全无法实现的。
有点。数值分析人员得出的理论误差范围通常被高估了,在实践中可能没有用,因为它们可能包含在实践中难以获得的信息。一个很好的例子是普通方程解中数值误差的界限,您可以在Hairer和Wanner的书中找到它们。尼克·海姆(Nick Higham)的书《数值算法的准确性和稳定性》(书名可能略有出入)也为常见的数值运算和线性代数算法提供了一些误差范围。数值分析文献充斥着这样的界限。
间隔分析方法也已用于计算误差范围。这些方法很严格,并且往往提供比理论误差范围更强的误差范围,但是这些方法仍可能严重高估数值计算中的误差。据我所知,这些方法在全局优化中得到了最好的利用,但也可用于不确定性量化。阿诺德·诺伊迈耶(Arnold Neumaier)至少写了一本有关区间分析方法的书,并且更有资格对这一主题进行详细评论。除了潜在的高估问题外,区间分析方法还需要额外的计算基础结构,这些基础结构需要对现有的大型数值模拟程序包(例如PETSc,Trilinos,CLAWPACK / PyClaw等)进行改造。),包括区间算术和自动微分(针对基于Taylor的方法)。从我所看到的,虽然有一些,但那里没有很多许可的区间算术和自动微分程序包。即使这样,有时这些库的功能仍然有限。很难找到具有BLAS类功能的许可许可(LGPL或BSD类)间隔算术库。
后验误差估计可以更容易地获得,但并不严格。我最熟悉常微分方程的这些估计,但是它们也存在于许多用于计算偏微分方程解的方法中。
更广泛地说,来自不确定性量化的方法(例如使用多项式混沌展开,蒙特卡罗方法或其他采样方法)可用于量化由于输入参数变化而导致的计算不确定性。由于参数的变化,这些方法应该能够提供某种启发式的“错误条”,但不会给出严格的界限。
我认为在指定数字误差方面您绝对是正确的:计算科学在呈现其结果方面应该与基于实验的物理科学一样严格。在这一领域(在“不确定性量化”和“数值分析”的总括下),我们正在做大量的工作,我希望将来在某些时候讨论大多数计算结果时,会包括误差线。 。
除了其他答案,还有一些其他要考虑的方面。