怎么用Matlab来求解多元一次方程啊?

来源:百度知道 编辑:UC知道 时间:2024/05/05 18:19:27
方程是y=a+bx+c^2+dx^3+ex^4+fx^5,初使条件x=7时 y=0 y的一阶导=0 y的二阶导=0 x=0时 y=6.5 y的一阶导=0 y的三阶导也=0 ,求abcdef,并画出该曲线的图形
谢谢啊,b是等于0的,用手算的时候可以看出来,可是我们要用matlab处理,根据条件写出的六个方程是a=6.5
b=0
d=0
6.5+7^2*c+7^4*e+7^5*f=0
2*c+4*7^3*e+5*7^4*f=0
c+6*7^2*e+10*7^3*f=0 还有我想请问那个f=solve(b)
c=subs(c)
e=subs(e)是什么意思啊,为什么=solve(b)我自己编的一个程序是
S=solve('a=6.5','b=0','d=0','6.5+7^2*c+7^4*e+7^5*f=0','2*c+4*7^3*e+5*7^4*f=0','c+6*7^2*e+10*7^3*f=0')
disp('s.a='),disp(S.a)
disp('s.b='),disp(S.b)
disp('s.c='),disp(S.c)
disp('s.d='),disp(S.d)
disp('s.e='),disp(S.e)
disp('s.f='),disp(S.f)
可是不知道图像要怎么出来,不知道要怎么处理,我的是不是写错了

clc;clear;
y=sym('a+b*x+c*x^2+d*x^3+e*x^4+f*x^5')%是不是c*x^2啊
y1=diff(y)
y2=diff(y,2)
y3=diff(y,3)
eq1=subs(y,'x',7)
eq2=subs(y1,'x',7)
eq3=subs(y2,'x',7)
eq4=subs(y,'x',0)-6.5
eq5=subs(y1,'x',0)
eq6=subs(y3,'x',0)
X=solve(eq1,eq2,eq3,eq4,eq5,eq6,'a,b,c,d,e,f');
a=X.a,b=X.b,c=X.c,d=X.d,e=X.e,f=X.f

f=solve(b)
c=subs(c)
e=subs(e)

y=subs(y)
ezplot(y)

运行结果:
y =a+b*x+c*x^2+d*x^3+e*x^4+f*x^5
y1 =b+2*c*x+3*d*x^2+4*e*x^3+5*f*x^4
y2 =2*c+6*d*x+12*e*x^2+20*f*x^3
y3 =6*d+24*e*x+60*f*x^2

eq1 =a+7*b+49*c+343*d+2401*e+16807*f
eq2 =b+14*c+147*d+1372*e+12005*f
eq3 =2*c+42*d+588*e+6860*f
eq4 =a-13/2
eq5 =b
eq6 =6*d

a =13/2
b =-52/21-2401*f
c =13/49+686*f
d =0
e =-13/14406-14*f
f =f

%其实,从eq5,可以看出:b=0。是不是一个bug啊

f =-52/504