Factorization

scalation.mathstat.Factorization

The Factorization trait is the template for classes implementing various forms of matrix factorization.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Fac_Cholesky
class Fac_Inverse
class Fac_LU
class Fac_QR
class Fac_QR_RR
class Fac_SVD
Show all

Members list

Value members

Abstract methods

Factor a matrix into the product of two matrices without returning the two factored matrices. Allows for example skipping the computation of the Q matrix in QR factorization when it is not needed, e.g., for regression. Class implementing the 'factor' method should set 'factored = true'.

Factor a matrix into the product of two matrices without returning the two factored matrices. Allows for example skipping the computation of the Q matrix in QR factorization when it is not needed, e.g., for regression. Class implementing the 'factor' method should set 'factored = true'.

Attributes

Return the two factored matrices.

Return the two factored matrices.

Attributes

Efficient calculation of inverse matrix a^-1 from existing factorization. a * a^-1 = I

Efficient calculation of inverse matrix a^-1 from existing factorization. a * a^-1 = I

Attributes

def solve(b: VectorD): VectorD

Solve a system of equations, e,g., 'a * x = b' for 'x', using the factored matrices, by first performing forward substitution and then backward substitution. Must factor before calling 'solve'.

Solve a system of equations, e,g., 'a * x = b' for 'x', using the factored matrices, by first performing forward substitution and then backward substitution. Must factor before calling 'solve'.

Value parameters

b

the constant vector

Attributes

Concrete methods

def factor1(): MatrixD

Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the first matrix.

Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the first matrix.

Attributes

Factor a matrix into the product of two matrices, e.g., 'a = l * l.t' or a = q * r, returning both the first and second matrices.

Factor a matrix into the product of two matrices, e.g., 'a = l * l.t' or a = q * r, returning both the first and second matrices.

Attributes

def factor2(): MatrixD

Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the second matrix.

Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the second matrix.

Attributes

inline def isFactored: Boolean

Return whether the matrix has been factored has aleady been factored.

Return whether the matrix has been factored has aleady been factored.

Attributes

def reset(): Unit

Reset by setting factored to false.

Reset by setting factored to false.

Attributes

Concrete fields

protected var factored: Boolean

Flag indicating whether the matrix has been factored

Flag indicating whether the matrix has been factored

Attributes