Multiplication of two polynomials having different variables

11 ビュー (過去 30 日間)
Aitazaz Ahsan
Aitazaz Ahsan 2020 年 7 月 1 日
編集済み: John D'Errico 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
John D'Errico 2020 年 7 月 1 日
編集済み: 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).

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangePolynomials についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by