Sacado::Fad::BLAS< OrdinalType, FadType > Class Template Reference

Fad specializations for Teuchos::BLAS wrappers. More...

#include <Sacado_Fad_BLAS.hpp>

Inheritance diagram for Sacado::Fad::BLAS< OrdinalType, FadType >:
Inheritance graph
[legend]

List of all members.

Protected Member Functions

template<typename x_type , typename y_type >
void Fad_DOT (const OrdinalType n, const x_type *x, const OrdinalType incx, const OrdinalType n_x_dot, const x_type *x_dot, const OrdinalType incx_dot, const y_type *y, const OrdinalType incy, const OrdinalType n_y_dot, const y_type *y_dot, const OrdinalType incy_dot, ValueType &z, const OrdinalType n_z_dot, ValueType *zdot) const
 Implementation of DOT.
template<typename alpha_type , typename A_type , typename x_type , typename beta_type >
void Fad_GEMV (Teuchos::ETransp trans, const OrdinalType m, const OrdinalType n, const alpha_type &alpha, const OrdinalType n_alpha_dot, const alpha_type *alpha_dot, const A_type *A, const OrdinalType lda, const OrdinalType n_A_dot, const A_type *A_dot, const OrdinalType lda_dot, const x_type *x, const OrdinalType incx, const OrdinalType n_x_dot, const x_type *x_dot, const OrdinalType incx_dot, const beta_type &beta, const OrdinalType n_beta_dot, const beta_type *beta_dot, ValueType *y, const OrdinalType incy, const OrdinalType n_y_dot, ValueType *y_dot, const OrdinalType incy_dot, const OrdinalType n_dot) const
 Implementation of GEMV.
template<typename alpha_type , typename x_type , typename y_type >
void Fad_GER (const OrdinalType m, const OrdinalType n, const alpha_type &alpha, const OrdinalType n_alpha_dot, const alpha_type *alpha_dot, const x_type *x, const OrdinalType incx, const OrdinalType n_x_dot, const x_type *x_dot, const OrdinalType incx_dot, const y_type *y, const OrdinalType incy, const OrdinalType n_y_dot, const y_type *y_dot, const OrdinalType incy_dot, ValueType *A, const OrdinalType lda, const OrdinalType n_A_dot, ValueType *A_dot, const OrdinalType lda_dot, const OrdinalType n_dot) const
 Implementation of GER.
template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void Fad_GEMM (Teuchos::ETransp transa, Teuchos::ETransp transb, const OrdinalType m, const OrdinalType n, const OrdinalType k, const alpha_type &alpha, const OrdinalType n_alpha_dot, const alpha_type *alpha_dot, const A_type *A, const OrdinalType lda, const OrdinalType n_A_dot, const A_type *A_dot, const OrdinalType lda_dot, const B_type *B, const OrdinalType ldb, const OrdinalType n_B_dot, const B_type *B_dot, const OrdinalType ldb_dot, const beta_type &beta, const OrdinalType n_beta_dot, const beta_type *beta_dot, ValueType *C, const OrdinalType ldc, const OrdinalType n_C_dot, ValueType *C_dot, const OrdinalType ldc_dot, const OrdinalType n_dot) const
 Implementation of GEMM.
template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void Fad_SYMM (Teuchos::ESide side, Teuchos::EUplo uplo, const OrdinalType m, const OrdinalType n, const alpha_type &alpha, const OrdinalType n_alpha_dot, const alpha_type *alpha_dot, const A_type *A, const OrdinalType lda, const OrdinalType n_A_dot, const A_type *A_dot, const OrdinalType lda_dot, const B_type *B, const OrdinalType ldb, const OrdinalType n_B_dot, const B_type *B_dot, const OrdinalType ldb_dot, const beta_type &beta, const OrdinalType n_beta_dot, const beta_type *beta_dot, ValueType *C, const OrdinalType ldc, const OrdinalType n_C_dot, ValueType *C_dot, const OrdinalType ldc_dot, const OrdinalType n_dot) const
 Implementation of SYMM.
