Class InnerRankUpdate_DDRB

java.lang.Object
org.ejml.dense.block.InnerRankUpdate_DDRB

public class InnerRankUpdate_DDRB
extends Object
Performs rank-n update operations on the inner blocks of a DMatrixRBlock It is assumed and not checked that the submatrices are aligned along the matrix's blocks.
  • Constructor Summary

    Constructors
    Constructor Description
    InnerRankUpdate_DDRB()  
  • Method Summary

    Modifier and Type Method Description
    protected static void multTransABlockMinus​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int heightA, int widthA, int widthC)
    Performs the following operation on a block:

    c = c - aTa
    protected static void multTransABlockMinus_U​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int heightA, int widthA, int widthC)
    Performs the following operation on the upper triangular portion of a block:

    c = c - aTa
    protected static void multTransBBlockMinus​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int widthA, int heightA, int widthC)
    Performs the following operation on a block:

    c = c - a*aT
    protected static void multTransBBlockMinus_L​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int widthA, int heightA, int widthC)
    Performs the following operation on the lower triangular portion of a block:

    c = c - a*aT
    static void rankNUpdate​(int blockLength, double alpha, DSubmatrixD1 A, DSubmatrixD1 B)
    Performs:

    A = A + α B TB
    static void symmRankNMinus_L​(int blockLength, DSubmatrixD1 A, DSubmatrixD1 B)
    Rank N update function for a symmetric inner submatrix and only operates on the lower triangular portion of the submatrix.

    A = A - B*BT
    static void symmRankNMinus_U​(int blockLength, DSubmatrixD1 A, DSubmatrixD1 B)
    Rank N update function for a symmetric inner submatrix and only operates on the upper triangular portion of the submatrix.

    A = A - B TB

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • InnerRankUpdate_DDRB

      public InnerRankUpdate_DDRB()
  • Method Details

    • rankNUpdate

      public static void rankNUpdate​(int blockLength, double alpha, DSubmatrixD1 A, DSubmatrixD1 B)

      Performs:

      A = A + α B TB

      Parameters:
      blockLength - Size of the block in the block matrix.
      alpha - scaling factor for right hand side.
      A - Block aligned submatrix.
      B - Block aligned submatrix.
    • symmRankNMinus_U

      public static void symmRankNMinus_U​(int blockLength, DSubmatrixD1 A, DSubmatrixD1 B)

      Rank N update function for a symmetric inner submatrix and only operates on the upper triangular portion of the submatrix.

      A = A - B TB

    • symmRankNMinus_L

      public static void symmRankNMinus_L​(int blockLength, DSubmatrixD1 A, DSubmatrixD1 B)

      Rank N update function for a symmetric inner submatrix and only operates on the lower triangular portion of the submatrix.

      A = A - B*BT

    • multTransABlockMinus

      protected static void multTransABlockMinus​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int heightA, int widthA, int widthC)

      Performs the following operation on a block:

      c = c - aTa

    • multTransABlockMinus_U

      protected static void multTransABlockMinus_U​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int heightA, int widthA, int widthC)

      Performs the following operation on the upper triangular portion of a block:

      c = c - aTa

    • multTransBBlockMinus

      protected static void multTransBBlockMinus​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int widthA, int heightA, int widthC)

      Performs the following operation on a block:

      c = c - a*aT

    • multTransBBlockMinus_L

      protected static void multTransBBlockMinus_L​(double[] dataA, double[] dataC, int indexA, int indexB, int indexC, int widthA, int heightA, int widthC)

      Performs the following operation on the lower triangular portion of a block:

      c = c - a*aT