24小时热门版块排行榜    

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

xiao__guan

新虫 (初入文坛)

[求助] matlab 求解非线性方程组未果

非软件专业,只想求一个非线性方程组的解,就显示错误,求指导~.....

程序如下
function m=slag(n)
x1=n(1);
x2=n(2);
x3=n(3);
x4=n(4);
x5=n(5);
x6=n(6);
x7=n(7);
x8=n(8);
x9=n(9);
x10=n(10);
x11=n(11);
x12=n(12);
x13=n(13);
x14=n(14);
x15=n(15);
x16=n(16);
x17=n(17);
x18=n(18);
x19=n(19);
m(1)=exp((13836+25.44*1863)/8.314*1863)*x1^3*x2-x5;
m(2)=exp((35288+204.59*1863)/8.314*1863)*x1^12*x2^7-x6;
m(3)=exp((18946+25.44*1863)/8.314*1863)*x1*x2-x7;
m(4)=exp((18566+23.68*1863)/8.314*1863)*x1*x2^2-x8;
m(5)=x9*0;
m(6)=exp((107800+13.44*1863)/8.314*1863)*x1^3*x3^2-x10;
m(7)=exp((122731+8.85*1863)/8.314*1863)*x1^2*x3-x11;
m(8)=exp((302587+66.24*1863)/8.314*1863)*x1^3*x3^2-x12;
m(9)=exp((86231+0.995*1863)/8.314*1863)*x1*x3-x13;
m(10)=exp((19512+28.19*1863)/8.314*1863)*x2^3*x3^2-x14;
m(11)=exp((354932-417.63*1863)/8.314*1863)*x1^2*x2*x3-x15;
m(12)=exp((1252543-277.06*1863)/8.314*1863)*x1*x2*x3^3-x16;
m(13)=exp((203172+21.38*1863)/8.314*1863)*x1^3*x4^2-x17;
m(14)=exp((75158+21.38*1863)/8.314*1863)*x1*x4-x18;
m(15)=exp((313417-282.66*1863)/8.314*1863)*x1*x2*x3-x19;
m(16)=(0.5*x1+3*x5+12*x6+x7+x8+x9+3*x10+2*x11+3*x12+x13+2*x15+x16+3*x17+x18+x19)-0.25;
m(17)=(x2+x5+7*x6+x7+2*x8+6*x9+3*x14+x15+x16)-0.25;
m(18)=(x3+x10+x11+2*x12+x13+2*x14+x15+2*x16+x19)-0.25;
m(19)=(x4+2*x17+x18+x19)-0.25;
end


x=fsolve(@slag,[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],optimset('display','off'))


Error using trustnleqn (line 28)
Objective function is returning undefined values at initial point. FSOLVE cannot continue.

Error in fsolve (line 376)
    [x,FVAL,JACOB,EXITFLAG,OUTPUT,msgData]=...
回复此楼

» 猜你喜欢

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

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

xiao__guan

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by 月只蓝 at 2013-07-03 11:32:44
程序中,end是多余的。修改后如下,可运行,不过结果不好,也许和初值有关。以下程序复制进一个m文件中运行即可。

function solnol
clear all;clc
x0=;
x=fsolve(@slag,x0,optimset('display','off'))

fun ...

怎么用M文件运行...... 我纯新手............
3楼2013-07-03 15:44:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
xiao__guan: 金币+3, ★★★很有帮助, 非常感谢 2013-07-05 09:33:14
程序中,end是多余的。修改后如下,可运行,不过结果不好,也许和初值有关。以下程序复制进一个m文件中运行即可。

function solnol
clear all;clc
x0=[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5];
x=fsolve(@slag,x0,optimset('display','off'))

