math - 用于跟踪最坏情况错误的算术库

标签 math libraries floating-accuracy interval-arithmetic

(已编辑)
是否有任何库或工具可以知道算术运算中的最大累积误差?

例如,如果我进行一些迭代计算...

myVars = initialValues;
while (notEnded) {
    myVars = updateMyVars(myVars)
}

...我最后不仅想知道计算值,还想知道潜在的错误(如果每个单独操作的结果采用每个操作数的范围限制,则可能值的范围)。

我已经编写了一个名为 EADouble.java 的 Java 类。 (错误会计的 EA)对于一些基本操作,它保存并更新最大正负误差以及计算值,但恐怕我可能正在重新发明一个方轮。

任何库/Java中的任何东西/任何东西?有什么建议么?

  • 7 月 11 日更新:检查现有库并添加示例代码链接。
  • 有大佬评论,有Interval Arithmetic的概念,并且之前有一个关于该主题的问题(A good uncertainty (interval) arithmetic library?)。关于我的意图只有几个小问题:
  • 我更关心“主要”值而不是上限和下限。但是,为开放库添加额外的值(value)应该是直截了当的。
  • 将误差计入一个独立的浮点数可能会提高精度(例如,对于加法,上限将仅增加一半 ULP 而不是整个 ULP)。
  • 我看过的图书馆:
  • ia_math (Java。只需要添加主要值。到目前为止我最喜欢的)
  • Boost/numeric/Interval (C++,非常复杂/完整)
  • ErrorProp (Java、帐户值和错误作为标准差)
  • 示例代码 (TestEADouble.java) 可以正常运行弹道模拟和数字 e 的计算。然而,这些都不是非常苛刻的场景。
  • 最佳答案

    可能为时已晚,但请查看 BIAS/Profil:http://www.ti3.tuhh.de/keil/profil/index_e.html
    非常完整,简单,可以解决计算机错误,如果您的错误居中,则可以轻松访问您的名义(通过 Mid(...))。

    关于math - 用于跟踪最坏情况错误的算术库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11402544/

    相关文章:

    swift - 收到一封来自 Apple 的电子邮件,其中指出我使用相同的 swift 库

    c++ - 是否有一个用于位操作的(C/C++)库?

    javascript - 在舍入误差之前,Javascript 中的整数可以有多大?

    java - 这个非常小的浮点常数比预期的更近似

    c - 浮点运算的精度

    math - 如何在LLVM位码中实现floor、ceil和round?

    c++ - 将 vector 投影到单位框的有效方法

    javascript - 在 Google App Script 中使用导入的模块

    math - 如何将圆上的坐标转换为方形上的坐标?

    math - 2d线段上的最近点,穿过第三2d线段