MATLAB 如何提取多项式系数
如何将1+x^4+(b+a)*x^3+(2+a*b)*x^2+(b+a)*x的系数提出来放在一个(1*4)的矩阵里,如下【1,b+a,2+a*b,b+a】。...
如何将1+x^4+(b+a)*x^3+(2+a*b)*x^2+(b+a)*x的系数提出来放在一个(1*4)的矩阵里,如下【1 , b+a , 2+a*b , b+a】。
展开
2个回答
展开全部
function s=poly_coef(p,x)
f=0;
p0=p;
while ~isreal(p)|p~=0
p=diff(p,'x');
f=f+1;
end
f=f-1;
for i=1:1:f
s(i)=diff(p0,'x',f-i+1)/(factorial(f-i+1));
p0=p0-s(i)*x^(f-i+1);
end
s=[s p0];
例如输入:
syms x a;
y=2*x^3+x^2+a;
再在script里调用上面的函数
ans=
[ 2, 1, 0, a]
f=0;
p0=p;
while ~isreal(p)|p~=0
p=diff(p,'x');
f=f+1;
end
f=f-1;
for i=1:1:f
s(i)=diff(p0,'x',f-i+1)/(factorial(f-i+1));
p0=p0-s(i)*x^(f-i+1);
end
s=[s p0];
例如输入:
syms x a;
y=2*x^3+x^2+a;
再在script里调用上面的函数
ans=
[ 2, 1, 0, a]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询