1

我想探索我的算法(使用標準雙精度算法)的一些不同實現的數值精度。不幸的是,在許多情況下,我不知道封閉格式中的正確結果,所以我需要找到一種方法來使用一些非常高精度的計算來計算基準結果。高精度數值計算

這是一個有趣的項目,所以我的約束是:沒有預算的工具,最好是Linux平臺。我知道Mathematica提供自動錯誤跟蹤和任意精度算術,但我沒有許可證。執行速度不是問題,因爲這些高精度計算僅用於計算基準。

編碼這些高精度計算的最佳方法是什麼?我正在尋找至少四倍精度,但最好甚至更高。我目前唯一的想法是使用quad precision floating point types in C++

+4

我不會發布這個答案,因爲它只是鏈接,但http://www.mpfr.org提供所有您應該需要的任意精度浮點基元。 – 2014-09-25 09:41:54

+0

你可以使用這個標籤找到很多解決方案[標籤:任意精度] http://stackoverflow.com/questions/6414714/arbitrary-precision-arithmetic-with-gmp http://stackoverflow.com/questions/2568446/在最佳跨平臺的可移植的任意精度,數學庫?RQ = 1 – 2014-09-25 12:31:29

回答

1

我發現Julia很適合這項工作。其中的優點

  • 它很容易編寫,並且有一個方便的REPL或可以使用IPython筆記本接口。
  • 它帶有包裝MPFR庫的本地任意精度BigFloat類型和包裝GMP庫的BigInt
  • 它是「東張西望」的東西,看看其他方法做什麼,看看llvm和本地彙編代碼。