登录论坛

查看完整版本 : [MATLAB数学相关] 高手请进:求方程组的解


phoenixblue
2010-03-29, 17:12
各位高手,请问一下,怎么用MATLAB求解方程组,比如说,求如下方程组
x^2+y^2=60^2
y=3*(x+100)+60
可以这样解
[x,y]=solve('x^2+y^2=60^2','y=3*(x+100)+60')

但是,我要解大量的方程组,只是系数不同,我编了一个m文件
k=input('k=');
xp=input('xp=');
yp=input('yp=');
rp=input('rp=');
[x,y]=solve('k*(x+xp)+yp-y=0','x^2+y^2-rp^2=0')

运行输入数据以后,得到的结果却是
x =

(y - yp)/k - (y - yp + k*(rp^2 - y^2)^(1/2))/k
(yp - y + k*(rp^2 - y^2)^(1/2))/k + (y - yp)/k


y =

(y - yp + k*(rp^2 - y^2)^(1/2))/k
-(yp - y + k*(rp^2 - y^2)^(1/2))/k

请问,怎样才能得到数值解呢,希望各位大哥给个建议,或者用其他的方法解
我的问题实际上是求一条直线与圆的交点坐标