Visible to Intel only — GUID: GUID-7D89EB9A-7DED-4E36-B6B0-9C3B31DDBF6D
Visible to Intel only — GUID: GUID-7D89EB9A-7DED-4E36-B6B0-9C3B31DDBF6D
?sfrk
Performs a symmetric rank-k operation for matrix in RFP format.
call ssfrk(transr, uplo, trans, n, k, alpha, a, lda, beta, c)
call dsfrk(transr, uplo, trans, n, k, alpha, a, lda, beta, c)
- mkl.fi
The ?sfrk routines perform a matrix-matrix operation using symmetric matrices. The operation is defined as
C := alpha*A*AT + beta*C,
or
C := alpha*AT*A + beta*C,
where:
alpha and beta are scalars,
C is an n-by-n symmetric matrix in rectangular full packed (RFP) format,
A is an n-by-k matrix in the first case and a k-by-n matrix in the second case.
- transr
-
CHARACTER*1.
if transr = 'N' or 'n', the normal form of RFP C is stored;
if transr= 'T' or 't', the transpose form of RFP C is stored.
- uplo
-
CHARACTER*1. Specifies whether the upper or lower triangular part of the array c is used.
If uplo = 'U' or 'u', then the upper triangular part of the array c is used.
If uplo = 'L' or 'l', then the low triangular part of the array c is used.
- trans
-
CHARACTER*1. Specifies the operation:
if trans = 'N' or 'n', then C := alpha*A*AT + beta*C;
if trans = 'T' or 't', then C := alpha*AT*A + beta*C;
- n
-
INTEGER. Specifies the order of the matrix C. The value of n must be at least zero.
- k
-
INTEGER. On entry with trans = 'N' or 'n', k specifies the number of columns of the matrix A, and on entry with trans = 'T' or 't', k specifies the number of rows of the matrix A.
The value of k must be at least zero.
- alpha
-
REAL for ssfrk
DOUBLE PRECISION for dsfrk
Specifies the scalar alpha.
- a
-
REAL for ssfrk
DOUBLE PRECISION for dsfrk
Array, DIMENSION(lda,ka), where ka is k when trans = 'N' or 'n', and is n otherwise. Before entry with trans = 'N' or 'n', the leading n-by-k part of the array a must contain the matrix A, otherwise the leading k-by-n part of the array a must contain the matrix A.
- lda
-
INTEGER. Specifies the leading dimension of a as declared in the calling (sub)program. When trans = 'N' or 'n', then lda must be at least max(1,n), otherwise lda must be at least max(1, k).
- beta
-
REAL for ssfrk
DOUBLE PRECISION for dsfrk
Specifies the scalar beta.
- c
-
REAL for ssfrk
DOUBLE PRECISION for dsfrk
Array, size (n*(n+1)/2 ). Before entry contains the symmetric matrix C in RFP format.
- c
-
If trans = 'N' or 'n', then c contains C := alpha*A*A' + beta*C;
if trans = 'T' or 't', then c contains C := alpha*A'*A + beta*C;