SLATE 2024.05.31
Software for Linear Algebra Targeting Exascale
Loading...
Searching...
No Matches
her2k: Hermitian rank 2k update

Functions

template<typename scalar_t >
void slate::tile::her2k (scalar_t alpha, Tile< scalar_t > const &A, Tile< scalar_t > const &B, blas::real_type< scalar_t > beta, Tile< scalar_t > &C)
 Hermitian rank-2k update: \(C = \alpha op(A) op(B)^T + \alpha op(B) op(A)^T + \beta C\).
 
template<typename scalar_t >
void slate::tile::her2k (scalar_t alpha, Tile< scalar_t > const &&A, Tile< scalar_t > const &&B, blas::real_type< scalar_t > beta, Tile< scalar_t > &&C)
 Converts rvalue refs to lvalue refs.
 

Detailed Description

Function Documentation

◆ her2k()

template<typename scalar_t >
void slate::tile::her2k ( scalar_t  alpha,
Tile< scalar_t > const &  A,
Tile< scalar_t > const &  B,
blas::real_type< scalar_t >  beta,
Tile< scalar_t > &  C 
)

Hermitian rank-2k update: \(C = \alpha op(A) op(B)^T + \alpha op(B) op(A)^T + \beta C\).

Use transpose or conj_transpose to set \(op(A)\) and \(op(B)\). In the complex case, C cannot be transpose.