Teuchos Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Teuchos::BLAS< int, std::complex< double > > Class Reference

#include <Teuchos_BLAS.hpp>

Inheritance diagram for Teuchos::BLAS< int, std::complex< double > >:

Public Member Functions

 BLAS (void)
 
 BLAS (const BLAS< int, std::complex< double > > &)
 
virtual ~BLAS (void)
 
void ROTG (std::complex< double > *da, std::complex< double > *db, double *c, std::complex< double > *s) const
 
void ROT (const int &n, std::complex< double > *dx, const int &incx, std::complex< double > *dy, const int &incy, double *c, std::complex< double > *s) const
 
double ASUM (const int &n, const std::complex< double > *x, const int &incx) const
 
void AXPY (const int &n, const std::complex< double > alpha, const std::complex< double > *x, const int &incx, std::complex< double > *y, const int &incy) const
 
void COPY (const int &n, const std::complex< double > *x, const int &incx, std::complex< double > *y, const int &incy) const
 
std::complex< double > DOT (const int &n, const std::complex< double > *x, const int &incx, const std::complex< double > *y, const int &incy) const
 
double NRM2 (const int &n, const std::complex< double > *x, const int &incx) const
 
void SCAL (const int &n, const std::complex< double > alpha, std::complex< double > *x, const int &incx) const
 
int IAMAX (const int &n, const std::complex< double > *x, const int &incx) const
 
void GEMV (ETransp trans, const int &m, const int &n, const std::complex< double > alpha, const std::complex< double > *A, const int &lda, const std::complex< double > *x, const int &incx, const std::complex< double > beta, std::complex< double > *y, const int &incy) const
 
void TRMV (EUplo uplo, ETransp trans, EDiag diag, const int &n, const std::complex< double > *A, const int &lda, std::complex< double > *x, const int &incx) const
 
void GER (const int &m, const int &n, const std::complex< double > alpha, const std::complex< double > *x, const int &incx, const std::complex< double > *y, const int &incy, std::complex< double > *A, const int &lda) const
 
void GEMM (ETransp transa, ETransp transb, const int &m, const int &n, const int &k, const std::complex< double > alpha, const std::complex< double > *A, const int &lda, const std::complex< double > *B, const int &ldb, const std::complex< double > beta, std::complex< double > *C, const int &ldc) const
 
void SWAP (const int &n, std::complex< double > *const x, const int &incx, std::complex< double > *const y, const int &incy) const
 
void SYMM (ESide side, EUplo uplo, const int &m, const int &n, const std::complex< double > alpha, const std::complex< double > *A, const int &lda, const std::complex< double > *B, const int &ldb, const std::complex< double > beta, std::complex< double > *C, const int &ldc) const
 
void SYRK (EUplo uplo, ETransp trans, const int &n, const int &k, const std::complex< double > alpha, const std::complex< double > *A, const int &lda, const std::complex< double > beta, std::complex< double > *C, const int &ldc) const
 
void HERK (EUplo uplo, ETransp trans, const int &n, const int &k, const std::complex< double > alpha, const std::complex< double > *A, const int &lda, const std::complex< double > beta, std::complex< double > *C, const int &ldc) const
 
void TRMM (ESide side, EUplo uplo, ETransp transa, EDiag diag, const int &m, const int &n, const std::complex< double > alpha, const std::complex< double > *A, const int &lda, std::complex< double > *B, const int &ldb) const
 
void TRSM (ESide side, EUplo uplo, ETransp transa, EDiag diag, const int &m, const int &n, const std::complex< double > alpha, const std::complex< double > *A, const int &lda, std::complex< double > *B, const int &ldb) const
 
void ROTG (ScalarType *da, ScalarType *db, rotg_c_type *c, ScalarType *s) const
 Computes a Givens plane rotation.
 
void ROT (const OrdinalType &n, ScalarType *dx, const OrdinalType &incx, ScalarType *dy, const OrdinalType &incy, MagnitudeType *c, ScalarType *s) const
 Applies a Givens plane rotation.
 
void SCAL (const OrdinalType &n, const ScalarType &alpha, ScalarType *x, const OrdinalType &incx) const
 Scale the vector x by the constant alpha.
 
void COPY (const OrdinalType &n, const ScalarType *x, const OrdinalType &incx, ScalarType *y, const OrdinalType &incy) const
 Copy the vector x to the vector y.
 
template<typename alpha_type, typename x_type>
void AXPY (const OrdinalType &n, const alpha_type alpha, const x_type *x, const OrdinalType &incx, ScalarType *y, const OrdinalType &incy) const
 Perform the operation: y <- y+alpha*x.
 
ScalarTraits< ScalarType >::magnitudeType ASUM (const OrdinalType &n, const ScalarType *x, const OrdinalType &incx) const
 Sum the absolute values of the entries of x.
 
