Re: [問題] symbolic 解聯立方程式已回收

看板MATLAB作者 (好聽木琴)時間14年前 (2011/08/03 12:17), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《snaredrum (好聽木琴)》之銘言: Ex: ux+vy=u^2 2vx+uy=1+2v 這個聯立方程式 想解出來x,y 用u,v,這兩個變數來表示解。 這個可以用matlab來做嬤? 我查了syms 跟solve用法,似乎看不到這種的。 solve這指令只看到單變數的。 兩個變數以上聯立方程式 帶有symbolic coefficient可以用matlab解媽? 感謝回答 .... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 68.48.173.107

08/01 10:46,
solve配syms可以解
08/01 10:46

08/01 10:46,
解出來是x=(-v-2*v^2+u^3)/(u^2-2*v^2)
08/01 10:46

08/01 10:46,
y=-u*(-1-2*v+2*u*v)/(u^2-2*v^2)
08/01 10:46

08/01 14:38,
可以分享一下 指令嬤?
08/01 14:38

08/01 14:48,
syms x y u v
08/01 14:48

08/01 14:49,
eq1='你的方程式1';
08/01 14:49

08/01 14:49,
eq2='你的方程式2';
08/01 14:49

08/01 14:49,
out=solve(eq1,eq2,x,y);
08/01 14:49
感謝 Ericabab版友的回答~~ 後來我又遇到個問題。  Warning: The solutions are parametrized by the symbols: z = C_ 我解聯立方程式,可是答案出現一個完全我沒定義的變數z? 這什麼意思呢? 我的code其實就短短幾行如下~~ syms t u v a b c d eq1='a*c+b*d+...... =0' eq2='2*a*c+t*d+.... =0' out= solve(eq1,eq2,c,d) 方程式 eq1 eq2其實很長我就不打了。 結果out是有解出來,但是答案的形式很怪。 out.c ans = -(u^2 + z)/u -(v^2 + z)/v -(- 22*a^2*b - 22*a*b^2 + 2*a + 2*b)/(22*a^2 + 22*a*b + 22*b^2 - 3) -(484*a^2*b^2 + 484*a^2*v^2 - 66*a^2 + 484*a*b*v^2 - 44*a*b + 484*b^2*v^2 - 66*b^2 - 66*v^2 + 3)/(484*v*a^2 + 484*v*a*b + 484*v*b^2 - 66*v) -(484*a^2*b^2 + 484*a^2*u^2 - 66*a^2 + 484*a*b*u^2 - 44*a*b + 484*b^2*u^2 - 66*b^2 - 66*u^2 + 3)/(484*u*a^2 + 484*u*a*b + 484*u*b^2 - 66*u) 完全不知道z哪來的,我只預期答案應該只是a b u v t變數所表示的解答。 不知道哪個z哪裡來 然後又是什麼? 感謝回答~~~ XD 小的是matlab新手... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 68.48.173.107
文章代碼(AID): #1EEClbH- (MATLAB)
文章代碼(AID): #1EEClbH- (MATLAB)