Class QrHelperFunctions_FSCC

java.lang.Object
org.ejml.sparse.csc.decomposition.qr.QrHelperFunctions_FSCC

@Generated("org.ejml.sparse.csc.decomposition.qr.QrHelperFunctions_DSCC") public class QrHelperFunctions_FSCC extends Object
Functions used with a sparse QR decomposition
  • Constructor Details

    • QrHelperFunctions_FSCC

      public QrHelperFunctions_FSCC()
  • Method Details

    • applyHouseholder

      public static void applyHouseholder(FMatrixSparseCSC V, int colV, float beta, float[] x)

      Applies a sparse Householder vector to a dense vector.

           x = x - v*(beta*(v'*x))

      NOTE: This is the same as cs_happly() in csparse

      Parameters:
      V - (Input) Matrix containing the Householder
      colV - Column in V with the Householder vector
      beta - scalar
      x - (Input and Output) vector that the Householder is applied to. Modified.
    • rank1UpdateMultR

      public static void rank1UpdateMultR(FMatrixSparseCSC V, int colV, float gamma, FMatrixSparseCSC A, FMatrixSparseCSC C, @Nullable @Nullable IGrowArray gw, @Nullable @Nullable FGrowArray gx)

      Performs a rank-1 update operation on the submatrix specified by V with the multiply on the right.

      C = (I - γ*v*vT)*A

      The order that matrix multiplies are performed has been carefully selected to minimize the number of operations.

      Before this can become a truly generic operation the submatrix specification needs to be made more generic.

    • computeHouseholder

      public static float computeHouseholder(float[] x, int xStart, int xEnd, float max, FScalar gamma)
      Creates a householder reflection. (I-gamma*v*v')*x = tau*e1

      NOTE: Same as cs_house in csparse

      Parameters:
      x - (Input) Vector x (Output) Vector v. Modified.
      xStart - First index in X that is to be processed
      xEnd - Last + 1 index in x that is to be processed.
      gamma - (Output) Storage for computed gamma
      Returns:
      variable tau