function m=slag(n)
x1=n(1);
x2=n(2);
x3=n(3);
x4=n(4);
x5=n(5);
x6=n(6);
x7=n(7);
x8=n(8);
x9=n(9);
x10=n(10);
x11=n(11);
x12=n(12);
x13=n(13);
x14=n(14);
x15=n(15);
x16=n(16);
x17=n(17);
x18=n(18);
x19=n(19);
m(1)=exp((13836+25.44*1863)/8.314*1863)*x1^3*x2-x5;
m(2)=exp((35288+204.59*1863)/8.314*1863)*x1^12*x2^7-x6;
m(3)=exp((18946+25.44*1863)/8.314*1863)*x1*x2-x7;
m(4)=exp((18566+23.68*1863)/8.314*1863)*x1*x2^2-x8;
m(5)=x9*0;
m(6)=exp((107800+13.44*1863)/8.314*1863)*x1^3*x3^2-x10;
m(7)=exp((122731+8.85*1863)/8.314*1863)*x1^2*x3-x11;
m(8)=exp((302587+66.24*1863)/8.314*1863)*x1^3*x3^2-x12;
m(9)=exp((86231+0.995*1863)/8.314*1863)*x1*x3-x13;
m(10)=exp((19512+28.19*1863)/8.314*1863)*x2^3*x3^2-x14;
m(11)=exp((354932-417.63*1863)/8.314*1863)*x1^2*x2*x3-x15;
m(12)=exp((1252543-277.06*1863)/8.314*1863)*x1*x2*x3^3-x16;
m(13)=exp((203172+21.38*1863)/8.314*1863)*x1^3*x4^2-x17;
m(14)=exp((75158+21.38*1863)/8.314*1863)*x1*x4-x18;
m(15)=exp((313417-282.66*1863)/8.314*1863)*x1*x2*x3-x19;
m(16)=(0.5*x1+3*x5+12*x6+x7+x8+x9+3*x10+2*x11+3*x12+x13+2*x15+x16+3*x17+x18+x19)-0.25;
m(17)=(x2+x5+7*x6+x7+2*x8+6*x9+3*x14+x15+x16)-0.25;
m(18)=(x3+x10+x11+2*x12+x13+2*x14+x15+2*x16+x19)-0.25;
m(19)=(x4+2*x17+x18+x19)-0.25;
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2013-07-03 11:32:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiao__guan

新虫 (初入文坛)

还有就是,能不能把方程中的1863 改为一个可以设定的变量值, 否则每次计算都要把所有的1863更改掉,太麻烦了...
4楼2013-07-03 15:46:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

引用回帖:
4楼: Originally posted by xiao__guan at 2013-07-03 15:46:50
还有就是,能不能把方程中的1863 改为一个可以设定的变量值, 否则每次计算都要把所有的1863更改掉,太麻烦了...

新建一个m文件,把以下程序全部复制进去,运行即可。
至于你说赋值1863的问题,一种解决办法就是定义一个全局变量k,对k赋值即可,以下的程序就才用这个办法;更简洁一些的话,直接把k=1863写到“function m=slag(n)”的下面。


function solnol
clear all;clc
global k
k=1863;
x0=[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5];
x=fsolve(@slag,x0,optimset('display','off'))

