scalation.linalgebra

Fac_QR

Related Doc: package linalgebra

class Fac_QR extends Factorization with Error

The Fac_QR class provides methods to factor an 'm-by-n' matrix 'a' 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'. Note, orthogonal means that 'q.t * q = I'.

See also

http://en.wikipedia.org/wiki/Gram–Schmidt_process (stabilized Gram–Schmidt orthonormalization)

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

Linear Supertypes
Error, Factorization, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Fac_QR
  2. Error
  3. Factorization
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Fac_QR(a: MatrixD)

    a

    the matrix to be factor into q and r

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 backSub(r: MatrixD, b: VectorD): VectorD

    Perform backward substitution to solve for 'x' in 'r*x = b'.

    Perform backward substitution to solve for 'x' in 'r*x = b'.

    r

    the right upper triangular matrix

    b

    the constant vector

  6. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  9. def factor(): (MatrixD, MatrixD)

    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 Modified Gram-Schmidt (MGS) orthogonalization.

    Definition Classes
    Fac_QRFactorization
    See also

    Algorithm 5.2.6 in Matrix Computations.

  10. def factor1(): MatrixD

    Return the first factor, i.e., orthogonal 'q' matrix.

    Return the first factor, i.e., orthogonal 'q' matrix.

    Definition Classes
    Fac_QRFactorization
  11. def factor2(): MatrixD

    Return the second factor, i.e., the right upper triangular 'r' matrix.

    Return the second factor, i.e., the right upper triangular 'r' matrix.

    Definition Classes
    Fac_QRFactorization
  12. def factorH(): (MatrixD, MatrixD)

    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.

    See also

    QRDecomposition.java in Jama FIX: needs testing

    Algorithm 5.2.1 in Matrix Computations

  13. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. 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
  15. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  16. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  17. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  18. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  19. final def notify(): Unit

    Definition Classes
    AnyRef
  20. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  21. def nullspace(rank: Int): MatrixD

    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 row vectors) FIX: should work, but it does not

  22. def nullspaceV: VectorD

    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.

  23. var raw: Boolean

    Attributes
    protected
    Definition Classes
    Factorization
  24. def solve(b: VectorD): VectorD

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

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

    b

    the constant vector

    Definition Classes
    Fac_QRFactorization
  25. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  26. def toString(): String

    Definition Classes
    AnyRef → Any
  27. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Error

Inherited from Factorization

Inherited from AnyRef

Inherited from Any

Ungrouped