LASs - Linear Algebra Routines on OmpSs
1.0.0
LASs
|
LASs-DDSs ddss_dsyr2k routine. More...
#include "../include/lass.h"
Go to the source code of this file.
Functions | |
int | ddss_dsyr2k (enum DDSS_UPLO UPLO, enum DDSS_TRANS TRANS, int N, int K, const double ALPHA, double *A, int LDA, double *B, int LDB, const double BETA, double *C, int LDC) |
LASs-DDSs ddss_dsyr2k routine.
LASs-DDSs is a software package provided by: Barcelona Supercomputing Center - Centro Nacional de Supercomputacion
Definition in file ddss_dsyr2k.c.
int ddss_dsyr2k | ( | enum DDSS_UPLO | UPLO, |
enum DDSS_TRANS | TRANS, | ||
int | N, | ||
int | K, | ||
const double | ALPHA, | ||
double * | A, | ||
int | LDA, | ||
double * | B, | ||
int | LDB, | ||
const double | BETA, | ||
double * | C, | ||
int | LDC | ||
) |
Performs one of the symmetric rank 2k operations:
C = ALPHA * A * B**T + ALPHA * B * A**T + BETA * C or C = ALPHA * A**T * B + ALPHA * B**T * A + BETA * C
ALPHA and BETA are scalars, C is an N by N symmetric matrix and A and B are N by K matrices in the first case and K by N matrices in the second case.
[in] | UPLO | enum DDSS_UPLO. UPLO specifies the form in which C is stored:
|
[in] | TRANS | enum DDSS_TRANS. TRANS specifies the operation to be performed as follows:
|
[in] | N | int. N specifies the order of matrix C. N must be at least zero. |
[in] | K | int. With TRANS = NoTrans, K specifies the number of columns of the matrices A and B, and with TRANS = Trans, K specifies the number of rows of the matrices A and B. K must be at least zero. |
[in] | ALPHA | double. ALPHA specifies the scalar alpha. |
[in] | A | double *. A is a pointer to a matrix of dimension Na ( rows ) by Ka ( columns ), where Na is N and Ka is K when TRANS = NoTrans, and Na is K and Ka is N otherwise. |
[in] | LDA | int. LDA specifies the number of columns of A ( row-major order ). When TRANS = NoTrans then LDA must be at least max( 1, K ), otherwise LDA must be at least max( 1, N ). |
[in] | B | double *. B is a pointer to a matrix of dimension Nb ( rows ) by Kb ( columns ), where Nb is N and Kb is K when TRANS = NoTrans, and Nb is K and Kb is N otherwise. |
[in] | LDB | int. LDB specifies the number of columns of B ( row-major order ). When TRANS = NoTrans then LDB must be at least max( 1, K ), otherwise LDB must be at least max( 1, N ). |
[in] | BETA | double. BETA specifies the scalar beta. |
[in,out] | C | double *. C is a pointer to a matrix of dimension N by N. When UPLO = Uppper the strictly lower triangular part of C is not referenced. On exit, the upper triangular part of C is overwritten by the upper triangular part of the updated solution matrix C. When UPLO = Lower the strictly upper triangular part of C is not referenced. On exit, the lower triangular part of C is overwritten by the lower triangular part of the updated solution matrix C. |
[in] | LDC | int. LDC specifies the number of columns of C ( row-major order ). LDC must be at least max( 1, N ). |
Definition at line 114 of file ddss_dsyr2k.c.
References kdsyr2k().