声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: happyup

[工具箱] 求助,请邦我用matlab运行一下这个方程组

[复制链接]
发表于 2009-5-5 15:11 | 显示全部楼层
你可以借助1stopt,这方面的确比matlab强,以下是1stopt的结果,相对准确:
x1: 1.65253708606871
x2: -5.72247063859172
x3: 0.874187837674711
x4: -3.70271540024915
x5: -3.02179426504917
x6: -4.06471894438377
x7: 0.569707010599709
x8: 0.974186695511806
x9: -2.07997141011562
x10: -2.30309287803062
x11: -5.79785592978777
x12: -0.382894846025122
x13: 3.74263748184617
x14: 6.61603415442044
x15: 4.80619722198472
x16: -2.85654001445456
x17: 0.586901077430745
x18: -2.07557456320707
x19: 3.58033278643525
x20: 1.55773763229045
x21: 6.61929201177414
x22: -0.15757135011255
x23: -0.267314850532027
回复 支持 反对
分享到:

使用道具 举报

 楼主| 发表于 2009-5-5 15:26 | 显示全部楼层
谢谢friendchj我用了1stopt,
我算的结果如下
A:   -0.447,
然后几次都是-0.4几
现在重设了迭代数和重复数,都改为50.
迭代还没中止呢。不过A值己在0.008了
 楼主| 发表于 2009-5-5 15:27 | 显示全部楼层
另外我有一点不明白,目标函数值是什么意思,我没设这个值啊,怎么会出现目标函数值呢?
发表于 2009-5-5 15:43 | 显示全部楼层

回复 18楼 happyup 的帖子

目标函数值应是指每个方程误差绝对值之和,用于判断求解的准确度,我的理解
 楼主| 发表于 2009-5-5 15:47 | 显示全部楼层
是程序自己设的吗?
我现在运行的程序目标函数值是5.00002706
,当它的值多少就可以认为是比较准的呢?
           谢谢!
发表于 2009-5-5 16:13 | 显示全部楼层

回复 20楼 happyup 的帖子

把求得的方程的解带入到每个方程中,方程的值的绝对值之和即为目标函数值。借助我写的那个myfun你可以验证一下,例如:x=[x1,x2,……,x23];f=myfun(x),sum(abs(f))
它是衡量求解准确性的一个指标,其值越接近于0,说明求得的方程解越接近真值
 楼主| 发表于 2009-5-5 16:40 | 显示全部楼层
谢谢,看来5还是不准的,如何设为0呢?
发表于 2009-5-5 16:49 | 显示全部楼层

回复 22楼 happyup 的帖子

目标函数值不是设的,而是根据求得方程解求的,我感觉5应该可以在承受范围之内了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-14 18:35 , Processed in 0.060852 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表