STD.BLAS.dsyrk( tri, transposeA, N, K, alpha, A, beta, C, clear);
tri | Indicates whether upper or lower triangle is used |
transposeA | Transpose the A matrix to be NxK |
N | Number of rows |
K | Number of columns in the update matrix or transpose |
alpha | The alpha scalar |
A | The update matrix, either NxK or KxN |
beta | The beta scalar |
C | The matrix to update |
clear | Clear the triangle that is not updated. BLAS assumes that symmetric matrices have only one of the triangles and this option lets you make that true. |
Return: | The updated matrix |
The dsyrk function implements a symmetric rank update C <- alpha A**T A + beta C or c <- alpha A A**T + beta C. C is N x N.
Example:
IMPORT STD; STD.BLAS.Types.matrix_t initC := [1, 1, 1, 2, 2, 2, 3, 3, 3]; STD.BLAS.Types.matrix_t initA := [1, 1, 1]; Test1_mat := STD.BLAS.dsyrk(STD.BLAS.Types.Triangle.upper, FALSE, 3, 1, 1, initA, 1, initC, TRUE)