H2Lib  3.0
Macros
blas.h File Reference
#include "settings.h"

Go to the source code of this file.

Macros

#define h2_dot(n, x, incx, y, incy)   zdotc_(n, x, incx, y, incy)
 Compute the dot product of two field vectors $\vec x$ and $\vec y$ of length n. More...
 
#define h2_rdot(n, x, incx, y, incy)   ddot_(n, x, incx, y, incy)
 Compute the dot product of two real vectors $\vec x$ and $\vec y$ of length n. More...
 
#define h2_axpy(n, alpha, x, incx, y, incy)   zaxpy_(n, alpha, x, incx, y, incy)
 Add a field vector $\alpha \vec x$ to another field vector $\vec y$. More...
 
#define h2_raxpy(n, alpha, x, incx, y, incy)   daxpy_(n, alpha, x, incx, y, incy)
 Add a real vector $\alpha \vec x$ to another field vector $\vec y$. More...
 
#define h2_scal(n, alpha, x, incx)   zscal_(n, alpha, x, incx)
 Scales a field vector $\vec x$ by a field scalar $\alpha$. More...
 
#define h2_rscal(n, alpha, x, incx)   zdscal_(n, alpha, x, incx)
 Scales a field vector $\vec x$ by a real scalar $\alpha$. More...
 
#define h2_nrm2(n, x, incx)   dznrm2_(n, x, incx)
 Computes the 2-norm $\|\vec x\|_2$ of a field vector $\vec x$. More...
 
#define h2_swap(n, x, incx, y, incy)   zswap_(n, x, incx, y, incy)
 Swaps to entries of two field vectors $\vec x$ and $\vec y$. More...
 
#define h2_gemv(trans, m, n, alpha, a, lda, x, incx, beta, y, incy)   zgemv_(trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
 Compute matrix vector product of a general matrix $A$ with input vector $\vec x$ and output vector $y$. More...
 
#define h2_trmv(uplo, trans, diag, n, a, lda, x, incx)   ztrmv_(uplo, trans, diag, n, a, lda, x, incx)
 Compute matrix vector product of a triangular matrix $A$ with input and output vector $\vec x$. More...
 
#define h2_ger(m, n, alpha, x, incx, y, incy, a, lda)   zgerc_(m, n, alpha, x, incx, y, incy, a, lda)
 Adds a rank-1-update $\vec x \vec{\bar y}^T$ to a matrix $A$. More...
 
#define h2_gerc(m, n, alpha, x, incx, y, incy, a, lda)   zgerc_(m, n, alpha, x, incx, y, incy, a, lda)
 Adds a rank-1-update $\vec x \vec{\bar y}^T$ to a matrix $A$. More...
 
#define h2_geru(m, n, alpha, x, incx, y, incy, a, lda)   zgeru_(m, n, alpha, x, incx, y, incy, a, lda)
 Adds a rank-1-update $\vec x \vec y^T$ to a matrix $A$. More...
 
#define h2_syr(uplo, n, alpha, x, incx, a, lda)   zher_(uplo, n, alpha, x, incx, a, lda)
 Adds a symmetric/hermetian rank-1-update $\vec x \vec{\bar x}^T$ to a matrix $A$. More...
 
#define h2_gemm(transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)   zgemm_(transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc)
 Compute matrix-matrix-multiplication for general matrices $A,B$ and $C$. More...
 
#define h2_trmm(side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)   ztrmm_(side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)
 Compute matrix-matrix-multiplication for triangular matrices $A$ and a general matrix $B$. More...
 
#define h2_trsm(side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)   ztrsm_(side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)
 Solves a linear system of equations with a triangular matrix $A$ and a right-hand-side matrix $B$. More...
 
#define h2_lacgv(n, x, incx)   zlacgv_(n, x, incx)
 Conjugates a vector of field $\vec x$. More...
 
#define h2_potrf(uplo, n, a, lda, info)   zpotrf_(uplo, n, a, lda, info)
 Computes the Cholesky factorization of symmetric/hermitian positive definite matrix $A$ in-place. More...
 
#define h2_larf(side, m, n, v, incv, tau, c, ldc, work)   zlarf_(side, m, n, v, incv, tau, c, ldc, work)
 Applies an elementary reflector $H = I - \tau \vec v \vec v^T$ to a matrix $C$. More...
 
#define h2_larfg(n, alpha, x, incx, tau)   zlarfg_(n, alpha, x, incx, tau)
 Create an elementary reflector $H$. More...
 
#define h2_geqrf(m, n, a, lda, tau, work, lwork, info)   zgeqrf_(m, n, a, lda, tau, work, lwork, info)
 Compute a QR-decomposition of the matrix $A$. More...
 
#define h2_ormqr(side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)   zunmqr_(side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info)
 Apply orthogonal/unitary matrix $Q$ from "Left" or from "Right" to a matrix $C$. More...
 
#define h2_orgqr(m, n, k, a, lda, tau, work, lwork, info)   zungqr_(m, n, k, a, lda, tau, work, lwork, info)
 Generate the orthogonal/unitary matrix $Q$ out of its elementary reflectors $Q = H(1) \cdot \ldots \cdot H(k)$. More...
 
#define h2_steqr(compz, n, d, e, z, ldz, work, info)   zsteqr_(compz, n, d, e, z, ldz, work, info)
 Compute all eigenvalues and optionally all eigenvectors of a symmetric tridiagonal matrix $A$ using implicit QL or QR method. More...
 
#define h2_stev(jobz, n, d, e, z, ldz, work, info)   dstev_(jobz, n, d, e, z, ldz, work, info)
 Compute all eigenvalues and optionally all eigenvectors of a real symmetric tridiagonal matrix $A$. More...
 
#define h2_gesvd(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info)   zgesvd_(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info)
 Compute the SVD of a general matrix $A$. More...
 
#define h2_bdsqr(uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, rwork, info)   zbdsqr_(uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, rwork, info)
 Compute the SVD of a real "Lower" or "Upper" bidiagonal matrix $B$. More...
 
#define h2_heev(jobz, uplo, n, a, lda, w, work, lwork, rwork, info)   zheev_(jobz, uplo, n, a, lda, w, work, lwork, rwork, info)
 Compute all eigenvalues and optionally all eigenvectors of a hermitian / symmetric matrix $A$. More...
 

Detailed Description

Author
Sven Christophersen
Date
2015