[問題] fsolve 解多元非線性方程組
我嘗試用fsolve解多元非線性問題
第一次寫matlab,參考板上之前的討論
原始題目
(A-x-y)(B-x-β) = K1(x-α)
(A-x-y)(C-y-α) = K2(y-β)
(x-α) (C-y-α) = K3(α+β)
(y-β)(B-x-β) = K4(α+β)
Constant: K1.K2.K3.K4
input : A.B.C
output: α.β.x.y
我寫出來的程式如下
function y=prac(x)
y=zeros(1,4);
A=30;B=20;C=60; %input parameter
K1=2;K2=5.71;K3=3;K4=1.0; %constant
y(1)=(A-x(1)-x(2))*(B-x(1)-x(4))-K1*(x(1)-x(3));
y(2)=(A-x(1)-x(2))*(C-x(2)-x(3))-K2*(x(2)-x(4));
y(3)=(x(1)-x(3))*(C-x(2)-x(3))-K3*(x(3)+x(4));
y(4)=(x(2)-x(3))*(B-x(1)-x(4))-K4*(x(3)+x(4));
x01=[1,1,1,1]; % initial guess
a=fsolve('prac',x01)
y=prac(a)
可是我怎麼跑都是
Error using prac (line 7)
Not enough input arguments.
可以幫我看一下怎麼回事嗎?
或是說這個方程組沒辦法用fsolve解?
謝謝
p.s.
我沒有正確解可以驗算,但所有的解應該都是正實數
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.15.152
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1431405619.A.7E3.html
※ 編輯: wen7774 (140.113.15.152), 05/12/2015 12:41:47
推
05/12 15:15, , 1F
05/12 15:15, 1F
推
05/12 21:52, , 2F
05/12 21:52, 2F
→
05/13 09:46, , 3F
05/13 09:46, 3F
→
05/13 09:48, , 4F
05/13 09:48, 4F
推
05/13 13:16, , 5F
05/13 13:16, 5F
→
05/14 14:32, , 6F
05/14 14:32, 6F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章