/** Perform Hermitian rank-1 update, \f$ A = \alpha x x^H + A \f$. @param[in] uplo Whether the upper or lower triangle of A is referenced. @param[in] n Number of rows and columns of A. n >= 0. @param[in] alpha Scalar \f$ \alpha \f$ @param[in] dx COMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx). @param[in] incx Stride between consecutive elements of dx. incx != 0. @param[in,out] dA COMPLEX_16 array of dimension (ldda,n), ldda >= max(1,n). The n-by-n matrix A, on GPU device. @param[in] ldda Leading dimension of dA. @ingroup magma_zblas2 */ extern "C" void magma_zher( magma_uplo_t uplo, magma_int_t n, double alpha, magmaDoubleComplex_const_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dA, magma_int_t ldda ) { cublasZher( cublas_uplo_const( uplo ), n, alpha, dx, incx, dA, ldda ); }
inline void her( const Order, const UpLo, const int n, const double alpha, const std::complex<double>* x, const int incx, std::complex<double>* a, const int lda ) { BOOST_STATIC_ASSERT( (is_same<Order, tag::column_major>::value) ); cublasZher( blas_option< UpLo >::value, n, alpha, x, incx, a, lda ); }