Search Results for

    Show / Hide Table of Contents

    Class LowerTriangularMatrix

    Class for lower triangular matrices

    Inheritance
    Object
    Matrix
    LowerTriangularMatrix
    Implements
    IList<Double>
    ICollection<Double>
    IReadOnlyList<Double>
    IReadOnlyCollection<Double>
    IEnumerable<Double>
    IEnumerable
    ICloneable
    SettableTo<Matrix>
    CanSetAllElementsTo<Double>
    Inherited Members
    Matrix.data
    Matrix.rows
    Matrix.cols
    Matrix.Item[Int32, Int32]
    Matrix.Item[Int32]
    Matrix.RowVector(Int32)
    Matrix.Rows
    Matrix.Cols
    Matrix.SourceArray
    Matrix.Count
    Matrix.GetEnumerator()
    Matrix.IEnumerable.GetEnumerator()
    Matrix.Contains(Double)
    Matrix.CopyTo(Double[], Int32)
    Matrix.ICollection<Double>.IsReadOnly
    Matrix.ICollection<Double>.Add(Double)
    Matrix.ICollection<Double>.Clear()
    Matrix.ICollection<Double>.Remove(Double)
    Matrix.IndexOf(Double)
    Matrix.IList<Double>.Insert(Int32, Double)
    Matrix.IList<Double>.RemoveAt(Int32)
    Matrix.FromArray(Double[,])
    Matrix.ToArray()
    Matrix.CopyTo(Double[,])
    Matrix.SetTo(Matrix)
    Matrix.SetAllElementsTo(Double)
    Matrix.EqualsAll(Double)
    Matrix.SetTo(Double[])
    Matrix.SetTo(Double[], Int32)
    Matrix.SetTo(Double[,])
    Matrix.SymmetryError()
    Matrix.Symmetrize()
    Matrix.SetToIdentity()
    Matrix.SetToIdentityScaledBy(Double)
    Matrix.Identity(Int32)
    Matrix.IdentityScaledBy(Int32, Double)
    Matrix.SetToTranspose(Matrix)
    Matrix.SetToSubmatrix(Matrix, Int32, Int32)
    Matrix.SetSubmatrix(Int32, Int32, Matrix)
    Matrix.SetSubmatrix(Int32, Int32, Matrix, Int32, Int32, Int32, Int32)
    Matrix.SetToDiagonal(Vector)
    Matrix.SetDiagonal(Vector)
    Matrix.FromDiagonal(Vector)
    Matrix.Diagonal()
    Matrix.EnumerateDiagonal()
    Matrix.TraceOfProduct(Matrix, Matrix)
    Matrix.DiagonalOfProduct(Matrix, Matrix)
    Matrix.Scale(Double)
    Matrix.ScaleRows(Vector)
    Matrix.ScaleCols(Vector)
    Matrix.Median()
    Matrix.SetToElementwiseProduct(Matrix, Matrix)
    Matrix.SetToElementwiseRatio(Matrix, Matrix)
    Matrix.SetToProduct(Matrix, Double)
    Matrix.SetToProduct(Matrix, Matrix)
    Matrix.SetToOuter(Matrix)
    Matrix.Outer()
    Matrix.SetToOuterTranspose(Matrix)
    Matrix.OuterTranspose()
    Matrix.SetToOuter(Vector, Vector)
    Matrix.SetToSumWithOuter(Matrix, Double, Vector, Vector)
    Matrix.QuadraticForm(Vector)
    Matrix.QuadraticForm(Vector, Vector)
    Matrix.SetToSum(Matrix, Matrix)
    Matrix.SetToSum(Double, Matrix, Double, Matrix)
    Matrix.SetToDifference(Matrix, Matrix)
    Matrix.SetToDifference(Matrix, Double, Matrix)
    Matrix.Equals(Object)
    Matrix.GetHashCode()
    Matrix.CheckCompatible(Matrix, String)
    Matrix.CheckSymmetry(String)
    Matrix.MaxDiff(Matrix)
    Matrix.MaxDiff(Matrix, Double)
    Matrix.ToString()
    Matrix.ToString(String)
    Matrix.Parse(String)
    Matrix.IsPositiveDefinite()
    Matrix.Trace()
    Matrix.Inner(Matrix)
    Matrix.SetToKronecker(Matrix, Matrix)
    Matrix.Kronecker(Matrix)
    Matrix.Commutation(Int32, Int32)
    Matrix.PredivideBy(UpperTriangularMatrix)
    Matrix.PredivideByTranspose(LowerTriangularMatrix)
    Matrix.PredivideBy(LowerTriangularMatrix)
    Matrix.PredivideBy(PositiveDefiniteMatrix)
    Matrix.SetToLeastSquares(Matrix, Matrix)
    Matrix.SetToEigenvectorsOfSymmetric(Matrix)
    Matrix.SetToRightSingularVectors(Matrix)
    Matrix.EigenvaluesInPlace(Double[], Double[])
    Matrix.GetColumn(Int32)
    Matrix.GetRow(Int32)
    Object.Equals(Object, Object)
    Object.GetType()
    Object.MemberwiseClone()
    Object.ReferenceEquals(Object, Object)
    Namespace: Microsoft.ML.Probabilistic.Math
    Assembly: Microsoft.ML.Probabilistic.dll
    Syntax
    [DataContract]
    public class LowerTriangularMatrix : Matrix, IList<double>, ICollection<double>, IReadOnlyList<double>, IReadOnlyCollection<double>, IEnumerable<double>, IEnumerable, ICloneable, SettableTo<Matrix>, CanSetAllElementsTo<double>

    Constructors

    LowerTriangularMatrix()

    Default constructor just used for serialization.

    Declaration
    protected LowerTriangularMatrix()

    LowerTriangularMatrix(Double[,])

    Constructs a matrix from data in a 2D array.

    Declaration
    public LowerTriangularMatrix(double[, ] data)
    Parameters
    Type Name Description
    Double[,] data

    2D array of elements.

    Remarks

    The 2D array is copied into new storage. The size of the matrix is taken from the array.

    LowerTriangularMatrix(Int32, Int32)

    Constructs a zero matrix of the given dimensions.

    Declaration
    public LowerTriangularMatrix(int nRows, int nCols)
    Parameters
    Type Name Description
    Int32 nRows

    Number of rows >= 0.

    Int32 nCols

    Number of columns >= 0.

    LowerTriangularMatrix(Int32, Int32, Double[])

    Constructs a matrix by referencing an array.

    Declaration
    public LowerTriangularMatrix(int nRows, int nCols, double[] data)
    Parameters
    Type Name Description
    Int32 nRows

    Number of rows.

    Int32 nCols

    Number of columns.

    Double[] data

    Storage for the matrix elements.

    Methods

    CheckLowerTriangular()

    Checks that this instance is lower triangular

    Declaration
    [Conditional("DEBUG")]
    public void CheckLowerTriangular()

    Clone()

    Creates a full clone of this instance (including the data)

    Declaration
    public override object Clone()
    Returns
    Type Description
    Object
    Overrides
    Matrix.Clone()

    Determinant()

    Returns the determinant of this lower-triangular matrix.

    Declaration
    public double Determinant()
    Returns
    Type Description
    Double

    The determinant of this.

    Inverse()

    Returns the inverse of this lower triangular matrix

    Declaration
    public LowerTriangularMatrix Inverse()
    Returns
    Type Description
    LowerTriangularMatrix

    LogDeterminant(Boolean)

    Returns the natural logarithm of the determinant of a lower-triangular matrix.

    Declaration
    public double LogDeterminant(bool ignoreInfinity = false)
    Parameters
    Type Name Description
    Boolean ignoreInfinity

    If true, +infinity on the diagonal is treated as 1.

    Returns
    Type Description
    Double

    The log-determinant of this.

    ProdDiag()

    Returns the product of diagonal elements of this lower triangular matrix

    Declaration
    public double ProdDiag()
    Returns
    Type Description
    Double

    prod(diag(this)).

    SetToCholesky(Matrix)

    Gets the Cholesky decomposition L, such that L*L' = A.

    Declaration
    public bool SetToCholesky(Matrix A)
    Parameters
    Type Name Description
    Matrix A

    A symmetric matrix to decompose.

    Returns
    Type Description
    Boolean

    True if A is positive definite, otherwise false.

    Remarks

    The decomposition is a lower triangular matrix L, returned in this. A must be symmetric, but need not be positive definite. If A is positive semidefinite, then L will satisfy LL' = A. Otherwise, L will only approximately satisfy LL' = A.

    SetToInverse(LowerTriangularMatrix)

    Modifies this to be the inverse of A.

    Declaration
    public void SetToInverse(LowerTriangularMatrix A)
    Parameters
    Type Name Description
    LowerTriangularMatrix A

    Can be the same object as this

    TraceLn(Boolean)

    Returns the sum of the logarithm of diagonal elements.

    Declaration
    public double TraceLn(bool ignoreInfinity = false)
    Parameters
    Type Name Description
    Boolean ignoreInfinity

    If true, +infinity on the diagonal is treated as 1.

    Returns
    Type Description
    Double

    sum(log(diag(this))).

    Transpose()

    Returns the transpose of this lower triangular matrix

    Declaration
    public UpperTriangularMatrix Transpose()
    Returns
    Type Description
    UpperTriangularMatrix

    Implements

    System.Collections.Generic.IList<T>
    System.Collections.Generic.ICollection<T>
    System.Collections.Generic.IReadOnlyList<T>
    System.Collections.Generic.IReadOnlyCollection<T>
    System.Collections.Generic.IEnumerable<T>
    System.Collections.IEnumerable
    System.ICloneable
    SettableTo<T>
    CanSetAllElementsTo<T>

    Extension Methods

    CollectionExtensions.AddRange<T>(ICollection<T>, IEnumerable<T>)
    CollectionExtensions.ContainsAll<T>(ICollection<T>, IEnumerable<T>)
    CollectionExtensions.ContainsAny<T>(ICollection<T>, IEnumerable<T>)
    EnumerableExtensions.ForEach<T>(IEnumerable<T>, Action<T>)
    EnumerableExtensions.ForEach<T>(IEnumerable, Action<T>)
    EnumerableExtensions.ForEach<T>(IEnumerable<T>, Action<Int32, T>)
    EnumerableExtensions.ForEach<T>(IEnumerable, Action<Int32, T>)
    EnumerableExtensions.Sum<TSource>(IEnumerable<TSource>, Func<TSource, UInt32>)
    EnumerableExtensions.Sum<TSource>(IEnumerable<TSource>, Func<TSource, UInt64>)
    EnumerableExtensions.ValueEquals<T>(IEnumerable<T>, IEnumerable<T>)
    EnumerableExtensions.IndexOf<T>(IEnumerable<T>, T)
    EnumerableExtensions.IndexOf<T>(IEnumerable, T)
    EnumerableExtensions.FindIndex<T>(IEnumerable<T>, Predicate<T>)
    EnumerableExtensions.FindIndex<T>(IEnumerable, Predicate<T>)
    EnumerableExtensions.FindAllIndex<T>(IEnumerable<T>, Predicate<T>)
    EnumerableExtensions.IndexOfAll<T>(IEnumerable<T>, T)
    EnumerableExtensions.Skip<T>(IEnumerable<T>, Int32, out List<T>)
    EnumerableExtensions.CopyTo<T>(IEnumerable<T>, T[], Int32)
    EnumerableExtensions.ToReadOnlyList<T>(IEnumerable<T>)
    IEnumerableExensions.EnumerableReduce<T, TRes>(IEnumerable<T>, TRes, Func<TRes, T, TRes>, Func<TRes, T, Int32, TRes>)
    IEnumerableExensions.EnumerableSum<T>(IEnumerable<T>, Func<T, Double>)
    IEnumerableExensions.ListZip<TFirst, TSecond, TResult>(IList<TFirst>, IEnumerable<TSecond>, Func<TFirst, TSecond, TResult>)
    IEnumerableExensions.ListZip<TFirst, TSecond, TThird, TResult>(IList<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>, Func<TFirst, TSecond, TThird, TResult>)
    IEnumerableExensions.ListZip<TFirst, TSecond, TThird, TFourth, TResult>(IList<TFirst>, IList<TSecond>, IList<TThird>, IList<TFourth>, Func<TFirst, TSecond, TThird, TFourth, TResult>)
    IListExtensions.IsSparse<T>(IList<T>)
    IListExtensions.ListSelect<T, T2>(IList<T>, Func<T, T2>)
    IListExtensions.ListReduce<T, TRes>(IList<T>, TRes, Func<TRes, T, TRes>)
    IListExtensions.ListReduce<T, T2, TRes>(IList<T>, IEnumerable<T2>, TRes, Func<TRes, T, T2, TRes>)
    IListExtensions.ToVector(IList<Double>)
    IListExtensions.SetTo<T>(IList<T>, IEnumerable<T>)
    IListExtensions.SetTo(IList<Double>, IEnumerable<Double>)
    IListExtensions.AsReadOnly<T>(IList<T>)
    ReadOnlyArray.ToReadOnlyArray<T>(IEnumerable<T>)
    In This Article
    Back to top Copyright © .NET Foundation. All rights reserved.