2013-04-02 60 views
1

有沒有人有推薦我在Mac OSX上工作,並試圖編寫和運行C++代碼。支持餘弦函數的GMP庫的替代bignum庫

我正在運行代碼來回答稱爲「Tammes問題」的數學問題。我目前有一段漸變流程代碼,它運行時將球體上的點分佈並最小化能量函數。這適用於Thomsons問題和t的低值(能量函數中的指數)。

泰姆斯問題是趨於無窮大,所以我需要讓t相當大。這很好,但是當我將球體上兩點之間的距離提高到t的值時,數字變得非常小(仍爲正數),然後通過取這個倒數,我得到的能量相當大。問題是能量損失精度隨着t值的增加而變化,這可以通過一個bignum庫來解決。但是,如果我想找到球體上的球冠的大小,我需要重新排列餘弦規則以找到點之間的角度。因此,這要求我採用由於GMP不支持COS函數而不可接受的數字的餘弦。

+0

這個問題中沒有足夠的信息可供某人給你一個有用的建議。 –

+0

@CodyGray對不起,你能告訴我你需要什麼樣的信息,我會爲你提供。我會編輯這個問題,儘可能地給你。 – adrem7

回答

3

由於您熟悉GMP,我建議您使用MPFR。除了使用多精度浮點算法外,它還提供了基於IEEE 754(2008)的超越函數和舍入模式。

1

this library怎麼樣?誠然,我沒有使用過它或GMP,但它可能適用於您的問題。