function m=slag(n)
global k
x1=n(1);
x2=n(2);
x3=n(3);
x4=n(4);
x5=n(5);
x6=n(6);
x7=n(7);
x8=n(8);
x9=n(9);
x10=n(10);
x11=n(11);
x12=n(12);
x13=n(13);
x14=n(14);
x15=n(15);
x16=n(16);
x17=n(17);
x18=n(18);
x19=n(19);
m(1)=exp((13836+25.44*k)/8.314*1863)*x1^3*x2-x5;
m(2)=exp((35288+204.59*k)/8.314*1863)*x1^12*x2^7-x6;
m(3)=exp((18946+25.44*k)/8.314*1863)*x1*x2-x7;
m(4)=exp((18566+23.68*k)/8.314*1863)*x1*x2^2-x8;
m(5)=x9*0;
m(6)=exp((107800+13.44*k)/8.314*k)*x1^3*x3^2-x10;
m(7)=exp((122731+8.85*k)/8.314*k)*x1^2*x3-x11;
m(8)=exp((302587+66.24*k)/8.314*k)*x1^3*x3^2-x12;
m(9)=exp((86231+0.995*k)/8.314*k)*x1*x3-x13;
m(10)=exp((19512+28.19*k)/8.314*k)*x2^3*x3^2-x14;
m(11)=exp((354932-417.63*k)/8.314*k)*x1^2*x2*x3-x15;
m(12)=exp((1252543-277.06*k)/8.314*k)*x1*x2*x3^3-x16;
m(13)=exp((203172+21.38*k)/8.314*k)*x1^3*x4^2-x17;
m(14)=exp((75158+21.38*k)/8.314*k)*x1*x4-x18;
m(15)=exp((313417-282.66*k)/8.314*k)*x1*x2*x3-x19;
m(16)=(0.5*x1+3*x5+12*x6+x7+x8+x9+3*x10+2*x11+3*x12+x13+2*x15+x16+3*x17+x18+x19)-0.25;
m(17)=(x2+x5+7*x6+x7+2*x8+6*x9+3*x14+x15+x16)-0.25;
m(18)=(x3+x10+x11+2*x12+x13+2*x14+x15+2*x16+x19)-0.25;
m(19)=(x4+2*x17+x18+x19)-0.25;
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
5楼2013-07-03 16:49:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 300求调剂 +9 橙a777 2026-04-15 9/450 2026-04-16 06:47 by fenglj492
[考研] 291求调剂 +7 关忆北. 2026-04-14 7/350 2026-04-16 01:30 by L0alice
[考研] 327求调剂 +25 Xxjc1107. 2026-04-13 27/1350 2026-04-15 23:22 by Equinoxhua
[考研] 生物学调剂 +9 纸扇zhishan 2026-04-13 9/450 2026-04-15 18:28 by AN流800
[考研] 310求调剂 +16 666真好 2026-04-11 18/900 2026-04-15 13:28 by 黑科技矿业
[考研] 一志愿沪9,326求生物学调剂 +10 刘墨墨 2026-04-13 10/500 2026-04-14 15:16 by zs92450
[考研] 食品与营养(0955)271求调剂 +15 升格阿达 2026-04-12 16/800 2026-04-14 13:18 by 浮若_安生
[考研] 一志愿中南大学 0855 机械 286 求调剂 +11 不会吃肉 2026-04-12 11/550 2026-04-13 21:59 by bljnqdcc
[考研] 344 材料专业 求调剂211 无地域要求 +8 hualkop 2026-04-11 8/400 2026-04-12 22:24 by fqwang
[考研] 2本,初试303,0860求调剂 +6 floriea 2026-04-12 8/400 2026-04-12 18:13 by zhouxiaoyu
[考研] 电气专硕320求调剂 +6 小麻子111 2026-04-10 6/300 2026-04-12 10:54 by lemon6009
[考研] 291求调剂 +8 关忆北. 2026-04-11 8/400 2026-04-12 09:32 by 逆水乘风
[考研] 359求调剂 +5 胃痉挛累了 2026-04-11 5/250 2026-04-11 19:55 by lbsjt
[考研] 广东省 085601 329分求调剂 +14 Eddieddd 2026-04-10 14/700 2026-04-11 09:58 by bljnqdcc
[考研] 311求调剂 +13 xyp想读书 2026-04-10 14/700 2026-04-11 09:41 by 猪会飞
[考研] 284求调剂 +12 archer.. 2026-04-10 13/650 2026-04-11 08:44 by zhq0425
[考研] 一志愿北理工298英一数二已上岸,感谢各位老师 +14 Reframe 2026-04-10 16/800 2026-04-10 23:07 by caotw2020
[考研] 调剂 +12 卷卷卷心菜_ 2026-04-09 13/650 2026-04-10 22:36 by Ftglcn90
[考研] 298求调剂 +13 钉叮咚冬瓜 2026-04-09 13/650 2026-04-10 15:49 by jiajinhpu
[考研] 一志愿中科院105500专业总分315求调剂 +6 lallalh 2026-04-09 7/350 2026-04-09 17:51 by lallalh
信息提示
请填处理意见