如何提高犰狳複數矩陣乘法結果的精度。它接近4位小數[這是結果(35.9682,-150.246)]的一個例子],但我想要精確到小數點後8位。由於犰狳複雜矩陣乘法早期逼近
1
A
回答
2
正如你似乎不相信我在評論中說:
#include <armadillo>
using namespace std;
using namespace arma;
int main(int argc, char** argv) {
mat A = randu<mat>(4,5);
mat B = randu<mat>(4,5);
mat C = A*B.t();
cout << C << endl;
cout.precision(11);
cout.setf(ios::fixed);
C.raw_print(cout, "With increased precisions:");
return 0;
}
這確實如預期:
[email protected]:/tmp$ g++ -o eze eze.cpp -larmadillo -lblas -llapack
[email protected]:/tmp$ ./eze
0.9713 1.3566 0.7946 1.6896
1.2593 1.1457 0.9011 1.6260
1.1954 0.8484 1.0444 1.6753
1.6225 1.5009 1.2935 2.2019
With increased precisions:
0.97126557882 1.35660885673 0.79462856896 1.68955180769
1.25933041551 1.14565671740 0.90105251304 1.62595390611
1.19543745264 0.84844286454 1.04436441020 1.67528315350
1.62246223165 1.50087016389 1.29351914350 2.20190979625
[email protected]:/tmp$
士氣:打印精度是幾乎從來沒有計算精度爲。
+0
謝謝,Dirk Eddelbuettel –
+0
由於您在這裏似乎是新手,現在a)接受答案(只有您看到的點擊標記)和/或b)upvote(點擊向上三角形) 。 –
+0
@DirkEddelbuettel不認爲OP可以upvote(低代表),但應(最終)接受它,因爲的確可以解決問題。 – vsoftco
相關問題
- 1. 犰狳複雜稀疏矩陣逆
- 2. 乘開方(-1)在C矩陣++和犰狳
- 3. Matlab +犰狳和逆矩陣崩潰
- 4. 是犰狳C++矩陣線程安全
- 5. 在犰狳中用矢量除矩陣
- 6. 大矩陣乘法的複雜性
- 7. 任意矩陣乘法的複雜性
- 8. C++犰狳:最近的鄰居
- 9. RCPP犰狳randg()
- 10. 在鍵盤輸入矩陣類型變量在犰狳C++
- 11. 犰狳 - 從列向量中的值填充矩陣
- 12. C++中的矩陣的動態名稱(犰狳庫)
- 13. 犰狳整數矩陣的決定因素
- 14. 犰狳:堆上的高效矩陣分配
- 15. C++犰狳重塑僅有一個尺寸大小的矩陣
- 16. 選擇犰狳子矩陣具有非連續的索引
- 17. 使用Matlab的矩陣低秩逼近
- 18. 將cx_vec元素轉換爲複雜的犰狳C++
- 19. 將R複雜對象傳遞給犰狳C++
- 20. 矩陣乘法算法時間複雜度
- 21. 矩陣乘法
- 22. 矩陣乘法
- 23. 矩陣乘矢量乘法
- 24. CUBLAS矩陣乘法
- 25. 矩陣乘法alglib
- 26. 乘法矩陣Matlab
- 27. 塊矩陣乘法
- 28. Accord.NET矩陣乘法
- 29. C++矩陣乘法
- 30. 矩陣的乘法
這是常見問題。您可以隨時增加打印輸出的**精度**超出您所看到的默認值。 –
@Dirk Eddelbuettel,我該怎麼做?在我的matlab代碼中,我的複數矩陣乘法具有10或更多的精度,但在我的armadillo C++中,早期逼近確實影響結果。感謝 –
您仍然混淆了打印精度與計算精度。在這裏沒有_early approximation_。 –