BlockLowerTriangularMatrix

BlockLowerTriangularMatrix[lmat]

represents the block lower triangular matrix lmat as a structured array.

Details and Options

  • Block lower triangular matrices, when represented as structured arrays, allow for efficient storage and more efficient operations, including Det and LinearSolve.
  • A block lower triangular matrix generalizes a lower triangular matrix, where the scalar elements in a lower triangular matrix that are on or below the diagonal are replaced by matrices of appropriate dimensions.
  • For a BlockLowerTriangularMatrix sa, the following properties "prop" can be accessed as sa["prop"]:
  • "Matrix"block lower 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[BlockLowerTriangularMatrix[]] gives the block lower triangular matrix as an ordinary list.
  • BlockLowerTriangularMatrix[,TargetStructure->struct] returns the block lower triangular matrix in the format specified by struct. Possible settings include:
  • Automaticautomatically 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
  • BlockLowerTriangularMatrix[,TargetStructureAutomatic] is equivalent to BlockLowerTriangularMatrix[,TargetStructure"Structured"].

Examples

open allclose all

Basic Examples  (2)

Construct a block lower triangular matrix:

Show the elements:

Normal can convert a BlockLowerTriangularMatrix to its ordinary representation:

Construct a block lower triangular matrix with symbolic entries:

Show the elements:

Get the determinant:

Scope  (4)

BlockLowerTriangularMatrix 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:

Compute the determinant:

Compute the eigenvalues:

When appropriate, structured algorithms return another BlockLowerTriangularMatrix object:

Transposing bl gives a block upper triangular matrix:

The product is no longer a block triangular matrix:

Elements in BlockLowerTriangularMatrix are coerced to the precision of the nonzero elements of the input.

Exact matrix:

Machine-number matrix:

Arbitrary-precision number matrix:

Generalizations & Extensions  (1)

Represent a rectangular block lower triangular matrix:

Show the sizes of the diagonal blocks:

Options  (1)

TargetStructure  (1)

Return the block lower triangular matrix as a dense matrix:

Return the block lower triangular matrix as a structured array:

Return the block lower triangular matrix as a sparse array:

Applications  (1)

The Kronecker product of a lower triangular matrix and a general square matrix is a block lower triangular matrix:

Properties & Relations  (2)

Lower triangular matrices are treated as block lower triangular matrices with 1×1 diagonal blocks:

If a given matrix cannot be transformed into a block triangular form, BlockLowerTriangularMatrix returns the matrix itself:

Wolfram Research (2022), BlockLowerTriangularMatrix, Wolfram Language function, https://reference.wolfram.com/language/ref/BlockLowerTriangularMatrix.html (updated 2023).

Text

Wolfram Research (2022), BlockLowerTriangularMatrix, Wolfram Language function, https://reference.wolfram.com/language/ref/BlockLowerTriangularMatrix.html (updated 2023).

CMS

Wolfram Language. 2022. "BlockLowerTriangularMatrix." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2023. https://reference.wolfram.com/language/ref/BlockLowerTriangularMatrix.html.

APA

Wolfram Language. (2022). BlockLowerTriangularMatrix. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/BlockLowerTriangularMatrix.html

BibTeX

@misc{reference.wolfram_2023_blocklowertriangularmatrix, author="Wolfram Research", title="{BlockLowerTriangularMatrix}", year="2023", howpublished="\url{https://reference.wolfram.com/language/ref/BlockLowerTriangularMatrix.html}", note=[Accessed: 19-March-2024 ]}

BibLaTeX

@online{reference.wolfram_2023_blocklowertriangularmatrix, organization={Wolfram Research}, title={BlockLowerTriangularMatrix}, year={2023}, url={https://reference.wolfram.com/language/ref/BlockLowerTriangularMatrix.html}, note=[Accessed: 19-March-2024 ]}