Multiplication of two polynomials having different variables

11 views (last 30 days)
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)?

Accepted Answer

John D'Errico
John D'Errico on 1 Jul 2020
Edited: John D'Errico on 1 Jul 2020
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).

More Answers (0)

Categories

Find more on Polynomials in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!