Difference between revisions of "Polyadic.m"

From Spinach Documentation Wiki
Jump to: navigation, search
m (Rename Arguments section heading to Parameters)
m (Move Description section into pre-Syntax prose)
Line 2: Line 2:
 
Creates an object of a polyadic class.
 
Creates an object of a polyadic class.
  
−
==Syntax==
 
−
 
−
    p=polyadic(cores)
 
−
 
−
==Description==
 
 
A polyadic is a matrix formed by a Kronecker product, with those products stored unopened. For example,
 
A polyadic is a matrix formed by a Kronecker product, with those products stored unopened. For example,
  
Line 12: Line 7:
  
 
corresponds to A(x)B(x)C + D(x)E matrix. Any multiplicative action by this matrix may be computed without opening the Kronecker products. This can save orders of magnitude in CPU time.  
 
corresponds to A(x)B(x)C + D(x)E matrix. Any multiplicative action by this matrix may be computed without opening the Kronecker products. This can save orders of magnitude in CPU time.  
 +
 +
==Syntax==
 +
 +
    p=polyadic(cores)
  
 
==Parameters==
 
==Parameters==

Revision as of 19:01, 5 June 2026

Creates an object of a polyadic class.

A polyadic is a matrix formed by a Kronecker product, with those products stored unopened. For example,

                       cores={{A,B,C},{D,E}}

corresponds to A(x)B(x)C + D(x)E matrix. Any multiplicative action by this matrix may be computed without opening the Kronecker products. This can save orders of magnitude in CPU time.

Syntax

    p=polyadic(cores)

Parameters

        cores -    a cell array of cell arrays of matrices
                   whose Konecker products make up the mat-
                   rix of interest.

Outputs

        p     -    a polyadic representation of a matrix 
                   that behaves in many respects like the
                   matrix it represents.

Notes

Nested polyadics are permitted - the input matrices may be polyadics themselves.

See also

kronm.m

Version 2.1, authors: Ilya Kuprov