SymbolicIdentityArray[{n1,n2,…}]
represents an n1×n2×…×n1×n2×… array with elements ai1,i2,…,j1,j2,… equal to 1 if all ikjk, and 0 otherwise.
SymbolicIdentityArray
SymbolicIdentityArray[{n1,n2,…}]
represents an n1×n2×…×n1×n2×… array with elements ai1,i2,…,j1,j2,… equal to 1 if all ikjk, and 0 otherwise.
Details
- Valid dimension specifications ni in SymbolicIdentityArray[{n1,n2,…}] are positive integers. It is also possible to work with symbolic dimension specifications.
- SymbolicIdentityArray may be produced by differentiation involving ArraySymbol objects.
- For an array a=SymbolicIdentityArray[{n1,n2,…}] with positive integer dimension specifications ni, Normal[a] converts a to an explicit array. SparseArray[a] converts a to a SparseArray.
Examples
open all close allBasic Examples (2)
The derivative of a symbolic array variable with respect to itself is a SymbolicIdentityArray:
a = ArraySymbol["a", {m, n, p}];D[a, a]Create a SymbolicIdentityArray with explicit numeric dimensions:
a = SymbolicIdentityArray[{2, 2}]Convert a to an explicit array:
Normal[a]Convert a to a SparseArray:
SparseArray[a]Scope (2)
SymbolicIdentityArray[{m, n}] ^ 7Transpose[SymbolicIdentityArray[{m, n, p}], 3]SymbolicIdentityArray[{m}].MatrixSymbol["a", {m, n}]ArrayDot[ArraySymbol["a", {k, l, m, n}], SymbolicIdentityArray[{m, n}], 2]Properties & Relations (5)
SymbolicIdentityArray gives a symbolic representation of the array:
a = SymbolicIdentityArray[{2, 2}]Use Normal to convert a to an explicit array:
Normal[a]IdentityMatrix[n] gives an explicit version of SymbolicIdentityArray[{n}]:
a = IdentityMatrix[3]b = SymbolicIdentityArray[{3}]a === Normal[b]SymbolicIdentityArray is a special case of SymbolicDeltaProductArray:
a = SymbolicDeltaProductArray[{2, 3, 4, 2, 3, 4}, {{1, 4}, {2, 5}, {3, 6}}]b = SymbolicIdentityArray[{2, 3, 4}]Normal[a] === Normal[b]The derivative of a symbolic array variable with respect to itself is a SymbolicIdentityArray:
a = ArraySymbol["a", {3, 4, 5, 6, 7}];D[a, a]SymbolicIdentityArray objects are identity elements for ArrayDot:
a = ArraySymbol["a", {m, n, p, q, r}]ArrayDot[SymbolicIdentityArray[{m, n}], a, 2]ArrayDot[a, SymbolicIdentityArray[{p, q, r}], 3]Related Guides
History
Text
Wolfram Research (2024), SymbolicIdentityArray, Wolfram Language function, https://reference.wolfram.com/language/ref/SymbolicIdentityArray.html.
CMS
Wolfram Language. 2024. "SymbolicIdentityArray." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/SymbolicIdentityArray.html.
APA
Wolfram Language. (2024). SymbolicIdentityArray. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/SymbolicIdentityArray.html
BibTeX
@misc{reference.wolfram_2026_symbolicidentityarray, author="Wolfram Research", title="{SymbolicIdentityArray}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/SymbolicIdentityArray.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_symbolicidentityarray, organization={Wolfram Research}, title={SymbolicIdentityArray}, year={2024}, url={https://reference.wolfram.com/language/ref/SymbolicIdentityArray.html}, note=[Accessed: 13-June-2026]}