作者bennygameii (鹼性椅子水)
看板MATLAB
標題[問題] 方程式移項問題
時間Wed Aug 1 16:06:21 2012
GOOGLE之後發現可以用solve做移項的動作
現在有一個頗為複雜的方程式在下一頁
請各位做好眼花的準備
方程式如下:
f = exp((3012*v_d)/125 - (75917*v_x_1)/2500) + m*(1/exp((3012*v_d)/125 +
(75917*v_x_1)/2500) + exp((3012*v_d)/125 - (75917*v_x_1)/2500) -
exp(log((m*exp((3012*v_d)/125 + (75917*v_x_1)/2500) + m*exp((3012*v_d)/125 +
75917/25000) + m*exp((3012*v_d)/125 - (75917*v_x_1)/2500)*exp((3012*v_d)/125
+ (75917*v_x_1)/2500)*exp((3012*v_d)/125 + 75917/25000) +
m*exp((3012*v_d)/125 + (75917*v_x_1)/2500)*exp((3012*v_d)/125 -
75917/25000)*exp((3012*v_d)/125 +
75917/25000))/(2*m*exp(75917/25000)*exp((3012*v_d)/125)*exp((75917*v_x_1)/2500)
+ 2*m*exp(75917/25000)*exp((9036*v_d)/125)*exp((75917*v_x_1)/2500) +
n*exp(75917/25000)*exp((9036*v_d)/125)*exp((75917*v_x_1)/2500))) -
(3012*v_d)/125) - exp((3012*v_d)/125 + log((m*exp((3012*v_d)/125 +
(75917*v_x_1)/2500) + m*exp((3012*v_d)/125 + 75917/25000) +
m*exp((3012*v_d)/125 - (75917*v_x_1)/2500)*exp((3012*v_d)/125 +
(75917*v_x_1)/2500)*exp((3012*v_d)/125 + 75917/25000) + m*exp((3012*v_d)/125
+ (75917*v_x_1)/2500)*exp((3012*v_d)/125 - 75917/25000)*exp((3012*v_d)/125 +
75917/25000))/(2*m*exp(75917/25000)*exp((3012*v_d)/125)*exp((75917*v_x_1)/2500)
+ 2*m*exp(75917/25000)*exp((9036*v_d)/125)*exp((75917*v_x_1)/2500) +
n*exp(75917/25000)*exp((9036*v_d)/125)*exp((75917*v_x_1)/2500)))))
簡單來說就是一個有( v_x_1, v_d, m, n )四個變數的方程式 f
現在想要找出v_x_1的表示式,故使用solve函式
v_x_1 = solve(f,v_x_1);
卻出現了無解的warning如下:
Warning: Explicit solution could not be found.
> In solve at 160
之前使用都沒有問題
想請問各位有沒有解決的辦法??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.118.106.75
※ 編輯: bennygameii 來自: 140.118.106.75 (08/01 16:07)
※ 編輯: bennygameii 來自: 140.118.106.75 (08/01 16:07)
1F:→ doom8199:原po你不覺得 f 很多 term 都 repeat 嗎 08/02 13:37
2F:→ doom8199:像 f 裏頭還出現 exp(log( , 這些都是可以在化簡的 08/02 13:41
3F:→ doom8199:假設好變數, f 是可以寫得很好看的,對 matlab 負擔也較低 08/02 13:42
4F:→ bennygameii:恩...我知道有很多項都重複了,可是這個函式其實也是用 08/03 17:02
5F:→ bennygameii:MATLAB跑出來的,所以我要把它寫出來化簡嗎@@? 08/03 17:03
6F:→ bennygameii:還是裡面有什麼function可以幫忙的?? 08/03 17:04
7F:→ bennygameii:感謝你~ 08/03 17:04
8F:推 doom8199:程式解不出來通常有兩種, 一種是對應不到內建的 pattern 08/05 21:09
9F:→ doom8199:一種是 stack overflow 08/05 21:09
10F:→ doom8199:若原po只是單純想跑給定 (v_d, m, n), 解 f(v_x_1)=0 08/05 21:11
11F:→ doom8199:可以用 interpolation 近似就好, 不一定非得得到解析解 08/05 21:12
12F:→ bennygameii:我是要跑v_x_1的參數解@@"也就是v_x_1=g(m,n,v_d) 08/08 13:49
13F:→ bennygameii:謝謝喔^^ 我在試看看 08/08 13:49