template<typename x_type, typename y_type>
ScalarType DOT (const OrdinalType &n, const x_type *x, const OrdinalType &incx, const y_type *y, const OrdinalType &incy) const
 Form the dot product of the vectors x and y.
 
ScalarTraits< ScalarType >::magnitudeType NRM2 (const OrdinalType &n, const ScalarType *x, const OrdinalType &incx) const
 Compute the 2-norm of the vector x.
 
OrdinalType IAMAX (const OrdinalType &n, const ScalarType *x, const OrdinalType &incx) const
 Return the index of the element of x with the maximum magnitude.
 
 DefaultBLASImpl (void)
 Default constructor.
 
 DefaultBLASImpl (const DefaultBLASImpl< OrdinalType, ScalarType > &)
 Copy constructor.
 
virtual ~DefaultBLASImpl (void)
 Destructor.
 
template<typename alpha_type, typename A_type, typename x_type, typename beta_type>
void GEMV (ETransp trans, const OrdinalType &m, const OrdinalType &n, const alpha_type alpha, const A_type *A, const OrdinalType &lda, const x_type *x, const OrdinalType &incx, const beta_type beta, ScalarType *y, const OrdinalType &incy) const
 Performs the matrix-vector operation: y <- alpha*A*x+beta*y or y <- alpha*A'*x+beta*y where A is a general m by n matrix.
 
template<typename A_type>
void TRMV (EUplo uplo, ETransp trans, EDiag diag, const OrdinalType &n, const A_type *A, const OrdinalType &lda, ScalarType *x, const OrdinalType &incx) const
 Performs the matrix-vector operation: x <- A*x or x <- A'*x where A is a unit/non-unit n by n upper/lower triangular matrix.
 
template<typename alpha_type, typename x_type, typename y_type>
void GER (const OrdinalType &m, const OrdinalType &n, const alpha_type alpha, const x_type *x, const OrdinalType &incx, const y_type *y, const OrdinalType &incy, ScalarType *A, const OrdinalType &lda) const
 Performs the rank 1 operation: A <- alpha*x*y'+A.
 
template<typename alpha_type, typename A_type, typename B_type, typename beta_type>
void GEMM (ETransp transa, ETransp transb, const OrdinalType &m, const OrdinalType &n, const OrdinalType &k, const alpha_type alpha, const A_type *A, const OrdinalType &lda, const B_type *B, const OrdinalType &ldb, const beta_type beta, ScalarType *C, const OrdinalType &ldc) const
 General matrix-matrix multiply.
 
void SWAP (const OrdinalType &n, ScalarType *const x, const OrdinalType &incx, ScalarType *const y, const OrdinalType &incy) const
 Swap the entries of x and y.
 
template<typename alpha_type, typename A_type, typename B_type, typename beta_type>
void SYMM (ESide side, EUplo uplo, const OrdinalType &m, const OrdinalType &n, const alpha_type alpha, const A_type *A, const OrdinalType &lda, const B_type *B, const OrdinalType &ldb, const beta_type beta, ScalarType *C, const OrdinalType &ldc) const
 Performs the matrix-matrix operation: C <- alpha*A*B+beta*C or C <- alpha*B*A+beta*C where A is an m by m or n by n symmetric matrix and B is a general matrix.
 
template<typename alpha_type, typename A_type, typename beta_type>
void SYRK (EUplo uplo, ETransp trans, const OrdinalType &n, const OrdinalType &k, const alpha_type alpha, const A_type *A, const OrdinalType &lda, const beta_type beta, ScalarType *C, const OrdinalType &ldc) const
 Performs the symmetric rank k operation: C <- alpha*A*A'+beta*C or C <- alpha*A'*A+beta*C, where alpha and beta are scalars, C is an n by n symmetric matrix and A is an n by k matrix in the first case or k by n matrix in the second case.
 
template<typename alpha_type, typename A_type>
void TRMM (ESide side, EUplo uplo, ETransp transa, EDiag diag, const OrdinalType &m, const OrdinalType &n, const alpha_type alpha, const A_type *A, const OrdinalType &lda, ScalarType *B, const OrdinalType &ldb) const
 Performs the matrix-matrix operation: B <- alpha*op(A)*B or B <- alpha*B*op(A) where op(A) is an unit/non-unit, upper/lower triangular matrix and B is a general matrix.
 
template<typename alpha_type, typename A_type>
void TRSM (ESide side, EUplo uplo, ETransp transa, EDiag diag, const OrdinalType &m, const OrdinalType &n, const alpha_type alpha, const A_type *A, const OrdinalType &lda, ScalarType *B, const OrdinalType &ldb) const
 Solves the matrix equations: op(A)*X=alpha*B or X*op(A)=alpha*B where X and B are m by n matrices, A is a unit/non-unit, upper/lower triangular matrix and op(A) is A or A'. The matrix X is overwritten on B.
 

