解含矩阵的为参数的非线性方程组的问题,急!

来源:百度知道 编辑:UC知道 时间:2024/09/22 22:24:24
y=-3544.59151*x^3+171.23435*x^2+6.61009*x-0.00198
y=k*(x-xi)+yi
有这样两个方程组成方程组。
其中第二个方程里k,xi,yi三个参数为一维矩阵。
定义如下:
S=0.0929;
V=6.53E-4;
L=4.20E-2;
yi=0.02:0.02:0.2;
xi=1-64.32./(64.3+yi./(1+yi));
G=(V.*29+V.*64.*yi./(1-yi))/S;
W=(L.*18+L.*64.*xi./(1-xi))/S;
kya=0.066.*G.^0.7.*W.^0.25;
kxa=0.152.*W.^0.82;
kxa2kya=-kxa./kya;
k=kxa2kya;

请问如何解出x,y?希望能以矩阵形式输出。
或者用图解法解决也行
谢谢了。
呃。和我想像的有点不一样,是我没说很清楚。
如下图:蓝色o的坐标即是(xi,yi),红色曲线是这两个矩阵
g=[2.5e-2 1.5e-2 1.0e-2 0.7e-2 0.5e-2 0.3e-2 0.2e-2 0.15e-2 0.10e-2 0.05e-2 0.02e-2];
p=[21.5e-2 12.3e-2 7.87e-2 5.2e-2 3.47e-2 1.88e-2 1.13e-2 0.773e-2 0.427e-2 0.160e-2 0.067e-2];
画出来的图形。这两个矩阵又通过polyfit3次拟合得出y=-3544.59151*x^3+171.23435*x^2+6.61009*x-0.00198这个方程。
由于用图解法会比较不精确,所以想用联立方程组的求交点得到结果的方法。
方程组即:
y=-3544.59151*x^3+171.23435*x^2+6.61009*x-0.00198
y=k*(x-xi)+yi %代表以每个蓝色o为起始点向红色曲线做斜率为k的直线

图解法:以每个蓝色o为起始点向红色曲线做斜率为k的直线

分别用解析法(x、y)和图解法(X、Y)

clc;clear;
S=0.0929;
V=6.53E-4;
L=4.20E-2;
yi=0.02:0.02:0.2;
xi=1-64.32./(64.3+yi./(1+yi));
G=(V.*29+V.*64.*yi./(1-yi))/S;
W=(L.*18+L.*64.*xi./(1-xi))/S;
kya=0.066.*G.^0.7.*W.^0.25;
kxa=0.152.*W.^0.82;
kxa2kya=-kxa./kya;
k=kxa2kya;

x=linspace(-0.6,0.6,10);
N=length(k);
for m=1:N
yy(m)=k(m)*(x(m)-xi(m))+yi(m);
end

p=polyfit(x,yy,2)%二次拟合
plot(x,yy,'o',x,polyval(p,x))
y=vpa(poly2sym(p,'x'),5) %可以的到:y =8.8654*x^2-19.372*x+.13356
[x,y]=solve('y =8.8654*x^2-19.372*x+.13356','y=-3544.59151*x^3+171.23435*x^2+6.61009*x-0.00198','x,y')
hold on
ezplot('-3544.59151*x^3+171.23435*x^2+6.61009*x-0.00198',[-0.2 0.3 -3 3])
[X,Y]=ginput(3)%注意!图形中,鼠标为十字,分别点击三个交叉点,得到X和Y。

结果:
x =

[ -.68804498161675418364386012668505e-1]
[ .507362159834814978980722982208