-
轉http://www.blogbus.com/shijuanfeng-logs/234881647.html
Matlab,計算得到的結果一般是小數形式。
但為了更精確表示,我們有時候需要用到分數形式
例如,有這樣一個矩陣:
A =
-0.0167 -0.0083 0 0 1.9167 0
0 0 -0.0167 -0.0083 0 1.9167
0.0167 -0.0083 0 0 -0.2500 0
0 0 0.0167 -0.0083 0 -0.2500
0 0.0167 0 0 -0.6667 0
0 0 0 0.0167 0 -0.6667
可以很明顯看出,0.0167是0.01666666...的近似結果, 0.0083實際是0.00833333...
如果這個矩陣用來再次做運算時,小數表示造成的精度損失可能被放大,影響后續運算。
用這樣一條語句
format rat
A表示為:
A =
-1/60 -1/120 0 0 23/12 0
0 0 -1/60 -1/120 0 23/12
1/60 -1/120 0 0 -1/4 0
0 0 1/60 -1/120 0 -1/4
0 1/60 0 0 -2/3 0
0 0 0 1/60 0 -2/3
這樣子形式,減少了對精度的損失。