Private Types

typedef Teuchos::ScalarTraits< std::complex< double > >::magnitudeType MagnitudeType
 
typedef Teuchos::ScalarTraits< std::complex< double > >::magnitudeType MagnitudeType
 
typedef Teuchos::ScalarTraits< std::complex< double > >::magnitudeType MagnitudeType
 

Constructor/Destructor.

 BLAS (void)
 Default constructor.
 
 BLAS (const BLAS< int, std::complex< double > > &)
 Copy constructor.
 
virtual ~BLAS (void)
 Destructor.
 
 BLAS (void)
 Default constructor.
 
 BLAS (const BLAS< int, std::complex< double > > &)
 Copy constructor.
 
virtual ~BLAS (void)
 Destructor.
 
 BLAS (void)
 Default constructor.
 
 BLAS (const BLAS< int, std::complex< double > > &)
 Copy constructor.
 
virtual ~BLAS (void)
 Destructor.
 

Additional Inherited Members

typedef details::GivensRotator< ScalarType >::c_type rotg_c_type
 The type used for c in ROTG.
 

Detailed Description

Definition at line 2345 of file Teuchos_BLAS.hpp.

Member Typedef Documentation

◆ MagnitudeType [1/3]

typedef Teuchos::ScalarTraits<std::complex< double >>::magnitudeType Teuchos::BLAS< int, std::complex< double > >::MagnitudeType
private

Definition at line 247 of file Teuchos_BLAS.hpp.

◆ MagnitudeType [2/3]

typedef Teuchos::ScalarTraits<std::complex< double >>::magnitudeType Teuchos::BLAS< int, std::complex< double > >::MagnitudeType
private

Definition at line 247 of file Teuchos_BLAS.hpp.

◆ MagnitudeType [3/3]

typedef Teuchos::ScalarTraits<std::complex< double >>::magnitudeType Teuchos::BLAS< int, std::complex< double > >::MagnitudeType
private

Definition at line 247 of file Teuchos_BLAS.hpp.

Constructor & Destructor Documentation

