我意識到這是一個有點模糊的問題,所以我會盡我所能。如果我有一個像n = 0.783325849821429
這樣的數字,有沒有辦法顯示更多小數位?這是用長格式生成的。問題是我正在用正弦進行誤差估計計算,並且出現了一個點,其中估計與真正的正弦值非常接近,以至於MATLAB將誤差計算爲0,即使估計不可能完全準確。總是有錯誤,對於MATLAB來說它太小了。有沒有辦法讓MATLAB考慮更多的小數位?如何增加MATLAB中的位數?
3
A
回答
1
使用digits與vpa(可變精度準確)。更多關於可變精度算術here ...請注意,您需要符號數學工具箱。如果你沒有,那麼你可以使用約翰D'ERRICO的Variable Precision Integer Arithmetic從文件交換..
3
fprintf(1, 'n = %.20f\n', n); % print with 20 digits after the decimal point
總是要求更多的數字然而是有一定限度以浮點數存儲的精度。
可以使用eps
eps(n)
如果你估計誤差小於eps
比你估計是機器精度內,並且不能被測量的測試機器精度。
0
如果使用VPA功能來提高精度那麼它將你作爲SYMS,之後變量如果u想使用這個變量對其他MATLAB內部函數,則它不會工作,因此找到一些其他的方式。
例如
a=vpa(a,5)
a =
[ 1.25, 2.0276, 3.2108, 3.3695, 2.0589, 1.0]
polyval(a,3)
??? Undefined function or method 'isfinite' for input arguments of type
'sym'.
Error in ==> polyval at 54
if isscalar(x) && (nargin < 3) && nc>0 && isfinite(x) &&
all(isfinite(p(:)))
0
例如,爲了獲得與1000位的答案的22/7
數字(1000)的公式
VPA(22/7)
相關問題
- 1. MATLAB fprintf增加指數位數
- 2. 如何增加兩個Matlab圖?
- 3. 如何正確增加數組中的位?
- 4. 如何減少Matlab中的物理內存增加?
- 5. 位置增加
- 6. 在結果中增加小數位Anylogic
- 7. 如何在for循環中將數字增加五位
- 8. 如何增加Cassandra中的計數器?
- 9. 如何增加Mongoose中的數值?
- 10. 如何增加使用Armadillo庫時顯示的位數
- 11. 使用Matlab在具有約束的數組中增加值?
- 12. 如何增加庫函數?
- 13. 如何在Matlab 2009b中增加數組塊並解決內存不足錯誤?
- 14. iMacro增加位置
- 15. 如何增加數組的數值?
- 16. 如何在2 foreach中增加數字?
- 17. 如何在C++中增加數組?
- 18. 使用matlab增加一個循環3,然後增加1
- 19. 雖然在Matlab中循環增加一個數
- 20. 在SQL語句中增加列名的數字位數
- 21. 的Android,如何增加參數的LayoutParams
- 22. Matlab的:與增量
- 23. Matlab中每n個值的中位數
- 24. 創建MATLAB的功能,增加了數字單詞的末尾
- 25. 如何增加Swift中預加載的UITableView單元的數量?
- 26. Tensorflow如何增加變量的維數
- 27. 如何增加圖像大小,但不增加大小容器其位於
- 28. 如何修復matlab中矩陣元素的小數位?
- 29. 如何控制函數在MATLAB中運行的位置?
- 30. 如何增加「主鍵」自動增加數量?
實際上,VPI是唯一整數。不過,我也發佈了一個HPF工具,它將以浮點數計算任意數量的數字。所以如果你想要100個數字的精度,你可以得到它。 http://www.mathworks.com/matlabcentral/fileexchange/36534-hpf-a-big-decimal-class – 2013-02-19 11:16:21