template<typename alpha_type , typename A_type >
void Fad_TRMM (Teuchos::ESide side, Teuchos::EUplo uplo, Teuchos::ETransp transa, Teuchos::EDiag diag, const OrdinalType m, const OrdinalType n, const alpha_type &alpha, const OrdinalType n_alpha_dot, const alpha_type *alpha_dot, const A_type *A, const OrdinalType lda, const OrdinalType n_A_dot, const A_type *A_dot, const OrdinalType lda_dot, ValueType *B, const OrdinalType ldb, const OrdinalType n_B_dot, ValueType *B_dot, const OrdinalType ldb_dot, const OrdinalType n_dot) const
 Implementation of TRMM.
template<typename alpha_type , typename A_type >
void Fad_TRSM (Teuchos::ESide side, Teuchos::EUplo uplo, Teuchos::ETransp transa, Teuchos::EDiag diag, const OrdinalType m, const OrdinalType n, const alpha_type &alpha, const OrdinalType n_alpha_dot, const alpha_type *alpha_dot, const A_type *A, const OrdinalType lda, const OrdinalType n_A_dot, const A_type *A_dot, const OrdinalType lda_dot, ValueType *B, const OrdinalType ldb, const OrdinalType n_B_dot, ValueType *B_dot, const OrdinalType ldb_dot, const OrdinalType n_dot) const
 Implementation of TRMM.

Protected Attributes

ArrayTraits< OrdinalType, FadTypearrayTraits
 ArrayTraits for packing/unpacking value/derivative arrays.
Teuchos::BLAS< OrdinalType,
ValueType
blas
 BLAS for values.
bool use_default_impl
 Use custom or default implementation.
std::vector< ValueTypegemv_Ax
 Temporary array for GEMV.
std::vector< ValueTypegemm_AB
 Temporary array for GEMM.

Private Types

typedef Teuchos::ScalarTraits
< FadType >::magnitudeType 
MagnitudeType
typedef Sacado::ValueType
< FadType >::type 
ValueType
typedef Sacado::ScalarType
< FadType >::type 
scalar_type
typedef Sacado::dummy
< ValueType, scalar_type >
::type 
ScalarType
typedef
Teuchos::DefaultBLASImpl
< OrdinalType, FadType
BLASType

Constructor/Destructor.



 BLAS (bool use_default_impl=true, bool use_dynamic=true, OrdinalType static_workspace_size=0)
 Default constructor.
 BLAS (const BLAS &x)
 Copy constructor.
virtual ~BLAS ()
 Destructor.

Level 1 BLAS Routines.



void ROTG (FadType *da, FadType *db, MagnitudeType *c, FadType *s) const
 Computes a Givens plane rotation.
void ROT (const OrdinalType n, FadType *dx, const OrdinalType incx, FadType *dy, const OrdinalType incy, MagnitudeType *c, FadType *s) const
 Applies a Givens plane rotation.
void SCAL (const OrdinalType n, const FadType &alpha, FadType *x, const OrdinalType incx) const
 Scale the std::vector x by the constant alpha.
void COPY (const OrdinalType n, const FadType *x, const OrdinalType incx, FadType *y, const OrdinalType incy) const
 Copy the std::vector x to the std::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, FadType *y, const OrdinalType incy) const
 Perform the operation: y <- y+alpha*x.
Teuchos::ScalarTraits< FadType >
::magnitudeType 
ASUM (const OrdinalType n, const FadType *x, const OrdinalType incx) const
 Sum the absolute values of the entries of x.
template<typename x_type , typename y_type >
FadType 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.
MagnitudeType NRM2 (const OrdinalType n, const FadType *x, const OrdinalType incx) const
 Compute the 2-norm of the std::vector x.
OrdinalType IAMAX (const OrdinalType n, const FadType *x, const OrdinalType incx) const
 Return the index of the element of x with the maximum magnitude.

Level 2 BLAS Routines.



template<typename alpha_type , typename A_type , typename x_type , typename beta_type >
void GEMV (Teuchos::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, FadType *y, const OrdinalType incy) const
 Performs the matrix-stdvector 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 (Teuchos::EUplo uplo, Teuchos::ETransp trans, Teuchos::EDiag diag, const OrdinalType n, const A_type *A, const OrdinalType lda, FadType *x, const OrdinalType incx) const
 Performs the matrix-stdvector 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, FadType *A, const OrdinalType lda) const
 Performs the rank 1 operation: A <- alpha*x*y'+A.