◆ BLAS() [1/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( void )
inline

Definition at line 2348 of file Teuchos_BLAS.hpp.

◆ BLAS() [2/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( const BLAS< int, std::complex< double > > & )
inline

Definition at line 2349 of file Teuchos_BLAS.hpp.

◆ ~BLAS() [1/4]

virtual Teuchos::BLAS< int, std::complex< double > >::~BLAS ( void )
inlinevirtual

Definition at line 2350 of file Teuchos_BLAS.hpp.

◆ BLAS() [3/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( void )
inline

Default constructor.

Definition at line 254 of file Teuchos_BLAS.hpp.

◆ BLAS() [4/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( const BLAS< int, std::complex< double > > & )
inline

Copy constructor.

Definition at line 257 of file Teuchos_BLAS.hpp.

◆ ~BLAS() [2/4]

virtual Teuchos::BLAS< int, std::complex< double > >::~BLAS ( void )
inlinevirtual

Destructor.

Definition at line 260 of file Teuchos_BLAS.hpp.

◆ BLAS() [5/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( void )
inline

Default constructor.

Definition at line 254 of file Teuchos_BLAS.hpp.

◆ BLAS() [6/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( const BLAS< int, std::complex< double > > & )
inline

Copy constructor.

Definition at line 257 of file Teuchos_BLAS.hpp.

◆ ~BLAS() [3/4]

virtual Teuchos::BLAS< int, std::complex< double > >::~BLAS ( void )
inlinevirtual

Destructor.

Definition at line 260 of file Teuchos_BLAS.hpp.

◆ BLAS() [7/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( void )
inline

Default constructor.

Definition at line 254 of file Teuchos_BLAS.hpp.

◆ BLAS() [8/8]

Teuchos::BLAS< int, std::complex< double > >::BLAS ( const BLAS< int, std::complex< double > > & )
inline

Copy constructor.

Definition at line 257 of file Teuchos_BLAS.hpp.

◆ ~BLAS() [4/4]

virtual Teuchos::BLAS< int, std::complex< double > >::~BLAS ( void )
inlinevirtual

Destructor.

Definition at line 260 of file Teuchos_BLAS.hpp.

Member Function Documentation

◆ ROTG()

void Teuchos::BLAS< int, std::complex< double > >::ROTG ( std::complex< double > * da,
std::complex< double > * db,
double * c,
std::complex< double > * s ) const

◆ ROT()

void Teuchos::BLAS< int, std::complex< double > >::ROT ( const int & n,
std::complex< double > * dx,
const int & incx,
std::complex< double > * dy,
const int & incy,
double * c,
std::complex< double > * s ) const

◆ ASUM()

double Teuchos::BLAS< int, std::complex< double > >::ASUM ( const int & n,
const std::complex< double > * x,
const int & incx ) const

◆ AXPY()

void Teuchos::BLAS< int, std::complex< double > >::AXPY ( const int & n,
const std::complex< double > alpha,
const std::complex< double > * x,
const int & incx,
std::complex< double > * y,
const int & incy ) const

◆ COPY()

void Teuchos::BLAS< int, std::complex< double > >::COPY ( const int & n,
const std::complex< double > * x,
const int & incx,
std::complex< double > * y,
const int & incy ) const

◆ DOT()

std::complex< double > Teuchos::BLAS< int, std::complex< double > >::DOT ( const int & n,
const std::complex< double > * x,
const int & incx,
const std::complex< double > * y,
const int & incy ) const

◆ NRM2()

double Teuchos::BLAS< int, std::complex< double > >::NRM2 ( const int & n,
const std::complex< double > * x,
const int & incx ) const

◆ SCAL()

void Teuchos::BLAS< int, std::complex< double > >::SCAL ( const int & n,
const std::complex< double > alpha,
std::complex< double > * x,
const int & incx ) const

◆ IAMAX()

int Teuchos::BLAS< int, std::complex< double > >::IAMAX ( const int & n,
const std::complex< double > * x,
const int & incx ) const

◆ GEMV()

void Teuchos::BLAS< int, std::complex< double > >::GEMV ( ETransp trans,
const int & m,
const int & n,
const std::complex< double > alpha,
const std::complex< double > * A,
const int & lda,
const std::complex< double > * x,
const int & incx,
const std::complex< double > beta,
std::complex< double > * y,
const int & incy ) const

◆ TRMV()

void Teuchos::BLAS< int, std::complex< double > >::TRMV ( EUplo uplo,
ETransp trans,
EDiag diag,
const int & n,
const std::complex< double > * A,
const int & lda,
std::complex< double > * x,
const int & incx ) const

◆ GER()

void Teuchos::BLAS< int, std::complex< double > >::GER ( const int & m,
const int & n,
const std::complex< double > alpha,
const std::complex< double > * x,
const int & incx,
const std::complex< double > * y,
const int & incy,
std::complex< double > * A,
const int & lda ) const

◆ GEMM()

void Teuchos::BLAS< int, std::complex< double > >::GEMM ( ETransp transa,
ETransp transb,
const int & m,
const int & n,
const int & k,
const std::complex< double > alpha,
const std::complex< double > * A,
const int & lda,
const std::complex< double > * B,
const int & ldb,
const std::complex< double > beta,
std::complex< double > * C,
const int & ldc ) const

◆ SWAP()

void Teuchos::BLAS< int, std::complex< double > >::SWAP ( const int & n,
std::complex< double > *const x,
const int & incx,
std::complex< double > *const y,
const int & incy ) const

◆ SYMM()

void Teuchos::BLAS< int, std::complex< double > >::SYMM ( ESide side,
EUplo uplo,
const int & m,
const int & n,
const std::complex< double > alpha,
const std::complex< double > * A,
const int & lda,
const std::complex< double > * B,
const int & ldb,
const std::complex< double > beta,
std::complex< double > * C,
const int & ldc ) const

◆ SYRK()

void Teuchos::BLAS< int, std::complex< double > >::SYRK ( EUplo uplo,
ETransp trans,
const int & n,
const int & k,
const std::complex< double > alpha,
const std::complex< double > * A,
const int & lda,
const std::complex< double > beta,
std::complex< double > * C,
const int & ldc ) const

◆ HERK()

void Teuchos::BLAS< int, std::complex< double > >::HERK ( EUplo uplo,
ETransp trans,
const int & n,
const int & k,
const std::complex< double > alpha,
const std::complex< double > * A,
const int & lda,
const std::complex< double > beta,
std::complex< double > * C,
const int & ldc ) const

◆ TRMM()

void Teuchos::BLAS< int, std::complex< double > >::TRMM ( ESide side,
EUplo uplo,
ETransp transa,
EDiag diag,
const int & m,
const int & n,
const std::complex< double > alpha,
const std::complex< double > * A,
const int & lda,
std::complex< double > * B,
const int & ldb ) const

◆ TRSM()

void Teuchos::BLAS< int, std::complex< double > >::TRSM ( ESide side,
EUplo uplo,
ETransp transa,
EDiag diag,
const int & m,
const int & n,
const std::complex< double > alpha,
const std::complex< double > * A,
const int & lda,
std::complex< double > * B,
const int & ldb ) const

The documentation for this class was generated from the following file: