MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]怎么表示关于 x,y的 n 阶多项式? (https://www.labfans.com/bbs/showthread.php?t=6988)

闻风听雨 2009-03-22 01:29

[求助]怎么表示关于 x,y的 n 阶多项式?
 
大家好,在MATLAB中,怎么表示关于 x,y的 n 阶多项式(2个变量),在网上找了好久,都沒找到相关资料,:cry: 特来这里求助,各位高手能否指点一下?先谢过了

xiezhh 2009-03-22 08:20

回复: [求助]怎么表示关于 x,y的 n 阶多项式?
 
是符号表达吧,不知道是不是这样的

%如果n也是符号
syms x y n
f1=(x+y)^n
%如果n是已知常数
f2=(x+y)^10
f3=expand(f2)
%若已知多项式系数,写出x的多项式
p=[1 2 3 4 5 6]; %系数(降幂排列)
f4=poly2sym(p,x)

闻风听雨 2009-03-22 10:38

回复: [求助]怎么表示关于 x,y的 n 阶多项式?
 
谢谢,在这个表达式中,每一项的幂不一定相等,例如f(x,y)=3x^3+2y^2+3xy+5,所以这才麻烦

zhyanchao 2009-03-22 12:56

回复: [求助]怎么表示关于 x,y的 n 阶多项式?
 
以f(x,y)=3x^3+2y^2+3xy+5为例,如下:
syms x y;
a=[x^3;x^2;x;1];
b=[y^3 y^2 y 1];
c=a*b;
d=zeros(4);
d(1,4)=3;d(3,3)=3;d(4,2)=2;d(4,4)=1;
n=d.*c;
f=sum(sum(n,2))
f =

3*x^3+3*x*y+2*y^2+1

闻风听雨 2009-03-22 20:15

回复: [求助]怎么表示关于 x,y的 n 阶多项式?
 
谢谢
不过,在这个M函数中,f(x,y)多项式形式未知(x,y的n阶多项式,每一项的幂不一定相等),也即求f(x,y)的一般表达式
如果只有一个变量x
则 [COLOR="Lime"] p=[2 3 4]
sym_p=poly2sym(p)[/COLOR] 即可表达2*x^2 + 3*x + 4
如果有两个变量x,y该怎么表达呢?

laosam280 2009-03-25 17:41

回复: [求助]怎么表示关于 x,y的 n 阶多项式?
 
你都知道了函数的表达式,你不就可以用inline('fun') 函数来表示吗?呵呵


所有时间均为北京时间。现在的时间是 15:20

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.