24小时热门版块排行榜    

查看: 1383  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

juanjie1991

金虫 (正式写手)

[求助] matlab求解多元非整次方方程组

如何利用MATLAB求解如下方程组,求未知数x,y,z:
0.9*2.7183^(x*(38-y)^z)-1=0;
2.7183^(x*(402-y)^z)-2=0;
2.7183^(x*(740-y)^z)-10=0;
fsolve函数或是solve函数,M-文件的建立,主程序代码等,求解啊~

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

juanjie1991

金虫 (正式写手)

有没有人解答解答啊,泪花ing~~~
4楼2014-09-25 11:00:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

juanjie1991

金虫 (正式写手)

我用solve函数求解如下:
syms x y z;
f1=0.9*2.7183^(x*(38-y)^z)-1;
f2=2.7183^(x*(402-y)^z)-2;
f3=2.7183^(x*(740-y)^z)-10;
[x,y,z]=solve(f1==0,f2==0,f3==0)

但是计算结果却是这样的:
Warning: Explicit solution could not be found.
> In solve at 169

x =

[ empty sym ]

y =

     []

z =
     []
菜鸟求解答!!!!~~~~
2楼2014-09-24 23:52:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

juanjie1991

金虫 (正式写手)

还有用过fsolve函数求解:
建立myfun.m文件:
function F = myfun(x)
F = [0.9*2.7183^(x(1)*(38-x(2))^x(3))-1;
    2.7183^(x(1)*(402-x(2))^x(3))-2;
    2.7183^(x(1)*(740-x(2))^x(3))-10];
end

然后在命令窗口输入:

>> [x,fval]=fsolve(@myfun,[0,50,1]);
x(1)
x(2)
x(3)
Error using feval
Undefined function 'myfun' for input arguments of type 'double'.

Error in fsolve (line 241)
            fuser = feval(funfcn{3},x,varargin{:});

Caused by:
    Failure in initial user-supplied objective function evaluation. FSOLVE cannot
    continue.

结果不懂什么原因啊,还有初值[0,50,1]我不知道对不对,初值具体应该怎么确定啊?   
求各路高手解答,菜鸟一个,对matlab一窍不通,求大神们帮帮忙~~~
3楼2014-09-24 23:59:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yanxp02

禁虫 (小有名气)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
juanjie1991: 金币+10 2014-09-26 09:23:52
本帖内容被屏蔽

5楼2014-09-25 11:14:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见