作者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
1F:推 NASAPSE :太太太感谢了!大大把在下的疑惑都给消除了!感谢啊! 02/01 09:45
2F:推 NASAPSE :不知能不能再请教一下,数值叠代法,就是欲使等号二边 02/01 09:49
3F:→ NASAPSE :的X值近似或相等吧?那他有何限制吗?只要能化成 02/01 09:50
4F:→ NASAPSE :X=F(X) 就能使用了吗? 谢谢! 真的感激不尽! 02/01 09:50
5F:推 NASAPSE :真的太高兴了!!!二个问题都真的得到满意的答案了!!! 02/01 09:54
6F:→ NASAPSE :真的太感谢e大,还有刚刚的h大!数学板真温馨 qq 感恩 02/01 09:55
7F:→ ejialan :我用的方法是Fixed point iteration F(x)函数要满足 02/01 11:12
8F:→ ejialan :一些性质才保证收敛 可参考wiki 02/01 11:13