Matrix-Matrix Product

class fastmat.Product

Bases: fastmat.Matrix.Matrix

\[M = \prod\limits_i A_i\]

where the \(A_{i}\) can be fast transforms of *any* type.

>>> # import the package
>>> import fastmat as fm
>>> # define the product terms
>>> A = fm.Circulant(x_A)
>>> B = fm.Circulant(x_B)
>>> # construct the product
>>> M = fm.Product(A.H, B)

Assume we have two circulant matrices \(A\) and \(B\). Then we define

\[M = A_c^\mathrm{H} B_c.\]

Initialize a Product matrix instance.

*matrices : fastmat.Matrix or scalar value

The matrix instances to form a matrix-matrix product of. You may also specify scalar values.

typeExpansion : bool, optional

Expand the data type of input data to the data type specified with this paramter.

Defaults to a floating-point expansion of the promoted type of all nested matrices’ (and scalar values’) data types.

**options : optional

Additional optional keyworded arguments. Supports all optional arguments supported by fastmat.Matrix.