[討論] 求解方程式,用二分法會比較準?

看板MATLAB作者 (阿泰斯)時間11年前 (2013/11/29 13:46), 編輯推噓0(0018)
留言18則, 3人參與, 最新討論串1/1
一條一維一次方程式 明明用solve(eq,x)就能求出來了 老師卻說真實狀況不可能會等於0 一定要用二分法下去算 但是二分法步驟還蠻複雜的...,要是一個16元一次聯立方程式,有可能使用二分法嗎? 比較早以前版本的Matlab沒有sym指令,我不曉得能否使用solve,但現在應該都能使用 solve直接解題了吧? 為何要用二分法? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.17.253

11/29 13:48, , 1F
至於浮點數誤差,直接用roundn不行嘛!? 真心疑問...
11/29 13:48, 1F

11/29 14:56, , 2F
一元一次也不用solve 移項就可解 主要是如果非線性很複雜
11/29 14:56, 2F

11/29 14:58, , 3F
solve有可能解不出來 就要考慮數值解 二分法解一維問題時
11/29 14:58, 3F

11/29 15:00, , 4F
常常會用是因為它相對算簡單 只用到勘根定理 而且保證收斂
11/29 15:00, 4F

11/29 15:01, , 5F
但多維問題就不適用 浮點數誤差我不清楚你要問什麼?
11/29 15:01, 5F

11/29 15:06, , 6F
抱歉,我表達有誤,我想問的是
11/29 15:06, 6F

11/29 15:08, , 7F
我算16元一次聯立方偏微分程式,都是直接運算,不管其
11/29 15:08, 7F

11/29 15:09, , 8F
小數點後幾位(內定應該是32位),最後算出那16個根
11/29 15:09, 8F

11/29 15:09, , 9F
想問的是,小數點可以都不用理它,讓他以小數有32位的
11/29 15:09, 9F

11/29 15:10, , 10F
數字下去運算,這樣會有誤差嗎?
11/29 15:10, 10F

11/29 15:11, , 11F
我是用double,是小數留越多位越準嗎?
11/29 15:11, 11F

11/29 15:12, , 12F
還是一般數值運算會進行到第幾位四捨五入?
11/29 15:12, 12F

11/29 15:13, , 13F
先感謝你剛剛的回答! 我只是想知道小數點是不是越多越
11/29 15:13, 13F

11/29 15:13, , 14F
準? 還是小數太多會有誤差?
11/29 15:13, 14F

11/29 15:41, , 15F
一般當然是取越多位越準 所以直接運算就好 如果你的矩陣
11/29 15:41, 15F

11/29 15:41, , 16F
會病態就另當別論
11/29 15:41, 16F

11/29 15:55, , 17F
感謝! 請問一下矩陣病態是甚麼?
11/29 15:55, 17F

11/29 17:14, , 18F
樓上可wiki ill-posed problem
11/29 17:14, 18F
文章代碼(AID): #1Ic2f00B (MATLAB)
文章代碼(AID): #1Ic2f00B (MATLAB)