TensorDimensions[tensor]
gives the list of dimensions of tensor.
TensorDimensions
TensorDimensions[tensor]
gives the list of dimensions of tensor.
Details and Options
- TensorDimensions accepts any type of tensor, either symbolic or explicit, including any type of array.
- On explicit rectangular arrays, TensorDimensions coincides with Dimensions. On symbolic arrays, TensorDimensions stays unevaluated unless the array has been assigned a rank through any form of assumption.
- TensorDimensions takes the following options:
-
Assumptions $Assumptions assumptions on parameters GenerateConditions False whether to generate answers that involve conditions on parameters
Examples
open all close allBasic Examples (3)
TensorDimensions[{{1, 3}, {2, Pi}, {a, b}}]Dimensions of an array symbol:
TensorDimensions[ArraySymbol["a", {p, q, r}]]Dimensions of a symbolic array expression:
$Assumptions = {A∈Arrays[{2, d, 4}], B∈Arrays[{d, d}]};TensorDimensions[AB]Scope (4)
Dimensions of explicit arrays:
A = Array[a, {2, 3, 4}];
TensorDimensions[A]A = SparseArray[{{1, 2, 3} -> a}, {2, 3, 4}];
TensorDimensions[A]A = SymmetrizedArray[pos_ :> a, {4, 4, 4}, Symmetric[All]];
TensorDimensions[A]Dimensions of symbolic arrays:
$Assumptions = {
A∈Arrays[{4, 4, 5, 5}, Reals, Symmetric[{1, 2}]],
M∈Matrices[{3, 4}, Reals],
V∈Vectors[5, Reals]
};TensorDimensions[A]TensorDimensions[M]TensorDimensions[V]Dimensions of vector, matrix, and array symbols:
TensorDimensions[VectorSymbol["v", n]]TensorDimensions[MatrixSymbol["m", {5, 7}]]TensorDimensions[ArraySymbol["a", {p, q, r, s}]]Dimensions of general tensor expressions:
$Assumptions = {
A∈Arrays[{4, 5, 5}, Reals, Symmetric[{2, 3}]],
M∈Matrices[{5, 4}, Reals]
};TensorDimensions[AM]TensorRank[TensorContract[AM, {{1, 5}, {2, 3}}]]TensorRank[TensorTranspose[A, {3, 1, 2}]]Options (2)
Assumptions (1)
GenerateConditions (1)
By default, TensorDimensions quietly makes assumptions necessary for the input to be well-defined:
a = MatrixSymbol["a", {m, n}];
b = MatrixSymbol["b", {p, q}];
TensorDimensions[a + b]With GenerateConditionsTrue, TensorDimensions gives a conditional result:
TensorDimensions[a + b, GenerateConditions -> True]With GenerateConditionsNone, TensorDimensions fails when assumptions are necessary:
TensorDimensions[a + b, GenerateConditions -> None]Properties & Relations (2)
On explicit rectangular arrays, TensorDimensions coincides with Dimensions:
A = Array[a, {2, 3, 4}];
{TensorDimensions[A], Dimensions[A]}A = SparseArray[{{1, 2, 3} -> a}, {2, 3, 4}];
{TensorDimensions[A], Dimensions[A]}A = SymmetrizedArray[pos_ :> a, {4, 4, 4}, Symmetric[All]];
{TensorDimensions[A], Dimensions[A]}For symbolic expressions, there are no default dimensions assumed:
TensorDimensions[A]Use assumptions to assign dimensions to the array:
Assuming[A∈Arrays[{3, 4, d, d}], TensorDimensions[A]]$Assumptions = A∈Arrays[{3, 4, 5}];
TensorDimensions[A]See Also
Tech Notes
Related Guides
Text
Wolfram Research (2012), TensorDimensions, Wolfram Language function, https://reference.wolfram.com/language/ref/TensorDimensions.html (updated 2024).
CMS
Wolfram Language. 2012. "TensorDimensions." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2024. https://reference.wolfram.com/language/ref/TensorDimensions.html.
APA
Wolfram Language. (2012). TensorDimensions. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/TensorDimensions.html
BibTeX
@misc{reference.wolfram_2026_tensordimensions, author="Wolfram Research", title="{TensorDimensions}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/TensorDimensions.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_tensordimensions, organization={Wolfram Research}, title={TensorDimensions}, year={2024}, url={https://reference.wolfram.com/language/ref/TensorDimensions.html}, note=[Accessed: 13-June-2026]}