声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1420|回复: 3

[综合讨论] 非线性方程组的初值选取问题

[复制链接]
发表于 2007-12-5 00:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我是一名初学者,需要解下面这个非线性方程组,但是不知道初值,无法用fsolve,在matlab里该怎么解决。其中除了x,y,z都是已知量

f=((x2-x)*v1+(y2-y)*v2+(z2-z)*v3)/r2-((x1-x)*v4+(y1-y)*v5+(z1-z)*v6)/r1
r2=sqrt((x2-x)^2+(y2-y)^2+(z2-z)^2)
r1=sqrt((x1-x)^2+(y1-y)^2+(z1-z)^2)
r2-r1=c
r=sqrt(x^2+y^2+z^2)
我已经看了论坛里有关非线性方程组的帖子,还是没有找到思路,自己也想了很久,已经
花了好久时间了,恳请各位高手指点

[ 本帖最后由 eight 于 2007-12-5 10:40 编辑 ]
回复
分享到:

使用道具 举报

发表于 2007-12-5 07:44 | 显示全部楼层
取一些特殊情况, 比如v1=0,v2=1等,自己找一下感觉。 通常说来,非线性的东西没有一统江湖的办法。
发表于 2007-12-5 08:53 | 显示全部楼层
试一下1stOpt,不需猜初值。
如:
Constant x1=1,x2=2,y1=3,y2=4,z1=5,z2=6,c=1,r=9,v1=0.2,v2=3,v3=4,v4=2,v5=7,v6=10;
ConstStr r2=sqrt((x2-x)^2+(y2-y)^2+(z2-z)^2),
             r1=sqrt((x1-x)^2+(y1-y)^2+(z1-z)^2);
Function ((x2-x)*v1+(y2-y)*v2+(z2-z)*v3)/r2-((x1-x)*v4+(y1-y)*v5+(z1-z)*v6)/r1;
             r2-r1=c;
             r=sqrt(x^2+y^2+z^2);

结果:
x: -5.96181549118209
y: 2.73752292347617
z: 6.16138980203674

评分

1

查看全部评分

 楼主| 发表于 2007-12-6 18:50 | 显示全部楼层
谢谢大家的帮助,开始研究这个东西了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-18 13:43 , Processed in 0.058615 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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