当我们有一个代表真实物理系统并且表现出混乱的数值模型(例如流体动力学模型、气候模型)时,我们如何知道该模型正在按应有的方式运行?我们不能直接比较两组模型输出,因为即使初始条件的微小变化也会极大地改变单个模拟的输出。我们无法将模型输出直接与观察结果进行比较,因为我们永远无法足够详细地了解观察结果的初始条件,而数值近似无论如何都会导致微小的差异,并会在系统中传播。
这个问题的部分灵感来自 David Ketcheson关于单元测试科学代码的问题:我对如何实现此类模型的回归测试特别感兴趣。如果初始条件的微小变化会导致输出的重大变化(这可能仍然是对现实的充分表示),那么我们如何将这些变化与修改参数或实施新的数值程序引起的变化区分开来?