# Multiplication of two polynomials having different variables

5 ビュー (過去 30 日間)
Aitazaz Ahsan 2020 年 7 月 1 日

i want to multiply two variables like
(X^3 + X^2+ X+1)*(Y^3 +Y^2 +Y+1)
Is there any built in function like "conv" ( which help us to multiply two variables of same variable)?

### 採用された回答

John D'Errico 2020 年 7 月 1 日

The simple answer is to use the symbolic toolbox. If you have it, I cannnot think of a good reason why you would not use it.
syms X Y
(X^3 + X^2+ X+1)*(Y^3 +Y^2 +Y+1)
ans =
(X^3 + X^2 + X + 1)*(Y^3 + Y^2 + Y + 1)
expand(ans)
ans =
X^3*Y^3 + X^3*Y^2 + X^3*Y + X^3 + X^2*Y^3 + X^2*Y^2 + X^2*Y + X^2 + X*Y^3 + X*Y^2 + X*Y + X + Y^3 + Y^2 + Y + 1
Lacking that, you can download my sympoly toolbox. It is on the file exchange. So I can do this:
sympoly X Y
(X^3 + X^2+ X+1)*(Y^3 +Y^2 +Y+1)
ans =
1 + Y + Y^2 + Y^3 + X + X*Y + X*Y^2 + X*Y^3 + X^2 + X^2*Y + X^2*Y^2 + X^2*Y^3 + X^3 + X^3*Y + X^3*Y^2 + X^3*Y^3
So at least for basic polynomial manipulations, it works quite well.
Lacking that, can you solve the problem with neither tool present? Of course. Since you wanted to use conv...
xpoly = [1 1 1 0];
ypoly = [1 1 1 1];
Effectively, you know these are the coefficients of polynomials in x and y, such that the ith element of xpoly is the coefficient of X^(4- i).
xypoly = xpoly'*ypoly
xypoly =
1 1 1 1
1 1 1 1
1 1 1 1
0 0 0 0
So the (i,j) element of xypoly is the coefficient of x^(4 - i) * y^(4 - j).