Matlab提取多元齐次多项式系数问题
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/23 22:36:26
Matlab提取多元齐次多项式系数问题
对齐次多元多项式 p=x1^4 + 2*x1^3*x2 + x1^2*x2^2 + 3*x1*x2^3 - x2^4
如果想得到某一项的系数,譬如x1^2*x2^2,该如何实现?若期望 齐次多项式p 单项式的系数 按字典序输出,又该如何实现?
回答其中任意一个都可以,两个都回答更好.
对齐次多元多项式 p=x1^4 + 2*x1^3*x2 + x1^2*x2^2 + 3*x1*x2^3 - x2^4
如果想得到某一项的系数,譬如x1^2*x2^2,该如何实现?若期望 齐次多项式p 单项式的系数 按字典序输出,又该如何实现?
回答其中任意一个都可以,两个都回答更好.
p=x1^4 + 2*x1^3*x2 + x1^2*x2^2 + 3*x1*x2^3 - x2^4;
a=sym2poly(subs(p,x2,1));
x1^2*x2^2的系数b=a(length(a)-2)
再问: 谢谢你的问答,但这种方法对我帮助不大。譬如当变量和项数增多,还需要判断所求项在新得到的多项式中的位置,这时很费事,我期望是: 能否给出一种算法 对一个多项式,输入任一个单项式,其对应的系数就可以输出。
再答: 别的方法还没想到 但我觉得 sym2poly和subs两个函数结合 足以解决你的问题 当变量和项数增多 sym2poly(subs(subs(p,x1^2*x2^2,sym('h')),[x1 x2 x3 ... xn],[0 0]));
a=sym2poly(subs(p,x2,1));
x1^2*x2^2的系数b=a(length(a)-2)
再问: 谢谢你的问答,但这种方法对我帮助不大。譬如当变量和项数增多,还需要判断所求项在新得到的多项式中的位置,这时很费事,我期望是: 能否给出一种算法 对一个多项式,输入任一个单项式,其对应的系数就可以输出。
再答: 别的方法还没想到 但我觉得 sym2poly和subs两个函数结合 足以解决你的问题 当变量和项数增多 sym2poly(subs(subs(p,x1^2*x2^2,sym('h')),[x1 x2 x3 ... xn],[0 0]));