BlockUpperTriangularMatrix
BlockUpperTriangularMatrix[umat]
represents the block upper triangular matrix umat as a structured array.
Details and Options
- Block upper triangular matrices, when represented as structured arrays, allow for efficient storage and more efficient operations, including Det and LinearSolve.
- A block upper triangular matrix generalizes an upper triangular matrix, where the scalar elements in an upper triangular matrix that are on or above the diagonal are replaced by matrices of appropriate dimensions.
- For a BlockUpperTriangularMatrix sa, the following properties "prop" can be accessed as sa["prop"]:
-
"Matrix" block upper triangular matrix, represented as a full array "BlockSizes" sizes of the diagonal blocks "RowPermutation" permutation of the rows, represented as a permutation list "ColumnPermutation" permutation of the columns, represented as a permutation list "Properties" list of supported properties "Structure" type of structured array "StructuredData" internal data stored by the structured array "StructuredAlgorithms" list of functions with special methods for the structured array "Summary" summary information, represented as a Dataset - Normal[BlockUpperTriangularMatrix[…]] gives the block upper triangular matrix as an ordinary list.
- BlockUpperTriangularMatrix[…,TargetStructure->struct] returns the block upper triangular matrix in the format specified by struct. Possible settings include:
-
Automatic automatically choose the representation returned "Dense" represent the matrix as a dense matrix "Sparse" represent the matrix as a sparse array "Structured" represent the matrix as a structured array - BlockUpperTriangularMatrix[…,TargetStructureAutomatic] is equivalent to BlockUpperTriangularMatrix[…,TargetStructure"Structured"].
Examples
open allclose allBasic Examples (2)
Construct a block upper triangular matrix:
Normal can convert a BlockUpperTriangularMatrix to its ordinary representation:
Construct a block upper triangular matrix with symbolic entries:
Scope (4)
BlockUpperTriangularMatrix objects include properties that give information about the array:
The "BlockSizes" property gives the dimensions of the diagonal blocks:
The "RowPermutation" property encodes row permutations done to the original matrix:
The "ColumnPermutation" property encodes column permutations done to the original matrix:
The "Summary" property gives a brief summary of information about the array:
The "StructuredAlgorithms" property lists the functions that use the structure of the representation:
Structured algorithms are typically faster:
When appropriate, structured algorithms return another BlockUpperTriangularMatrix object:
Transposing bu gives a block lower triangular matrix:
The product is no longer a block triangular matrix:
Elements in BlockUpperTriangularMatrix are coerced to the precision of the nonzero elements of the input.
Generalizations & Extensions (1)
Options (1)
Applications (1)
Properties & Relations (2)
Upper triangular matrices are treated as block upper triangular matrices with 1×1 diagonal blocks:
If a given matrix cannot be transformed into a block triangular form, BlockUpperTriangularMatrix returns the matrix itself:
Text
Wolfram Research (2022), BlockUpperTriangularMatrix, Wolfram Language function, https://reference.wolfram.com/language/ref/BlockUpperTriangularMatrix.html (updated 2023).
CMS
Wolfram Language. 2022. "BlockUpperTriangularMatrix." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2023. https://reference.wolfram.com/language/ref/BlockUpperTriangularMatrix.html.
APA
Wolfram Language. (2022). BlockUpperTriangularMatrix. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/BlockUpperTriangularMatrix.html