作者ejialan (eji)
看板Math
標題Re: [其他] 解方程式
時間Tue Feb 1 09:05:32 2011
※ 引述《NASAPSE (Mr.PSE)》之銘言:
: 不好意思,因為在下是化學系,再加上本身數學很弱 Orz
: 想要解這個一元三次方程式,題目本身是一個VDW氣體方程式,要求體積,
: 其他數值都已求好代入,只差解這個方程式求體積了,
: 偏偏在下數學弱爆,不知道怎麼解,差在一步,卡了快二小時 (真的弱到爆!)
: 在此就用X代替體積(也因此,X必大於0):
: [1+(1.35*10^6 / X^2)][X-38.6] = (0.082*10^3)(298)
: 答案是24500,想問在不會卡丹公式解、只能手算的情況下,要怎麼解呢?
: 另外,也因為小的實在太弱了,在解這題時,還衍生出一個問題,
: 就是當我等號兩邊同乘以X^2時,方程式整理後變為:
: X^3 - 24474.6*X^2 + 1.35*10^6*X - 38.6*1.35*10^6 = 0
: 但代入答案,差很多 ; 可是在未整理及等號兩邊同乘X^2前,帶入答案蠻吻合的...
: 究竟小的盲點到底出在哪呢?
: 感謝各位大大替在下解答這二個問題,而對於在下的白癡問題,還請海涵,
: 實在是不得已出來丟人現眼......
: 因為今晚卡在這題問題實在讓我很難入眠......
: 勞煩各位了!感激不盡!
事實上答案應該是 X = 24419.403482106899237875379218104
X = 24500是近似的答案
為什麼整理後代入會差很多
定義 f1 = [1+(1.35*10^6 / X^2)][X-38.6] - (0.082*10^3)(298)
f2 = X^3 - 24474.6*X^2 + 1.35*10^6*X - 38.6*1.35*10^6
理論上答案代入f1 f2都應該是0
實際上數值上一定有誤差
而且24500本來就是近似的答案
代入f1的誤差為80.4
而f2是f1的X^2倍
代入f2誤差看起來誤差就會非常大
至於要手算出答案我只想到用數值疊代近似的方法
將f1整理
(1+1.35*10^6/X^2)(X-38.6) = 24436
=> X = 24436 / (1+1.35*10^6/X^2) + 38.6
當X猜一個值代入等號右邊會得到新的X
反覆的代入最後會收斂到正確的答案
舉例一開始猜 X = 10000
代入等號右邊得 X = 24149
再代入等號右邊得 X = 24418
已經相當接近答案了
兩步勉強還可以用手算
當然有計算機的輔助會更快
有工程用計算機則可以直接輸入
24436/(1+1.35*10^6/Ans^2)+38.6
然後不斷按 = 就可以得到答案了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.250.25.189
推 NASAPSE :太太太感謝了!大大把在下的疑惑都給消除了!感謝啊! 02/01 09:45
推 NASAPSE :不知能不能再請教一下,數值疊代法,就是欲使等號二邊 02/01 09:49
→ NASAPSE :的X值近似或相等吧?那他有何限制嗎?只要能化成 02/01 09:50
→ NASAPSE :X=F(X) 就能使用了嗎? 謝謝! 真的感激不盡! 02/01 09:50
推 NASAPSE :真的太高興了!!!二個問題都真的得到滿意的答案了!!! 02/01 09:54
→ NASAPSE :真的太感謝e大,還有剛剛的h大!數學板真溫馨 qq 感恩 02/01 09:55
→ ejialan :我用的方法是Fixed point iteration F(x)函數要滿足 02/01 11:12
→ ejialan :一些性質才保證收斂 可參考wiki 02/01 11:13