PLASMA 2.8.0 PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures

- Main Page
- Modules
- Data Types List

int PLASMA_zher2k | ( | PLASMA_enum | uplo,
|  | PLASMA_enum | trans,
|  | int | N,
|  | int | K,
|  | PLASMA_Complex64_t | alpha,
|  | PLASMA_Complex64_t * | A,
|  | int | LDA,
|  | PLASMA_Complex64_t * | B,
|  | int | LDB,
|  | double | beta,
|  | PLASMA_Complex64_t * | C,
|  | int | LDC
| ) |  |

PLASMA_zher2k - Performs one of the hermitian rank 2k operations

\[ C = \alpha [ op( A ) \times conjg( op( B )' )] + conjg( \alpha ) [ op( B ) \times conjg( op( A )' )] + \beta C \]

, or

\[ C = \alpha [ conjg( op( A )' ) \times op( B ) ] + conjg( \alpha ) [ conjg( op( B )' ) \times op( A ) ] + \beta C \]

,

where op( X ) is one of

op( X ) = X or op( X ) = conjg( X' )

where alpha and beta are real scalars, C is an n-by-n symmetric matrix and A and B are an n-by-k matrices the first case and k-by-n matrices in the second case.

Parameters

  [in] | uplo | = PlasmaUpper: Upper triangle of C is stored; = PlasmaLower: Lower triangle of C is stored.
  [in] | trans | Specifies whether the matrix A is transposed or conjugate transposed: = PlasmaNoTrans: \[ C = \alpha [ op( A ) \times conjg( op( B )' )] + conjg( \alpha ) [ op( B ) \times conjg( op( A )' )] + \beta C \] = PlasmaConjTrans: \[ C = \alpha [ conjg( op( A )' ) \times op( B ) ] + conjg( \alpha ) [ conjg( op( B )' ) \times op( A ) ] + \beta C \]
  [in] | N | N specifies the order of the matrix C. N must be at least zero.
  [in] | K | K specifies the number of columns of the A and B matrices with trans = PlasmaNoTrans. K specifies the number of rows of the A and B matrices with trans = PlasmaTrans.
  [in] | alpha | alpha specifies the scalar alpha.
  [in] | A | A is a LDA-by-ka matrix, where ka is K when trans = PlasmaNoTrans, and is N otherwise.
  [in] | LDA | The leading dimension of the array A. LDA must be at least max( 1, N ), otherwise LDA must be at least max( 1, K ).
  [in] | B | B is a LDB-by-kb matrix, where kb is K when trans = PlasmaNoTrans, and is N otherwise.
  [in] | LDB | The leading dimension of the array B. LDB must be at least max( 1, N ), otherwise LDB must be at least max( 1, K ).
  [in] | beta | beta specifies the scalar beta.
  [in,out] | C | C is a LDC-by-N matrix. On exit, the array uplo part of the matrix is overwritten by the uplo part of the updated matrix.
  [in] | LDC | The leading dimension of the array C. LDC >= max( 1, N ).

Returns

Return values

  PLASMA_SUCCESS | successful exit

See also
  PLASMA_zher2k_Tile
  PLASMA_zher2k_Tile_Async
  PLASMA_cher2k
  PLASMA_dher2k
  PLASMA_sher2k