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