LowerTriangularize
gives a matrix in which all but the lower triangular elements of m are replaced with zeros.
LowerTriangularize[m,k]
replaces with zeros only the elements above the k subdiagonal of m.
Details and Options
- LowerTriangularize[m] works even if m is not a square matrix.
- In LowerTriangularize[m,k], positive k refers to subdiagonals above the main diagonal and negative k refers to subdiagonals below the main diagonal.
- LowerTriangularize works with SparseArray objects.
- LowerTriangularize[…,TargetStructure->struct] returns the lower 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 LowerTriangularMatrix - With LowerTriangularize[…,TargetStructureAutomatic], the structure of the resulting lower triangular matrix is the same as that of the original matrix, if the original matrix is a dense matrix, a sparse array, a structured DiagonalMatrix or a structured LowerTriangularMatrix. Otherwise, a dense matrix is returned.
Examples
open allclose allBasic Examples (3)
Scope (12)
Basic Uses (8)
Get the lower triangular part of nonsquare matrices:
Find the lower triangular part of a machine-precision matrix:
Lower triangular part of a complex matrix:
Lower triangular part of an exact matrix:
Lower triangular part of an arbitrary-precision matrix:
Compute the lower triangular part of a symbolic matrix:
Large matrices are handled efficiently:
The number of rows or columns limits the meaningful values of the parameter k:
Special Matrices (4)
The lower triangular part of a sparse matrix is returned as a sparse matrix:
The lower triangular part of structured matrices:
The lower triangular part of an identity matrix is the matrix itself:
This is true of any diagonal matrix:
Compute the lower triangular part, including the superdiagonal, for HilbertMatrix:
Options (2)
TargetStructure (2)
Return the result as a dense matrix:
Return the result as a sparse matrix:
Return the result as a LowerTriangularMatrix:
The setting TargetStructureAutomatic gives a sparse result:
Convert the sparse array to a dense matrix:
The setting TargetStructureAutomatic gives a dense result:
Applications (2)
LUDecomposition decomposes a matrix as a product of upper and lower triangular matrices, returned as a triple {lu,perm,cond}:
Extract the strictly lower part of lu with LowerTriangularize and place ones on the diagonal:
Extract the upper part of lu with UpperTriangularize:
Reconstruct the original matrix as a permutation of the product of l and u:
JordanDecomposition relates any matrix to an upper triangular matrix via a similarity transformation :
Verify that the Jordan matrix is upper triangular and similar to the original matrix:
The matrix is diagonalizable iff its Jordan matrix is also lower triangular:
Properties & Relations (6)
Matrices returned by LowerTriangularize satisfy LowerTriangularMatrixQ:
The inverse of a lower triangular matrix is lower triangular:
This extends to arbitrary powers and functions:
The product of two (or more) lower triangular matrices is lower triangular:
The determinant of a triangular matrix equals the product of the diagonal entries:
Eigenvalues of a triangular matrix equal its diagonal elements:
LowerTriangularize[m,k] is equivalent to Transpose[UpperTriangularize[Transpose[m], -k]]:
Text
Wolfram Research (2008), LowerTriangularize, Wolfram Language function, https://reference.wolfram.com/language/ref/LowerTriangularize.html (updated 2023).
CMS
Wolfram Language. 2008. "LowerTriangularize." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2023. https://reference.wolfram.com/language/ref/LowerTriangularize.html.
APA
Wolfram Language. (2008). LowerTriangularize. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/LowerTriangularize.html