Package org.nd4j.linalg.api.blas
Interface Level3
-
- All Known Implementing Classes:
BaseLevel3
public interface Level3
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidgemm(char Order, char TransA, char TransB, double alpha, INDArray A, INDArray B, double beta, INDArray C)gemm performs a matrix-matrix operation c := alpha*op(a)*op(b) + beta*c, where c is an m-by-n matrix, op(a) is an m-by-k matrix, op(b) is a k-by-n matrix.voidgemm(INDArray A, INDArray B, INDArray C, boolean transposeA, boolean transposeB, double alpha, double beta)A convenience method for matrix-matrix operations with transposes.voidsymm(char Order, char Side, char Uplo, double alpha, INDArray A, INDArray B, double beta, INDArray C)her2k performs a rank-2k update of an n-by-n Hermitian matrix c, that is, one of the following operations: c := alpha*a*conjg(b') + conjg(alpha)*b*conjg(a') + beta*c, for trans = 'N'or'n' c := alpha*conjg(b')*a + conjg(alpha)*conjg(a')*b + beta*c, for trans = 'C'or'c' where c is an n-by-n Hermitian matrix; a and b are n-by-k matrices if trans = 'N'or'n', a and b are k-by-n matrices if trans = 'C'or'c'.voidsyr2k(char Order, char Uplo, char Trans, double alpha, INDArray A, INDArray B, double beta, INDArray C)yr2k performs a rank-2k update of an n-by-n symmetric matrix c, that is, one of the following operations: c := alpha*a*b' + alpha*b*a' + beta*c for trans = 'N'or'n' c := alpha*a'*b + alpha*b'*a + beta*c for trans = 'T'or't', where c is an n-by-n symmetric matrix; a and b are n-by-k matrices, if trans = 'N'or'n', a and b are k-by-n matrices, if trans = 'T'or't'.voidsyrk(char Order, char Uplo, char Trans, double alpha, INDArray A, double beta, INDArray C)syrk performs a rank-n update of an n-by-n symmetric matrix c, that is, one of the following operations: c := alpha*a*a' + beta*c for trans = 'N'or'n' c := alpha*a'*a + beta*c for trans = 'T'or't','C'or'c', where c is an n-by-n symmetric matrix; a is an n-by-k matrix, if trans = 'N'or'n', a is a k-by-n matrix, if trans = 'T'or't','C'or'c'.voidtrmm(char Order, char Side, char Uplo, char TransA, char Diag, double alpha, INDArray A, INDArray B, INDArray C)syr2k performs a rank-2k update of an n-by-n symmetric matrix c, that is, one of the following operations: c := alpha*a*b' + alpha*b*a' + beta*c for trans = 'N'or'n' c := alpha*a'*b + alpha*b'*a + beta*c for trans = 'T'or't', where c is an n-by-n symmetric matrix; a and b are n-by-k matrices, if trans = 'N'or'n', a and b are k-by-n matrices, if trans = 'T'or't'.voidtrsm(char Order, char Side, char Uplo, char TransA, char Diag, double alpha, INDArray A, INDArray B)?trsm solves one of the following matrix equations: op(a)*x = alpha*b or x*op(a) = alpha*b, where x and b are m-by-n general matrices, and a is triangular; op(a) must be an m-by-m matrix, if side = 'L'or'l' op(a) must be an n-by-n matrix, if side = 'R'or'r'.
-
-
-
Method Detail
-
gemm
void gemm(char Order, char TransA, char TransB, double alpha, INDArray A, INDArray B, double beta, INDArray C)gemm performs a matrix-matrix operation c := alpha*op(a)*op(b) + beta*c, where c is an m-by-n matrix, op(a) is an m-by-k matrix, op(b) is a k-by-n matrix.- Parameters:
Order-TransA-TransB-alpha-A-B-beta-C-
-
gemm
void gemm(INDArray A, INDArray B, INDArray C, boolean transposeA, boolean transposeB, double alpha, double beta)
A convenience method for matrix-matrix operations with transposes. Implements C = alpha*op(A)*op(B) + beta*C Matrices A and B can be any order and offset (though will have copy overhead if elements are not contiguous in buffer) but matrix C MUST be f order, 0 offset and have length == data.length
-
symm
void symm(char Order, char Side, char Uplo, double alpha, INDArray A, INDArray B, double beta, INDArray C)her2k performs a rank-2k update of an n-by-n Hermitian matrix c, that is, one of the following operations: c := alpha*a*conjg(b') + conjg(alpha)*b*conjg(a') + beta*c, for trans = 'N'or'n' c := alpha*conjg(b')*a + conjg(alpha)*conjg(a')*b + beta*c, for trans = 'C'or'c' where c is an n-by-n Hermitian matrix; a and b are n-by-k matrices if trans = 'N'or'n', a and b are k-by-n matrices if trans = 'C'or'c'.- Parameters:
Order-Side-Uplo-alpha-A-B-beta-C-
-
syrk
void syrk(char Order, char Uplo, char Trans, double alpha, INDArray A, double beta, INDArray C)syrk performs a rank-n update of an n-by-n symmetric matrix c, that is, one of the following operations: c := alpha*a*a' + beta*c for trans = 'N'or'n' c := alpha*a'*a + beta*c for trans = 'T'or't','C'or'c', where c is an n-by-n symmetric matrix; a is an n-by-k matrix, if trans = 'N'or'n', a is a k-by-n matrix, if trans = 'T'or't','C'or'c'.- Parameters:
Order-Uplo-Trans-alpha-A-beta-C-
-
syr2k
void syr2k(char Order, char Uplo, char Trans, double alpha, INDArray A, INDArray B, double beta, INDArray C)yr2k performs a rank-2k update of an n-by-n symmetric matrix c, that is, one of the following operations: c := alpha*a*b' + alpha*b*a' + beta*c for trans = 'N'or'n' c := alpha*a'*b + alpha*b'*a + beta*c for trans = 'T'or't', where c is an n-by-n symmetric matrix; a and b are n-by-k matrices, if trans = 'N'or'n', a and b are k-by-n matrices, if trans = 'T'or't'.- Parameters:
Order-Uplo-Trans-alpha-A-B-beta-C-
-
trmm
void trmm(char Order, char Side, char Uplo, char TransA, char Diag, double alpha, INDArray A, INDArray B, INDArray C)syr2k performs a rank-2k update of an n-by-n symmetric matrix c, that is, one of the following operations: c := alpha*a*b' + alpha*b*a' + beta*c for trans = 'N'or'n' c := alpha*a'*b + alpha*b'*a + beta*c for trans = 'T'or't', where c is an n-by-n symmetric matrix; a and b are n-by-k matrices, if trans = 'N'or'n', a and b are k-by-n matrices, if trans = 'T'or't'.- Parameters:
Order-Side-Uplo-TransA-Diag-alpha-A-B-C-
-
trsm
void trsm(char Order, char Side, char Uplo, char TransA, char Diag, double alpha, INDArray A, INDArray B)?trsm solves one of the following matrix equations: op(a)*x = alpha*b or x*op(a) = alpha*b, where x and b are m-by-n general matrices, and a is triangular; op(a) must be an m-by-m matrix, if side = 'L'or'l' op(a) must be an n-by-n matrix, if side = 'R'or'r'. For the definition of op(a), see Matrix Arguments. The routine overwrites x on b.- Parameters:
Order-Side-Uplo-TransA-Diag-alpha-A-B-
-
-