PolynomialTools[Approximate]
ConvolutionMatrix
construct a Convolution matrix of a polynomial
Calling Sequence
Parameters
Description
Examples
Compatibility
ConvolutionMatrix(F, vars, degree)
ConvolutionMatrix(F, vars, degree, rtableoptions=[options])
F
-
polynom
vars
set or list of variables
degree
non-negative integer
options
(optional) options that are passed to the Matrix constructor
The ConvolutionMatrix command returns a Matrix that represents polynomial multiplication of F by a polynomial of the given degree (total degree) when the polynomial to multiply is represented as a vector as returned by CoefficientVector.
A Sylvester matrix can be considered to be a block matrix composed of two convolution matrices and the SylvesterMatrix command calls this one.
The approximate polynomial division command Divide solves up a least squares problem on the output of this command.
with⁡PolynomialTools:-Approximate:
f ≔ x2+y2−1;g ≔ x2+x⁢y+y+1
f≔x2+y2−1
g≔x2+x⁢y+y+1
fg ≔ sort⁡expand⁡f⁢g,x,y
fg≔x4+x3⁢y+x2⁢y2+x⁢y3+x2⁢y+y3−x⁢y+y2−y−1
Cf ≔ ConvolutionMatrix⁡f,x,y,degree⁡g,x,y
vg ≔ PolynomialTools:-CoefficientVector⁡g,x,y
vg≔101110
This matrix vector product computes the polynomial product
vfg ≔ `.`⁡Cf,vg
PolynomialTools:-FromCoefficientVector⁡vfg,x,y
x4+x3⁢y+x2⁢y2+x⁢y3+x2⁢y+y3−x⁢y+y2−y−1
The PolynomialTools:-Approximate:-ConvolutionMatrix command was introduced in Maple 2021.
For more information on Maple 2021 changes, see Updates in Maple 2021.
See Also
Divide
Download Help Document
What kind of issue would you like to report? (Optional)