Difference between revisions of "Polyadic.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Normalise sequential blank lines)
(Update function See also links and function index membership)
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
−
{{DISPLAYTITLE:polyadic.m}}
+
{{DISPLAYTITLE:polyadic.m}} __NOTOC__
−
Creates an object of a polyadic class.
+
Creates a polyadic object representing a matrix as a sum of unopened Kronecker products, for example a two-term object with cores {A,B,C} and {D,E} represents A(x)B(x)C + D(x)E; multiplicative actions can then be computed without expanding the Kronecker products, which can save orders of magnitude in CPU time.
  
 
==Syntax==
 
==Syntax==
Line 6: Line 6:
 
     p=polyadic(cores)
 
     p=polyadic(cores)
  
−
==Description==
+
==Parameters==
−
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.
 
−
 
 
−
==Arguments==
 
  
 
         cores -    a cell array of cell arrays of matrices
 
         cores -    a cell array of cell arrays of matrices
Line 29: Line 22:
  
 
==See also==
 
==See also==
−
[[kronm.m]]
+
[[kronm.m]], [[ttclass.m]], [[Tensor_train_module]]
  
 
''Version 2.1, authors: [[Ilya Kuprov]]''
 
''Version 2.1, authors: [[Ilya Kuprov]]''

Latest revision as of 19:39, 6 June 2026

Creates a polyadic object representing a matrix as a sum of unopened Kronecker products, for example a two-term object with cores {A,B,C} and {D,E} represents A(x)B(x)C + D(x)E; multiplicative actions can then be computed without expanding the Kronecker products, which 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, ttclass.m, Tensor_train_module

Version 2.1, authors: Ilya Kuprov