Aquarius1986 发表于 2009-8-18 11:29

急求!!一个非线性方程组求解方法!

7个未知参数:l1,l2,l3,l4,l5,m,h.其实七个方程形式是一样的,只不过给定的已知参数不同。
         (m-(l1^2-((l1^2-l2^2+1.2^2)/(2*1.2))^2)^(1/2))^2+((l1^2-l2^2+1.2^2)/2/1.2-(h+l5*sin(90*pi/180)-(l4^2-l5^2*cos(90*pi/180)^2)^(1/2)))^2-l3^2=0;
         (m-(l1^2-((l1^2-l2^2+1.215^2)/(2*1.215))^2)^(1/2))^2+((l1^2-l2^2+1.215^2)/2/1.215-(h+l5*sin(150*pi/180)-(l4^2-l5^2*cos(150*pi/180)^2)^(1/2)))^2-l3^2=0;
         (m-(l1^2-((l1^2-l2^2+1.222^2)/(2*1.222))^2)^(1/2))^2+((l1^2-l2^2+1.222^2)/2/1.222-(h+l5*sin(180*pi/180)-(l4^2-l5^2*cos(180*pi/180)^2)^(1/2)))^2-l3^2=0;
         (m-(l1^2-((l1^2-l2^2+1.229^2)/(2*1.229))^2)^(1/2))^2+((l1^2-l2^2+1.229^2)/2/1.229-(h+l5*sin(225*pi/180)-(l4^2-l5^2*cos(225*pi/180)^2)^(1/2)))^2-l3^2=0;
         (m-(l1^2-((l1^2-l2^2+1.23^2)/(2*1.23))^2)^(1/2))^2+((l1^2-l2^2+1.23^2)/2/1.23-(h+l5*sin(270*pi/180)-(l4^2-l5^2*cos(270*pi/180)^2)^(1/2)))^2-l3^2=0;
         (m-(l1^2-((l1^2-l2^2+1.229^2)/(2*1.229))^2)^(1/2))^2+((l1^2-l2^2+1.229^2)/2/1.229-(h+l5*sin(315*pi/180)-(l4^2-l5^2*cos(315*pi/180)^2)^(1/2)))^2-l3^2=0;
         (m-(l1^2-((l1^2-l2^2+1.222^2)/(2*1.222))^2)^(1/2))^2+((l1^2-l2^2+1.222^2)/2/1.222-(h+l5*sin(360*pi/180)-(l4^2-l5^2*cos(360*pi/180)^2)^(1/2)))^2-l3^2=0;
         我在Matlab里用fsolve无法求解,在1stOpt里迭代求解的结果误差太大,急求各位高手指点!

[ 本帖最后由 无水1324 于 2009-8-18 22:01 编辑 ]

无水1324 发表于 2009-8-18 22:02

回复 楼主 Aquarius1986 的帖子

考虑其他的非线性方程组求解吧,如牛顿法迭代法等

Aquarius1986 发表于 2009-8-19 09:10

在1stOpt里就是用牛顿迭代法和共轭梯度法算的,但是结果误差很大。想在MATLAB里用迭代算法,但是求梯度矩阵是在是不小的工作量啊。
页: [1]
查看完整版本: 急求!!一个非线性方程组求解方法!