Level 3 BLAS Routines.



template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void GEMM (Teuchos::ETransp transa, Teuchos::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, FadType *C, const OrdinalType ldc) const
 Performs the matrix-matrix operation: C <- alpha*op(A)*op(B)+beta*C where op(A) is either A or A', op(B) is either B or B', and C is an m by k matrix.
template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void SYMM (Teuchos::ESide side, Teuchos::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, FadType *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 >
void TRMM (Teuchos::ESide side, Teuchos::EUplo uplo, Teuchos::ETransp transa, Teuchos::EDiag diag, const OrdinalType m, const OrdinalType n, const alpha_type &alpha, const A_type *A, const OrdinalType lda, FadType *B, const OrdinalType ldb) const
 Performs the matrix-matrix operation: C <- alpha*op(A)*B+beta*C or C <- alpha*B*op(A)+beta*C 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 (Teuchos::ESide side, Teuchos::EUplo uplo, Teuchos::ETransp transa, Teuchos::EDiag diag, const OrdinalType m, const OrdinalType n, const alpha_type &alpha, const A_type *A, const OrdinalType lda, FadType *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.

Detailed Description

template<typename OrdinalType, typename FadType>
class Sacado::Fad::BLAS< OrdinalType, FadType >

Fad specializations for Teuchos::BLAS wrappers.

Definition at line 180 of file Sacado_Fad_BLAS.hpp.


Member Typedef Documentation

template<typename OrdinalType, typename FadType>
typedef Teuchos::ScalarTraits<FadType>::magnitudeType Sacado::Fad::BLAS< OrdinalType, FadType >::MagnitudeType [private]

Reimplemented from Teuchos::DefaultBLASImpl< OrdinalType, FadType >.

Definition at line 182 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
typedef Sacado::ValueType<FadType>::type Sacado::Fad::BLAS< OrdinalType, FadType >::ValueType [private]

Definition at line 183 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
typedef Sacado::ScalarType<FadType>::type Sacado::Fad::BLAS< OrdinalType, FadType >::scalar_type [private]

Definition at line 184 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
typedef Sacado::dummy<ValueType,scalar_type>::type Sacado::Fad::BLAS< OrdinalType, FadType >::ScalarType [private]

Definition at line 185 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
typedef Teuchos::DefaultBLASImpl<OrdinalType,FadType> Sacado::Fad::BLAS< OrdinalType, FadType >::BLASType [private]

Definition at line 186 of file Sacado_Fad_BLAS.hpp.


Constructor & Destructor Documentation

template<typename OrdinalType, typename FadType >
Sacado::Fad::BLAS< OrdinalType, FadType >::BLAS ( bool  use_default_impl = true,
bool  use_dynamic = true,
OrdinalType  static_workspace_size = 0 
) [inline]

Default constructor.

Definition at line 594 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
Sacado::Fad::BLAS< OrdinalType, FadType >::BLAS ( const BLAS< OrdinalType, FadType > &  x  )  [inline]

Copy constructor.

Definition at line 605 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType , typename FadType >
Sacado::Fad::BLAS< OrdinalType, FadType >::~BLAS ( void   )  [inline, virtual]

Destructor.

Definition at line 615 of file Sacado_Fad_BLASImp.hpp.


Member Function Documentation

template<typename OrdinalType, typename FadType>
void Sacado::Fad::BLAS< OrdinalType, FadType >::ROTG ( FadType da,
FadType db,
MagnitudeType c,
FadType s 
) const [inline]

Computes a Givens plane rotation.

Definition at line 209 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
void Sacado::Fad::BLAS< OrdinalType, FadType >::ROT ( const OrdinalType  n,
FadType dx,
const OrdinalType  incx,
FadType dy,
const OrdinalType  incy,
MagnitudeType c,
FadType s 
) const [inline]

Applies a Givens plane rotation.

Definition at line 214 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
void Sacado::Fad::BLAS< OrdinalType, FadType >::SCAL ( const OrdinalType  n,
const FadType alpha,
FadType x,
const OrdinalType  incx 
) const [inline]

Scale the std::vector x by the constant alpha.

Definition at line 622 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
void Sacado::Fad::BLAS< OrdinalType, FadType >::COPY ( const OrdinalType  n,
const FadType x,
const OrdinalType  incx,
FadType y,
const OrdinalType  incy 
) const [inline]

Copy the std::vector x to the std::vector y.

Definition at line 668 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
template<typename alpha_type , typename x_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::AXPY ( const OrdinalType  n,
const alpha_type &  alpha,
const x_type *  x,
const OrdinalType  incx,
FadType y,
const OrdinalType  incy 
) const [inline]

Perform the operation: y <- y+alpha*x.

Definition at line 696 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
Teuchos::ScalarTraits<FadType>::magnitudeType Sacado::Fad::BLAS< OrdinalType, FadType >::ASUM ( const OrdinalType  n,
const FadType x,
const OrdinalType  incx 
) const [inline]

Sum the absolute values of the entries of x.

Definition at line 237 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType >
template<typename x_type , typename y_type >
FadType Sacado::Fad::BLAS< OrdinalType, FadType >::DOT ( const OrdinalType  n,
const x_type *  x,
const OrdinalType  incx,
const y_type *  y,
const OrdinalType  incy 
) const [inline]

Form the dot product of the vectors x and y.

Reimplemented from Teuchos::DefaultBLASImpl< OrdinalType, FadType >.

Definition at line 755 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
Sacado::Fad::BLAS< OrdinalType, FadType >::MagnitudeType Sacado::Fad::BLAS< OrdinalType, FadType >::NRM2 ( const OrdinalType  n,
const FadType x,
const OrdinalType  incx 
) const [inline]

Compute the 2-norm of the std::vector x.

Definition at line 796 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
OrdinalType Sacado::Fad::BLAS< OrdinalType, FadType >::IAMAX ( const OrdinalType  n,
const FadType x,
const OrdinalType  incx 
) const [inline]

Return the index of the element of x with the maximum magnitude.

Definition at line 253 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
template<typename alpha_type , typename A_type , typename x_type , typename beta_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::GEMV ( Teuchos::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,
FadType y,
const OrdinalType  incy 
) const [inline]

Performs the matrix-stdvector operation: y <- alpha*A*x+beta*y or y <- alpha*A'*x+beta*y where A is a general m by n matrix.

Definition at line 830 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
template<typename A_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::TRMV ( Teuchos::EUplo  uplo,
Teuchos::ETransp  trans,
Teuchos::EDiag  diag,
const OrdinalType  n,
const A_type *  A,
const OrdinalType  lda,
FadType x,
const OrdinalType  incx 
) const [inline]

Performs the matrix-stdvector operation: x <- A*x or x <- A'*x where A is a unit/non-unit n by n upper/lower triangular matrix.

Definition at line 900 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
template<typename alpha_type , typename x_type , typename y_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::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,
FadType A,
const OrdinalType  lda 
) const [inline]

Performs the rank 1 operation: A <- alpha*x*y'+A.

Definition at line 965 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::GEMM ( Teuchos::ETransp  transa,
Teuchos::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,
FadType C,
const OrdinalType  ldc 
) const [inline]

Performs the matrix-matrix operation: C <- alpha*op(A)*op(B)+beta*C where op(A) is either A or A', op(B) is either B or B', and C is an m by k matrix.

Definition at line 1020 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::SYMM ( Teuchos::ESide  side,
Teuchos::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,
FadType C,
const OrdinalType  ldc 
) const [inline]

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.

Definition at line 1103 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
template<typename alpha_type , typename A_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::TRMM ( Teuchos::ESide  side,
Teuchos::EUplo  uplo,
Teuchos::ETransp  transa,
Teuchos::EDiag  diag,
const OrdinalType  m,
const OrdinalType  n,
const alpha_type &  alpha,
const A_type *  A,
const OrdinalType  lda,
FadType B,
const OrdinalType  ldb 
) const [inline]

Performs the matrix-matrix operation: C <- alpha*op(A)*B+beta*C or C <- alpha*B*op(A)+beta*C where op(A) is an unit/non-unit, upper/lower triangular matrix and B is a general matrix.

Definition at line 1176 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType>
template<typename alpha_type , typename A_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::TRSM ( Teuchos::ESide  side,
Teuchos::EUplo  uplo,
Teuchos::ETransp  transa,
Teuchos::EDiag  diag,
const OrdinalType  m,
const OrdinalType  n,
const alpha_type &  alpha,
const A_type *  A,
const OrdinalType  lda,
FadType B,
const OrdinalType  ldb 
) const [inline]

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.

Definition at line 1236 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
template<typename x_type , typename y_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::Fad_DOT ( const OrdinalType  n,
const x_type *  x,
const OrdinalType  incx,
const OrdinalType  n_x_dot,
const x_type *  x_dot,
const OrdinalType  incx_dot,
const y_type *  y,
const OrdinalType  incy,
const OrdinalType  n_y_dot,
const y_type *  y_dot,
const OrdinalType  incy_dot,
ValueType z,
const OrdinalType  n_z_dot,
ValueType zdot 
) const [inline, protected]

Implementation of DOT.

Definition at line 1296 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
template<typename alpha_type , typename A_type , typename x_type , typename beta_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::Fad_GEMV ( Teuchos::ETransp  trans,
const OrdinalType  m,
const OrdinalType  n,
const alpha_type &  alpha,
const OrdinalType  n_alpha_dot,
const alpha_type *  alpha_dot,
const A_type *  A,
const OrdinalType  lda,
const OrdinalType  n_A_dot,
const A_type *  A_dot,
const OrdinalType  lda_dot,
const x_type *  x,
const OrdinalType  incx,
const OrdinalType  n_x_dot,
const x_type *  x_dot,
const OrdinalType  incx_dot,
const beta_type &  beta,
const OrdinalType  n_beta_dot,
const beta_type *  beta_dot,
ValueType y,
const OrdinalType  incy,
const OrdinalType  n_y_dot,
ValueType y_dot,
const OrdinalType  incy_dot,
const OrdinalType  n_dot 
) const [inline, protected]

Implementation of GEMV.

Definition at line 1350 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
template<typename alpha_type , typename x_type , typename y_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::Fad_GER ( const OrdinalType  m,
const OrdinalType  n,
const alpha_type &  alpha,
const OrdinalType  n_alpha_dot,
const alpha_type *  alpha_dot,
const x_type *  x,
const OrdinalType  incx,
const OrdinalType  n_x_dot,
const x_type *  x_dot,
const OrdinalType  incx_dot,
const y_type *  y,
const OrdinalType  incy,
const OrdinalType  n_y_dot,
const y_type *  y_dot,
const OrdinalType  incy_dot,
ValueType A,
const OrdinalType  lda,
const OrdinalType  n_A_dot,
ValueType A_dot,
const OrdinalType  lda_dot,
const OrdinalType  n_dot 
) const [inline, protected]

Implementation of GER.

Definition at line 1447 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::Fad_GEMM ( Teuchos::ETransp  transa,
Teuchos::ETransp  transb,
const OrdinalType  m,
const OrdinalType  n,
const OrdinalType  k,
const alpha_type &  alpha,
const OrdinalType  n_alpha_dot,
const alpha_type *  alpha_dot,
const A_type *  A,
const OrdinalType  lda,
const OrdinalType  n_A_dot,
const A_type *  A_dot,
const OrdinalType  lda_dot,
const B_type *  B,
const OrdinalType  ldb,
const OrdinalType  n_B_dot,
const B_type *  B_dot,
const OrdinalType  ldb_dot,
const beta_type &  beta,
const OrdinalType  n_beta_dot,
const beta_type *  beta_dot,
ValueType C,
const OrdinalType  ldc,
const OrdinalType  n_C_dot,
ValueType C_dot,
const OrdinalType  ldc_dot,
const OrdinalType  n_dot 
) const [inline, protected]

Implementation of GEMM.

Definition at line 1502 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
template<typename alpha_type , typename A_type , typename B_type , typename beta_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::Fad_SYMM ( Teuchos::ESide  side,
Teuchos::EUplo  uplo,
const OrdinalType  m,
const OrdinalType  n,
const alpha_type &  alpha,
const OrdinalType  n_alpha_dot,
const alpha_type *  alpha_dot,
const A_type *  A,
const OrdinalType  lda,
const OrdinalType  n_A_dot,
const A_type *  A_dot,
const OrdinalType  lda_dot,
const B_type *  B,
const OrdinalType  ldb,
const OrdinalType  n_B_dot,
const B_type *  B_dot,
const OrdinalType  ldb_dot,
const beta_type &  beta,
const OrdinalType  n_beta_dot,
const beta_type *  beta_dot,
ValueType C,
const OrdinalType  ldc,
const OrdinalType  n_C_dot,
ValueType C_dot,
const OrdinalType  ldc_dot,
const OrdinalType  n_dot 
) const [inline, protected]

Implementation of SYMM.

Definition at line 1625 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
template<typename alpha_type , typename A_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::Fad_TRMM ( Teuchos::ESide  side,
Teuchos::EUplo  uplo,
Teuchos::ETransp  transa,
Teuchos::EDiag  diag,
const OrdinalType  m,
const OrdinalType  n,
const alpha_type &  alpha,
const OrdinalType  n_alpha_dot,
const alpha_type *  alpha_dot,
const A_type *  A,
const OrdinalType  lda,
const OrdinalType  n_A_dot,
const A_type *  A_dot,
const OrdinalType  lda_dot,
ValueType B,
const OrdinalType  ldb,
const OrdinalType  n_B_dot,
ValueType B_dot,
const OrdinalType  ldb_dot,
const OrdinalType  n_dot 
) const [inline, protected]

Implementation of TRMM.

Definition at line 1738 of file Sacado_Fad_BLASImp.hpp.

template<typename OrdinalType, typename FadType >
template<typename alpha_type , typename A_type >
void Sacado::Fad::BLAS< OrdinalType, FadType >::Fad_TRSM ( Teuchos::ESide  side,
Teuchos::EUplo  uplo,
Teuchos::ETransp  transa,
Teuchos::EDiag  diag,
const OrdinalType  m,
const OrdinalType  n,
const alpha_type &  alpha,
const OrdinalType  n_alpha_dot,
const alpha_type *  alpha_dot,
const A_type *  A,
const OrdinalType  lda,
const OrdinalType  n_A_dot,
const A_type *  A_dot,
const OrdinalType  lda_dot,
ValueType B,
const OrdinalType  ldb,
const OrdinalType  n_B_dot,
ValueType B_dot,
const OrdinalType  ldb_dot,
const OrdinalType  n_dot 
) const [inline, protected]

Implementation of TRMM.

Definition at line 1846 of file Sacado_Fad_BLASImp.hpp.


Member Data Documentation

template<typename OrdinalType, typename FadType>
ArrayTraits<OrdinalType,FadType> Sacado::Fad::BLAS< OrdinalType, FadType >::arrayTraits [protected]

ArrayTraits for packing/unpacking value/derivative arrays.

Definition at line 365 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
Teuchos::BLAS<OrdinalType, ValueType> Sacado::Fad::BLAS< OrdinalType, FadType >::blas [protected]

BLAS for values.

Definition at line 368 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
bool Sacado::Fad::BLAS< OrdinalType, FadType >::use_default_impl [protected]

Use custom or default implementation.

Definition at line 371 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
std::vector<ValueType> Sacado::Fad::BLAS< OrdinalType, FadType >::gemv_Ax [mutable, protected]

Temporary array for GEMV.

Definition at line 374 of file Sacado_Fad_BLAS.hpp.

template<typename OrdinalType, typename FadType>
std::vector<ValueType> Sacado::Fad::BLAS< OrdinalType, FadType >::gemm_AB [mutable, protected]

Temporary array for GEMM.

Definition at line 377 of file Sacado_Fad_BLAS.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Wed Apr 13 10:19:44 2011 for Sacado Package Browser (Single Doxygen Collection) by  doxygen 1.6.3