represents a d1×d2× array with structure type st and specific content data.


  • Normal[StructuredArray[]] gives the ordinary array corresponding to a structured array object.
  • SparseArray[StructuredArray[]] gives a sparse array corresponding to a structured array object.
  • The elements in StructuredArray need not be numeric.
  • The individual elements of a structured array cannot themselves be lists.
  • List and matrix operations are typically set up to work as they do in Normal[StructuredArray[]].
  • Functions with attribute Listable are automatically threaded over the individual elements of the ordinary arrays represented by StructuredArray objects. If the function is not supported for the structure type, then the result will be returned as an ordinary or sparse array.
  • Part extracts specified parts of the array represented by a StructuredArray object, rather than parts of the StructuredArray expression itself.
  • StructuredArray is treated as a raw object by functions like AtomQ and for purposes of pattern matching.
  • Dimensions gives the dimensions of a structured array.
  • The standard output format for a structured array indicates the structure type and the total dimensions.
  • StructuredArray objects are generated by array constructors such as SymmetrizedArray.


open all close all

Basic Examples  (1)

Represent an array based on symmetries:

Click for copyable input

Convert it to the ordinary representation:

Click for copyable input

Compare the memory required for the two representations:

Click for copyable input

Scope  (1)

Properties & Relations  (1)

Introduced in 2012