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 DMatrixSparseCSC
add
(double alpha, DMatrixSparseCSC A, double beta, DMatrixSparseCSC B, @Nullable DMatrixSparseCSC outputC, @Nullable GrowArray<Workspace_MT_DSCC> workspace) Performs matrix addition:
C = αA + βBstatic DMatrixRMaj
mult
(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication.static DMatrixSparseCSC
mult
(DMatrixSparseCSC A, DMatrixSparseCSC B, @Nullable DMatrixSparseCSC outputC) Matrix multiplication C = A*B.static DMatrixSparseCSC
mult
(DMatrixSparseCSC A, DMatrixSparseCSC B, @Nullable DMatrixSparseCSC outputC, @Nullable GrowArray<Workspace_MT_DSCC> workspace) Performs matrix multiplication.static void
multAdd
(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) C = C + AT*Bstatic void
multAddTransA
(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) C = C + AT*Bstatic void
multAddTransAB
(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC) C = C + AT*BTstatic void
multAddTransB
(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) C = C + A*BTstatic DMatrixRMaj
multTransA
(DMatrixSparseCSC A, DMatrixRMaj B, @Nullable DMatrixRMaj outputC, @Nullable GrowArray<DGrowArray> workspace) Performs matrix multiplication.static DMatrixRMaj
multTransAB
(DMatrixSparseCSC A, DMatrixRMaj B, DMatrixRMaj outputC) Performs matrix multiplication.static DMatrixRMaj
multTransB
(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.
-