Class RealDenseMatMultTranspose

java.lang.Object
org.flag4j.linalg.ops.dense.real.RealDenseMatMultTranspose

public final class RealDenseMatMultTranspose extends Object
This class contains several low level methods for computing matrix-matrix multiplications with a transpose for two real dense matrices.
WARNING: These methods do not perform any sanity checks.
  • Method Details

    • multTranspose

      public static double[] multTranspose(double[] src1, Shape shape1, double[] src2, Shape shape2)
      Multiplies a matrix to the transpose of a second matrix. This method may be significantly faster than computing the transpose and multiplication in two steps.
      Parameters:
      src1 - Entries of the first matrix.
      shape1 - Shape of the first matrix.
      src2 - Entries of the second matrix.
      shape2 - Shape of the second matrix.
      Returns:
      The result of multiplying the first matrix with the transpose of the second matrix.
    • multTransposeBlocked

      public static double[] multTransposeBlocked(double[] src1, Shape shape1, double[] src2, Shape shape2)
      Multiplies a matrix to the transpose of a second matrix using a blocked algorithm. This method may be significantly faster than computing the transpose and multiplication in two steps.
      Parameters:
      src1 - Entries of the first matrix.
      shape1 - Shape of the first matrix.
      src2 - Entries of the second matrix.
      shape2 - Shape of the second matrix.
      Returns:
      The result of multiplying the first matrix with the transpose of the second matrix.
    • multTransposeConcurrent

      public static double[] multTransposeConcurrent(double[] src1, Shape shape1, double[] src2, Shape shape2)
      Multiplies a matrix to the transpose of a second matrix using a concurrent algorithm. This method may be significantly faster than computing the transpose and multiplication in two steps.
      Parameters:
      src1 - Entries of the first matrix.
      shape1 - Shape of the first matrix.
      src2 - Entries of the second matrix.
      shape2 - Shape of the second matrix.
      Returns:
      The result of multiplying the first matrix with the transpose of the second matrix.
    • multTransposeBlockedConcurrent

      public static double[] multTransposeBlockedConcurrent(double[] src1, Shape shape1, double[] src2, Shape shape2)
      Multiplies a matrix to the transpose of a second matrix using a concurrent implementation of a blocked algorithm. This method may be significantly faster than computing the transpose and multiplication in two steps.
      Parameters:
      src1 - Entries of the first matrix.
      shape1 - Shape of the first matrix.
      src2 - Entries of the second matrix.
      shape2 - Shape of the second matrix.
      Returns:
      The result of multiplying the first matrix with the transpose of the second matrix.