Packages

class Fac_QR_H2[MatT <: MatriD] extends Fac_QR[MatT]

The Fac_QR_H2 class provides methods to factor an 'm-by-n' matrix 'aa' into the product of two matrices:

'q' - an 'm-by-n' orthogonal matrix and 'r' - an 'n-by-n' right upper triangular matrix

such that 'a = q * r'. It uses Householder orthogonalization.

See also

math.stackexchange.com/questions/678843/householder-qr-factorization-for-m-by-n-matrix-both-m-n-and-mn ------------------------------------------------------------------------------ This implementation replaces matrix operations in Fac_QR_H3 with low-level operations for greater efficiency. Also, calculates Householder vectors differently. Caveat: for m < n use Fac_LQ. ------------------------------------------------------------------------------

www.stat.wisc.edu/~larget/math496/qr.html

QRDecomposition.java in Jama

5.1 and 5.2 in Matrix Computations

Linear Supertypes
Fac_QR[MatT], Error, Factorization, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Fac_QR_H2
  2. Fac_QR
  3. Error
  4. Factorization
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Fac_QR_H2(aa: MatT, needQ: Boolean = true)

    aa

    the matrix to be factor into q and r

    needQ

    flag indicating whether a full q matrix is needed

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def computeQ(): Unit

    Compute the full 'q' orthogonal matrix based on updated values in 'a'.

    Compute the full 'q' orthogonal matrix based on updated values in 'a'.

    Definition Classes
    Fac_QR_H2Fac_QR
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def factor(): Unit

    Factor matrix 'a' into the product of two matrices, 'a = q * r', returning both the orthogonal 'q' matrix and the right upper triangular 'r' matrix.

    Factor matrix 'a' into the product of two matrices, 'a = q * r', returning both the orthogonal 'q' matrix and the right upper triangular 'r' matrix. This algorithm uses Householder orthogonalization.

    Definition Classes
    Fac_QR_H2Factorization
    See also

    QRDecomposition.java in Jama

    5.1 and 5.2 in Matrix Computations

  10. def factor1(): MatriD

    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.

    Definition Classes
    Factorization
  11. def factor12(): (MatriD, MatriD)

    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.

    Definition Classes
    Factorization
  12. def factor2(): MatriD

    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.

    Definition Classes
    Factorization
  13. val factored: Boolean

    Flag indicating whether the matrix has been factored

    Flag indicating whether the matrix has been factored

    Attributes
    protected
    Definition Classes
    Factorization
  14. def factors: (MatriD, MatriD)

    Return both the orthogonal 'q' matrix and the right upper triangular 'r' matrix.

    Return both the orthogonal 'q' matrix and the right upper triangular 'r' matrix.

    Definition Classes
    Fac_QRFactorization
  15. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. final def flaw(method: String, message: String): Unit

    Show the flaw by printing the error message.

    Show the flaw by printing the error message.

    method

    the method where the error occurred

    message

    the error message

    Definition Classes
    Error
  17. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. val m: Int
    Attributes
    protected
    Definition Classes
    Fac_QR
  21. val n: Int
    Attributes
    protected
    Definition Classes
    Fac_QR
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  25. def nullspace(rank: Int): MatriD

    Compute the nullspace of matrix 'a: { x | a*x = 0 }' using 'QR' Factorization 'q*r*x = 0'.

    Compute the nullspace of matrix 'a: { x | a*x = 0 }' using 'QR' Factorization 'q*r*x = 0'. Gives a basis of dimension 'n - rank' for the nullspace

    rank

    the rank of the matrix (number of linearly independent column vectors)

    Definition Classes
    Fac_QR_H2Fac_QR
  26. def nullspaceV(x: VectoD): VectoD

    Compute the nullspace of matrix 'a: { x | a*x = 0 }' using 'QR' Factorization 'q*r*x = 0'.

    Compute the nullspace of matrix 'a: { x | a*x = 0 }' using 'QR' Factorization 'q*r*x = 0'. Gives only one vector in the nullspace.

    x

    a vector with the correct dimension

  27. val p: Int
    Attributes
    protected
    Definition Classes
    Fac_QR
  28. val q: MatrixD
    Attributes
    protected
    Definition Classes
    Fac_QR
  29. val r: MatriD
    Attributes
    protected
    Definition Classes
    Fac_QR
  30. def solve(b: VectoD): VectoD

    Solve for 'x' in 'aa*x = b' using the QR Factorization 'aa = q*r' via 'r*x = q.t * b'.

    Solve for 'x' in 'aa*x = b' using the QR Factorization 'aa = q*r' via 'r*x = q.t * b'. Requires calculating 'q' matrix first.

    b

    the constant vector@param y the constant vector

    Definition Classes
    Fac_QRFactorization
  31. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  32. def toString(): String
    Definition Classes
    AnyRef → Any
  33. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  35. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Fac_QR[MatT]

Inherited from Error

Inherited from Factorization

Inherited from AnyRef

Inherited from Any

Ungrouped