Class AutoParallelMatrixMathOperation
- java.lang.Object
-
- dev.nm.algebra.linear.matrix.doubles.matrixtype.mathoperation.AutoParallelMatrixMathOperation
-
- All Implemented Interfaces:
MatrixMathOperation
public class AutoParallelMatrixMathOperation extends Object implements MatrixMathOperation
This class usesParallelMatrixMathOperation
when the first input matrix argument's size is greater than the defined threshold; otherwise, it usesSimpleMatrixMathOperation
.
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_MATRIX_SIZE_THRESHOLD
The default matrix size threshold.
-
Constructor Summary
Constructors Constructor Description AutoParallelMatrixMathOperation()
AutoParallelMatrixMathOperation(int matrixSizeThreshold)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Matrix
add(MatrixAccess A1, MatrixAccess A2)
A1 + A2Matrix
minus(MatrixAccess A1, MatrixAccess A2)
A1 - A2Matrix
multiply(MatrixAccess A1, MatrixAccess A2)
A1 * A2Vector
multiply(MatrixAccess A, Vector v)
A * vMatrix
scaled(MatrixAccess A, double c)
c * AMatrix
transpose(MatrixAccess A)
Get the transpose of A.
-
-
-
Field Detail
-
DEFAULT_MATRIX_SIZE_THRESHOLD
public static final int DEFAULT_MATRIX_SIZE_THRESHOLD
The default matrix size threshold.- See Also:
- Constant Field Values
-
-
Method Detail
-
add
public Matrix add(MatrixAccess A1, MatrixAccess A2)
Description copied from interface:MatrixMathOperation
A1 + A2- Specified by:
add
in interfaceMatrixMathOperation
- Parameters:
A1
- a matrixA2
- a matrix- Returns:
- the sum of A1 and A2
-
minus
public Matrix minus(MatrixAccess A1, MatrixAccess A2)
Description copied from interface:MatrixMathOperation
A1 - A2- Specified by:
minus
in interfaceMatrixMathOperation
- Parameters:
A1
- a matrixA2
- a matrix- Returns:
- the difference between A1 and A2
-
multiply
public Matrix multiply(MatrixAccess A1, MatrixAccess A2)
Description copied from interface:MatrixMathOperation
A1 * A2- Specified by:
multiply
in interfaceMatrixMathOperation
- Parameters:
A1
- a matrixA2
- a matrix- Returns:
- the product of A1 and A2
-
multiply
public Vector multiply(MatrixAccess A, Vector v)
Description copied from interface:MatrixMathOperation
A * v- Specified by:
multiply
in interfaceMatrixMathOperation
- Parameters:
A
- a matrixv
- a vector- Returns:
- the product of A and v
-
scaled
public Matrix scaled(MatrixAccess A, double c)
Description copied from interface:MatrixMathOperation
c * A- Specified by:
scaled
in interfaceMatrixMathOperation
- Parameters:
A
- a matrixc
- a scalar- Returns:
- A scaled by c
-
transpose
public Matrix transpose(MatrixAccess A)
Description copied from interface:MatrixMathOperation
Get the transpose of A.- Specified by:
transpose
in interfaceMatrixMathOperation
- Parameters:
A
- a matrix- Returns:
- the transpose of A
-
-