Package org.ejml.sparse.csc
Class CommonOps_MT_DSCC
java.lang.Object
org.ejml.sparse.csc.CommonOps_MT_DSCC
Concurrent implementations of functions found in
CommonOps_DSCC.-
Method Summary
Modifier and TypeMethodDescriptionstatic DMatrixSparseCSCadd(double alpha, DMatrixSparseCSC A, double beta, DMatrixSparseCSC B, @Nullable DMatrixSparseCSC outputC, @Nullable GrowArray<Workspace_MT_DSCC> workspace) Performs matrix addition:
C = αA + βBstatic DMatrixRMajmult(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication.static DMatrixSparseCSCmult(DMatrixSparseCSC A, DMatrixSparseCSC B, @Nullable DMatrixSparseCSC outputC) Matrix multiplication C = A*B.static DMatrixSparseCSCmult(DMatrixSparseCSC A, DMatrixSparseCSC B, @Nullable DMatrixSparseCSC outputC, @Nullable GrowArray<Workspace_MT_DSCC> workspace) Performs matrix multiplication.static voidmultAdd(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) C = C + AT*Bstatic voidmultAddTransA(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) C = C + AT*Bstatic voidmultAddTransAB(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC) C = C + AT*BTstatic voidmultAddTransB(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) C = C + A*BTstatic DMatrixRMajmultTransA(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication.static DMatrixRMajmultTransAB(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC) Performs matrix multiplication.static DMatrixRMajmultTransB(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication.
-
Method Details
-
mult
public static DMatrixSparseCSC mult(DMatrixSparseCSC A, DMatrixSparseCSC B, @Nullable @Nullable DMatrixSparseCSC outputC) Matrix multiplication C = A*B. Handles optional data structures requires bymult(DMatrixSparseCSC, DMatrixSparseCSC, DMatrixSparseCSC, GrowArray).- Parameters:
A- (Input) Sparse matrix. Not modified.B- (Input) Sparse matrix. Not modified.outputC- (Output) Storage for results. If null a new instance is returned.- Returns:
- Results of matrix multiplication, the 'C' matrix
-
mult
public static DMatrixSparseCSC mult(DMatrixSparseCSC A, DMatrixSparseCSC B, @Nullable @Nullable DMatrixSparseCSC outputC, @Nullable @Nullable GrowArray<Workspace_MT_DSCC> workspace) Performs matrix multiplication. C = A*B. Concurrency workspace is about the same size as the resulting "output" matrix.- Parameters:
A- (Input) Sparse matrix. Not modified.B- (Input) Sparse matrix. Not modified.outputC- (Output) Storage for results. If null a new instance is returned.workspace- (Optional) Storage for internal workspace. Can be null.- Returns:
- Results of matrix multiplication, the 'C' matrix
-
add
public static DMatrixSparseCSC add(double alpha, DMatrixSparseCSC A, double beta, DMatrixSparseCSC B, @Nullable @Nullable DMatrixSparseCSC outputC, @Nullable @Nullable GrowArray<Workspace_MT_DSCC> workspace) Performs matrix addition:
C = αA + βB- Parameters:
alpha- (Input) scalar value multiplied against AA- (Input) Sparse matrix. Not modified.beta- (Input) scalar value multiplied against BB- (Input) Sparse matrix. Not modified.outputC- (Output) Dense Matrix. If null a new instance is returned.workspace- (Optional) Storage for internal workspace. Can be null.- Returns:
- Results of matrix multiplication, the 'C' matrix
-
mult
public static DMatrixRMaj mult(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable @Nullable DMatrixRMaj outputC, @Nullable @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication. C = AT*B- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix. If null a new instance is returned.workspace- (Optional) Storage for internal workspace. Can be null.- Returns:
- Results of matrix multiplication, the 'C' matrix
-
multAdd
public static void multAdd(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable @Nullable GrowArray<DGrowArray> workspace) C = C + AT*B
- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix.
-
multTransA
public static DMatrixRMaj multTransA(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable @Nullable DMatrixRMaj outputC, @Nullable @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication. C = AT*B- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix. If null a new instance is returned.workspace- (Optional) Storage for internal workspace. Can be null.- Returns:
- Results of matrix multiplication, the 'C' matrix
-
multAddTransA
public static void multAddTransA(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable @Nullable GrowArray<DGrowArray> workspace) C = C + AT*B
- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix.workspace- (Optional) Storage for internal workspace. Can be null.
-
multTransB
public static DMatrixRMaj multTransB(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable @Nullable DMatrixRMaj outputC, @Nullable @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication. C = A*BT- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix. If null a new instance is returned.workspace- (Optional) Storage for internal workspace. Can be null.- Returns:
- Results of matrix multiplication, the 'C' matrix
-
multAddTransB
public static void multAddTransB(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable @Nullable GrowArray<DGrowArray> workspace) C = C + A*BT
- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix.workspace- (Optional) Storage for internal workspace. Can be null.
-
multTransAB
Performs matrix multiplication. C = AT*BT- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix.- Returns:
- Results of matrix multiplication, the 'C' matrix
-
multAddTransAB
C = C + AT*BT
- Parameters:
A- (Input) Sparse Matrix. Not modified.B- (Input) Dense Matrix. Not modified.outputC- (Output) Dense Matrix.
-