回 帖 发 新 帖 刷新版面

主题:对多元高次方程求解求解的程序

[size=6][size=3]哪位大侠知道如何用Fortran编程分别对下列四元二次方程求解:
   (x-xi)^2+(y-yi)^2+(z-zi)^2=(R+Ri)^2,i=1,2,3,4
这里,xi,yi,zi,Ri已知,x,y,z,R是要求解的变量
以及
(x-xi)^2+(y-yi)^2+(z-zi)^2=(R+Ri)^2,i=1,2,3
 p1*x+p2*y+p3*z=p0
这里xi,yi,zi,Ri,p0,p1,p2,p3已知,x,y,z,R是要求解的变量。

如果能提供多元高次方程的通用程序,那就更好。
希望各位大侠能帮帮我。。。[/size][/size]

回复列表 (共7个回复)

沙发

可以找找梯度法或是最速下降法、牛顿法等做参考:)

板凳


请问您有此类的fortran程序吗?

3 楼

没有。

4 楼


先考虑一下方程组的几何意义吧。

(x-xi)^2+(y-yi)^2+(z-zi)^2=(R+Ri)^2,i=1,2,3,4
的解是四个球面的交点,球心在(xi,yi,zi)。
由于半径有限制,此方程组不一定有解!

(x-xi)^2+(y-yi)^2+(z-zi)^2=(R+Ri)^2,i=1,2,3
p1*x+p2*y+p3*z=p0
的解是三个球面和一个平面的交点,同样不一定有解!

如果没有解,Newton法等迭代法根本收敛不了。

5 楼

[size=3]其实我算的就是四个球之间的内切球,变量x,y,z是内切球的坐标,R是其半径。而内切球可以有两个,可以有一个,甚至可以没有。所以在此方面考虑,怎样用数学方法求解,特别是能否用用fortran程序去求解。

6 楼

内切球。。。你再好好想想方程列对了没有。。。
你列的方程式是四个球面的焦点。。。

7 楼

打错字了,你列的方程式是四个球面的交点

我来回复

您尚未登录,请登录后再回复。点此登录或注册