24小时热门版块排行榜    

查看: 1846  |  回复: 4

周宁_fish

新虫 (初入文坛)

[求助] matlab解方程组求助攻 已有2人参与

方程组如下,求解x  y  z
f1=0.00124*y+0.114094*z-0.1*y+0.1*y*exp(-900*x)=0
f2=0.00549*y+0.648922*z-0.1*y+0.1*y*exp(-1800*x)=0
f3=0.00607*y+0.750408*z-0.1*y+0.1*y*exp(-2700*x)=0
f4=0.00821*y+1.251459471*z-0.1*y+0.1*y*exp(-3600*x)=0
还有f5...
用matlab的fsolve函数求解的时候3个未知数只能编辑三个方程,否则会提示Warning: Trust-region-dogleg algorithm of FSOLVE cannot handle non-square systems; using Levenberg-Marquardt algorithm instead. 用前三个方程来解方程,x的解和所选的初值完全相同。请问这是什么原因,程序如下请问解出来的解对不对。
function q=myfun(p)
x=p(1);
y=p(2);
z=p(3);
q(1)=0.00124*y+0.114094*z-0.1*y+0.1*y*exp(-900*x);
q(2)=0.00549*y+0.648922*z-0.1*y+0.1*y*exp(-1800*x);
q(3)=0.00607*y+0.750408*z-0.1*y+0.1*y*exp(-2700*x);
x = fsolve('myfun',[10,100000,3000]',optimset('Largescale','off'))

在网上搜的 Levenberg-Marquardt 方法来解这个方程组,程序如下
f()={"0.00124*y+0.114094*z-0.1*y+0.1*y*exp(-900*x)","0.00549*y+0.648922*z-0.1*y+0.1*y*exp(-1800*x)","0.00607*y+0.750408*z-0.1*y+0.1*y*exp(-2700*x)"}
x()={"x","y","z"}
x0()={10,100000,3000}
d()={0,0,0}
erro=1e-8
Loopn=3000
nonlin_LM(f,x,x0,d,erro,Loopn)
运行时显示Error: File: Untitled4.m Line: 1 Column: 2
An indexing expression on the left side of an assignment must have at least one subscript.

我对matlab不懂,请大神帮忙解一下这个方程组,望附上程序,谢谢!
回复此楼

» 猜你喜欢

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

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

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
方程没问题吗?如果个方程右边均为0,那就只有解:
y: 0
z: 0
x: 0
2楼2014-02-17 14:49:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

周宁_fish

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by dingd at 2014-02-17 14:49:14
方程没问题吗?如果个方程右边均为0,那就只有解:
y: 0
z: 0
x: 0

方程没有问题    怎么会只有0解   方程组的系数矩阵肯定不是0,那肯定有非零解的啊
3楼2014-02-17 15:54:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

戴钢盔的猪头

木虫 (知名作家)

【答案】应助回帖

感谢参与,应助指数 +1
你的问题没表述清楚吧?首先二楼说的全为零的解肯定是可行解,其次你求解超定问题,需要定义成求最小二乘解,然后你需要对变量做不等式约束,否则只能找到全零解。信赖域折线法可以求解超定最小二乘问题的,但是你的问题提的不对。

[ 发自手机版 http://muchong.com/3g ]
4楼2014-02-18 01:29:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

戴钢盔的猪头

木虫 (知名作家)

【答案】应助回帖

哦不好意思,之前看的不够仔细,实际上你的方程组应该有无数组解。爱渴死可以取任意值,歪和贼只要都是零就能满足了。还是那句话,你要定义三个变量的可行取值范围才有可能计算出唯一解。

[ 发自手机版 http://muchong.com/3g ]
5楼2014-02-18 09:43:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 周宁_fish 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +9 Ldrop2023 2026-08-13 9/450 2026-08-16 13:24 by wukun_007
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +32 医学老男孩 2026-08-13 72/3600 2026-08-16 13:15 by 医学老男孩
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +11 家与远方 2026-08-10 16/800 2026-08-16 10:28 by ray43
[基金申请] 时间戳又变了8-15 +12 archvillain 2026-08-15 23/1150 2026-08-15 20:47 by foyo404
[基金申请] filecode=后面第一个是大写字母 +6 wangze12014 2026-08-14 7/350 2026-08-15 20:12 by gltch
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +12 Tide man 2026-08-10 13/650 2026-08-15 16:34 by 氺木
[基金申请] 关于Filecode分析方法 +10 majunge000 2026-08-10 13/650 2026-08-15 12:26 by hanpeng972
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
信息提示
请填处理意见