Nektar++
Loading...
Searching...
No Matches
Functions
Blas Namespace Reference

Functions

void F77NAME() daxpy (const int &n, const double &alpha, const double *x, const int &incx, const double *y, const int &incy)
 
void F77NAME() dscal (const int &n, const double &alpha, double *x, const int &incx)
 
void F77NAME() dgemv (const char &trans, const int &m, const int &n, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 
void F77NAME() sgemv (const char &trans, const int &m, const int &n, const float &alpha, const float *a, const int &lda, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 
void F77NAME() dgbmv (const char &trans, const int &m, const int &n, const int &kl, const int &ku, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 
void F77NAME() sgbmv (const char &trans, const int &m, const int &n, const int &kl, const int &ku, const float &alpha, const float *a, const int &lda, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 
void F77NAME() dspmv (const char &uplo, const int &n, const double &alpha, const double *a, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 
void F77NAME() sspmv (const char &uplo, const int &n, const float &alpha, const float *a, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 
void F77NAME() dsbmv (const char &uplo, const int &m, const int &k, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 
void F77NAME() ssbmv (const char &uplo, const int &m, const int &k, const float &alpha, const float *a, const int &lda, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 
void F77NAME() dtpmv (const char &uplo, const char &trans, const char &diag, const int &n, const double *ap, double *x, const int &incx)
 
void F77NAME() stpmv (const char &uplo, const char &trans, const char &diag, const int &n, const float *ap, float *x, const int &incx)
 
void F77NAME() dger (const int &m, const int &n, const double &alpha, const double *x, const int &incx, const double *y, const int &incy, double *a, const int &lda)
 
void F77NAME() sger (const int &m, const int &n, const float &alpha, const float *x, const int &incx, const float *y, const int &incy, float *a, const int &lda)
 
void F77NAME() dgemm (const char &trans, const char &transb, const int &m1, const int &n, const int &k, const double &alpha, const double *a, const int &lda, const double *b, const int &ldb, const double &beta, double *c, const int &ldc)
 
void F77NAME() sgemm (const char &trans, const char &transb, const int &m1, const int &n, const int &k, const float &alpha, const float *a, const int &lda, const float *b, const int &ldb, const float &beta, float *c, const int &ldc)
 
static void Daxpy (const int &n, const double &alpha, const double *x, const int &incx, const double *y, const int &incy)
 BLAS level 1: y = alpha x plus y.
 
static void Dscal (const int &n, const double &alpha, double *x, const int &incx)
 BLAS level 1: x = alpha x.
 
static void Gemv (const char &trans, const int &m, const int &n, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n].
 
static void Gemv (const char &trans, const int &m, const int &n, const float &alpha, const float *a, const int &lda, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n].
 
static void Dgemv (const char &trans, const int &m, const int &n, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n].
 
static void Gbmv (const char &trans, const int &m, const int &n, const int &kl, const int &ku, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n] is banded.
 
static void Gbmv (const char &trans, const int &m, const int &n, const int &kl, const int &ku, const float &alpha, const float *a, const int &lda, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n] is banded.
 
static void Dgbmv (const char &trans, const int &m, const int &n, const int &kl, const int &ku, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n] is banded.
 
static void Spmv (const char &uplo, const int &n, const double &alpha, const double *a, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[n x n] is symmetric packed.
 
static void Spmv (const char &uplo, const int &n, const float &alpha, const float *a, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[n x n] is symmetric packed.
 
static void Dspmv (const char &uplo, const int &n, const double &alpha, const double *a, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[n x n] is symmetric packed.
 
static void Sbmv (const char &uplo, const int &m, const int &k, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x m] is symmetric banded.
 
static void Sbmv (const char &uplo, const int &m, const int &k, const float &alpha, const float *a, const int &lda, const float *x, const int &incx, const float &beta, float *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x m] is symmetric banded.
 
static void Dsbmv (const char &uplo, const int &m, const int &k, const double &alpha, const double *a, const int &lda, const double *x, const int &incx, const double &beta, double *y, const int &incy)
 BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x m] is symmetric banded.
 
static void Tpmv (const char &uplo, const char &trans, const char &diag, const int &n, const double *ap, double *x, const int &incx)
 BLAS level 2: Matrix vector multiply x = alpha A x where A[n x n].
 
static void Tpmv (const char &uplo, const char &trans, const char &diag, const int &n, const float *ap, float *x, const int &incx)
 BLAS level 2: Matrix vector multiply x = alpha A x where A[n x n].
 
static void Dtpmv (const char &uplo, const char &trans, const char &diag, const int &n, const double *ap, double *x, const int &incx)
 BLAS level 2: Matrix vector multiply x = alpha A x where A[n x n].
 
static void Ger (const int &m, const int &n, const double &alpha, const double *x, const int &incx, const double *y, const int &incy, double *a, const int &lda)
 BLAS level 2: Matrix vector multiply A = alpha*x*y**T + A where A[m x n].
 
static void Ger (const int &m, const int &n, const float &alpha, const float *x, const int &incx, const float *y, const int &incy, float *a, const int &lda)
 BLAS level 2: Matrix vector multiply A = alpha*x*y**T + A where A[m x n].
 
static void Gemm (const char &transa, const char &transb, const int &m, const int &n, const int &k, const double &alpha, const double *a, const int &lda, const double *b, const int &ldb, const double &beta, double *c, const int &ldc)
 BLAS level 3: Matrix-matrix multiply C = A x B where op(A)[m x k], op(B)[k x n], C[m x n] DGEMM performs one of the matrix-matrix operations: C := alpha*op( A )*op( B ) + beta*C,.
 
static void Gemm (const char &transa, const char &transb, const int &m, const int &n, const int &k, const float &alpha, const float *a, const int &lda, const float *b, const int &ldb, const float &beta, float *c, const int &ldc)
 BLAS level 3: Matrix-matrix multiply C = A x B where op(A)[m x k], op(B)[k x n], C[m x n] DGEMM performs one of the matrix-matrix operations: C := alpha*op( A )*op( B ) + beta*C,.
 
static void Dgemm (const char &transa, const char &transb, const int &m, const int &n, const int &k, const double &alpha, const double *a, const int &lda, const double *b, const int &ldb, const double &beta, double *c, const int &ldc)
 BLAS level 3: Matrix-matrix multiply C = A x B where op(A)[m x k], op(B)[k x n], C[m x n] DGEMM performs one of the matrix-matrix operations: C := alpha*op( A )*op( B ) + beta*C,.
 
static void Cdgemm (const int M, const int N, const int K, const double a, const double *A, const int ldA, const double *B, const int ldB, const double b, double *C, const int ldC)
 
static void Daxpy (const int &n, const double &alpha, const Nektar::Array< Nektar::OneD, const double > &x, const int &incx, Nektar::Array< Nektar::OneD, double > &y, const int &incy)
 BLAS level 1: y = alpha x plus y.
 

Function Documentation

◆ Cdgemm()

static void Blas::Cdgemm ( const int  M,
const int  N,
const int  K,
const double  a,
const double *  A,
const int  ldA,
const double *  B,
const int  ldB,
const double  b,
double *  C,
const int  ldC 
)
inlinestatic

Definition at line 336 of file Blas.hpp.

341{
342 Dgemm('N', 'N', N, M, K, a, B, N, A, K, b, C, N);
343}
static void Dgemm(const char &transa, const char &transb, const int &m, const int &n, const int &k, const double &alpha, const double *a, const int &lda, const double *b, const int &ldb, const double &beta, double *c, const int &ldc)
BLAS level 3: Matrix-matrix multiply C = A x B where op(A)[m x k], op(B)[k x n], C[m x n] DGEMM perfo...
Definition Blas.hpp:324

References Dgemm().

◆ daxpy()

void F77NAME() Blas::daxpy ( const int &  n,
const double &  alpha,
const double *  x,
const int &  incx,
const double *  y,
const int &  incy 
)

Referenced by Daxpy(), and Daxpy().

◆ Daxpy() [1/2]

static void Blas::Daxpy ( const int &  n,
const double &  alpha,
const double *  x,
const int &  incx,
const double *  y,
const int &  incy 
)
inlinestatic

◆ Daxpy() [2/2]

static void Blas::Daxpy ( const int &  n,
const double &  alpha,
const Nektar::Array< Nektar::OneD, const double > &  x,
const int &  incx,
Nektar::Array< Nektar::OneD, double > &  y,
const int &  incy 
)
inlinestatic

BLAS level 1: y = alpha x plus y.

Definition at line 54 of file BlasArray.hpp.

59{
60 ASSERTL1(static_cast<unsigned int>(n * incx) <= x.size() + x.GetOffset(),
61 "Array out of bounds");
62 ASSERTL1(static_cast<unsigned int>(n * incy) <= y.size() + y.GetOffset(),
63 "Array out of bounds");
64
65 F77NAME(daxpy)(n, alpha, &x[0], incx, &y[0], incy);
66}
#define ASSERTL1(condition, msg)
Assert Level 1 – Debugging which is used whether in FULLDEBUG or DEBUG compilation mode....

References ASSERTL1, daxpy(), and F77NAME.

◆ dgbmv()

void F77NAME() Blas::dgbmv ( const char &  trans,
const int &  m,
const int &  n,
const int &  kl,
const int &  ku,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)

Referenced by Dgbmv(), and Gbmv().

◆ Dgbmv()

static void Blas::Dgbmv ( const char &  trans,
const int &  m,
const int &  n,
const int &  kl,
const int &  ku,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n] is banded.

Definition at line 184 of file Blas.hpp.

189{
190 F77NAME(dgbmv)(trans, m, n, kl, ku, alpha, a, lda, x, incx, beta, y, incy);
191}

References dgbmv(), and F77NAME.

Referenced by Nektar::BandedMatrixVectorMultiplicationUnitTests::BOOST_AUTO_TEST_CASE(), Nektar::BandedMatrixVectorMultiplicationUnitTests::BOOST_AUTO_TEST_CASE(), Nektar::BandedMatrixVectorMultiplicationUnitTests::BOOST_AUTO_TEST_CASE(), and Nektar::BandedMatrixVectorMultiplicationUnitTests::BOOST_AUTO_TEST_CASE().

◆ dgemm()

void F77NAME() Blas::dgemm ( const char &  trans,
const char &  transb,
const int &  m1,
const int &  n,
const int &  k,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  b,
const int &  ldb,
const double &  beta,
double *  c,
const int &  ldc 
)

Referenced by Dgemm(), and Gemm().

◆ Dgemm()

static void Blas::Dgemm ( const char &  transa,
const char &  transb,
const int &  m,
const int &  n,
const int &  k,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  b,
const int &  ldb,
const double &  beta,
double *  c,
const int &  ldc 
)
inlinestatic

BLAS level 3: Matrix-matrix multiply C = A x B where op(A)[m x k], op(B)[k x n], C[m x n] DGEMM performs one of the matrix-matrix operations: C := alpha*op( A )*op( B ) + beta*C,.

Definition at line 324 of file Blas.hpp.

329{
330 F77NAME(dgemm)
331 (transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc);
332}

References dgemm(), and F77NAME.

Referenced by Cdgemm(), Nektar::MultiRegions::GlobalLinSysStaticCond::ConstructNextLevelCondensedSystem(), Nektar::MultiRegions::InterfaceTrace::DeriveRotate(), Nektar::MultiRegions::DisContField::DeriveRotate(), Nektar::LibUtilities::Basis::GenBasis(), Nektar::Collections::HexIProduct(), Nektar::LibUtilities::Interp2D(), Nektar::LibUtilities::Interp3D(), Nektar::LibUtilities::InterpCoeff2D(), Nektar::LibUtilities::InterpCoeff3D(), Nektar::MultiRegions::LocTraceToTraceMap::InterpLocEdgesToTrace(), Nektar::MultiRegions::LocTraceToTraceMap::InterpLocEdgesToTraceTranspose(), Nektar::MultiRegions::LocTraceToTraceMap::InterpLocFacesToTrace(), Nektar::MultiRegions::LocTraceToTraceMap::InterpLocFacesToTraceTranspose(), Nektar::MultiRegions::LocTraceToTraceMap::InterpTraceToLocEdges(), Nektar::MultiRegions::LocTraceToTraceMap::InterpTraceToLocFaces(), Nektar::MultiRegions::GJPStabilisation::IProductwrtStdDerivBaseOnTraceMat(), Nektar::Collections::IProductWRTDerivBase_StdMat::operator()(), Nektar::Collections::IProductWRTDerivBase_SumFac_Seg::operator()(), Nektar::Collections::IProductWRTBase_StdMat::operator()(), Nektar::Collections::IProductWRTBase_SumFac_Seg::operator()(), Nektar::Collections::PhysInterp1DScaled_NoCollection::operator()(), Nektar::Collections::BwdTrans_SumFac_Tet::operator()(), Nektar::Collections::BwdTrans_SumFac_Prism::operator()(), Nektar::Collections::BwdTrans_SumFac_Pyr::operator()(), Nektar::Collections::PhysDeriv_StdMat::operator()(), Nektar::Collections::PhysDeriv_SumFac_Seg::operator()(), Nektar::Collections::PhysDeriv_SumFac_Quad::operator()(), Nektar::Collections::PhysDeriv_SumFac_Tri::operator()(), Nektar::Collections::PhysDeriv_SumFac_Hex::operator()(), Nektar::Collections::PhysDeriv_SumFac_Tet::operator()(), Nektar::Collections::PhysDeriv_SumFac_Prism::operator()(), Nektar::Collections::PhysDeriv_SumFac_Pyr::operator()(), Nektar::Collections::BwdTrans_StdMat::operator()(), Nektar::Collections::BwdTrans_SumFac_Seg::operator()(), Nektar::Collections::BwdTrans_SumFac_Quad::operator()(), Nektar::Collections::BwdTrans_SumFac_Tri::operator()(), Nektar::Collections::BwdTrans_SumFac_Hex::operator()(), Nektar::Collections::PhysDeriv_StdMat::operator()(), Nektar::Collections::PhysDeriv_SumFac_Seg::operator()(), Nektar::Collections::PhysDeriv_SumFac_Quad::operator()(), Nektar::Collections::PhysDeriv_SumFac_Tri::operator()(), Nektar::Collections::PhysDeriv_SumFac_Hex::operator()(), Nektar::Collections::PhysDeriv_SumFac_Tet::operator()(), Nektar::Collections::PhysDeriv_SumFac_Prism::operator()(), Nektar::Collections::PhysDeriv_SumFac_Pyr::operator()(), Nektar::LibUtilities::PhysGalerkinProject2D(), Nektar::LibUtilities::PhysGalerkinProject3D(), Nektar::Collections::PrismIProduct(), Nektar::Collections::PyrIProduct(), Nektar::Collections::QuadIProduct(), Nektar::CoupledLinearNS::SetUpCoupledMatrix(), Nektar::MultiRegions::GJPStabilisation::StdDerivOnTraceFromModes(), Nektar::Collections::TetIProduct(), Nektar::Collections::TriIProduct(), Nektar::MultiRegions::PreconditionerLowEnergy::v_DoTransformBasisFromLowEnergy(), Nektar::MultiRegions::PreconditionerLowEnergy::v_DoTransformBasisToLowEnergy(), Nektar::MultiRegions::PreconditionerLowEnergy::v_DoTransformCoeffsFromLowEnergy(), and Nektar::MultiRegions::PreconditionerLowEnergy::v_DoTransformCoeffsToLowEnergy().

◆ dgemv()

void F77NAME() Blas::dgemv ( const char &  trans,
const int &  m,
const int &  n,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)

Referenced by Dgemv(), and Gemv().

◆ Dgemv()

static void Blas::Dgemv ( const char &  trans,
const int &  m,
const int &  n,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

◆ dger()

void F77NAME() Blas::dger ( const int &  m,
const int &  n,
const double &  alpha,
const double *  x,
const int &  incx,
const double *  y,
const int &  incy,
double *  a,
const int &  lda 
)

Referenced by Ger().

◆ dsbmv()

void F77NAME() Blas::dsbmv ( const char &  uplo,
const int &  m,
const int &  k,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)

Referenced by Dsbmv(), and Sbmv().

◆ Dsbmv()

static void Blas::Dsbmv ( const char &  uplo,
const int &  m,
const int &  k,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x m] is symmetric banded.

Definition at line 242 of file Blas.hpp.

246{
247 F77NAME(dsbmv)(uplo, m, k, alpha, a, lda, x, incx, beta, y, incy);
248}

References dsbmv(), and F77NAME.

◆ dscal()

void F77NAME() Blas::dscal ( const int &  n,
const double &  alpha,
double *  x,
const int &  incx 
)

Referenced by Dscal().

◆ Dscal()

static void Blas::Dscal ( const int &  n,
const double &  alpha,
double *  x,
const int &  incx 
)
inlinestatic

◆ dspmv()

void F77NAME() Blas::dspmv ( const char &  uplo,
const int &  n,
const double &  alpha,
const double *  a,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)

Referenced by Dspmv(), and Spmv().

◆ Dspmv()

static void Blas::Dspmv ( const char &  uplo,
const int &  n,
const double &  alpha,
const double *  a,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[n x n] is symmetric packed.

Definition at line 213 of file Blas.hpp.

216{
217 F77NAME(dspmv)(uplo, n, alpha, a, x, incx, beta, y, incy);
218}

References dspmv(), and F77NAME.

◆ dtpmv()

void F77NAME() Blas::dtpmv ( const char &  uplo,
const char &  trans,
const char &  diag,
const int &  n,
const double *  ap,
double *  x,
const int &  incx 
)

Referenced by Dtpmv(), and Tpmv().

◆ Dtpmv()

static void Blas::Dtpmv ( const char &  uplo,
const char &  trans,
const char &  diag,
const int &  n,
const double *  ap,
double *  x,
const int &  incx 
)
inlinestatic

BLAS level 2: Matrix vector multiply x = alpha A x where A[n x n].

Definition at line 267 of file Blas.hpp.

270{
271 F77NAME(dtpmv)(uplo, trans, diag, n, ap, x, incx);
272}

References dtpmv(), and F77NAME.

◆ Gbmv() [1/2]

static void Blas::Gbmv ( const char &  trans,
const int &  m,
const int &  n,
const int &  kl,
const int &  ku,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n] is banded.

Definition at line 162 of file Blas.hpp.

167{
168 F77NAME(dgbmv)(trans, m, n, kl, ku, alpha, a, lda, x, incx, beta, y, incy);
169}

References dgbmv(), and F77NAME.

Referenced by Nektar::NekMultiplyBandedMatrix().

◆ Gbmv() [2/2]

static void Blas::Gbmv ( const char &  trans,
const int &  m,
const int &  n,
const int &  kl,
const int &  ku,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n] is banded.

Definition at line 173 of file Blas.hpp.

178{
179 F77NAME(sgbmv)(trans, m, n, kl, ku, alpha, a, lda, x, incx, beta, y, incy);
180}

References F77NAME, and sgbmv().

◆ Gemm() [1/2]

static void Blas::Gemm ( const char &  transa,
const char &  transb,
const int &  m,
const int &  n,
const int &  k,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  b,
const int &  ldb,
const double &  beta,
double *  c,
const int &  ldc 
)
inlinestatic

BLAS level 3: Matrix-matrix multiply C = A x B where op(A)[m x k], op(B)[k x n], C[m x n] DGEMM performs one of the matrix-matrix operations: C := alpha*op( A )*op( B ) + beta*C,.

Definition at line 296 of file Blas.hpp.

301{
302 F77NAME(dgemm)
303 (transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc);
304}

References dgemm(), and F77NAME.

Referenced by Nektar::MultiplyEqual(), Nektar::NekMultiplyFullMatrixFullMatrix(), and Nektar::FullMatrixFuncs::PseudoInverse().

◆ Gemm() [2/2]

static void Blas::Gemm ( const char &  transa,
const char &  transb,
const int &  m,
const int &  n,
const int &  k,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  b,
const int &  ldb,
const float &  beta,
float *  c,
const int &  ldc 
)
inlinestatic

BLAS level 3: Matrix-matrix multiply C = A x B where op(A)[m x k], op(B)[k x n], C[m x n] DGEMM performs one of the matrix-matrix operations: C := alpha*op( A )*op( B ) + beta*C,.

Definition at line 310 of file Blas.hpp.

315{
316 F77NAME(sgemm)
317 (transa, transb, m, n, k, alpha, a, lda, b, ldb, beta, c, ldc);
318}

References F77NAME, and sgemm().

◆ Gemv() [1/2]

static void Blas::Gemv ( const char &  trans,
const int &  m,
const int &  n,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n].

Definition at line 132 of file Blas.hpp.

136{
137 F77NAME(dgemv)(trans, m, n, alpha, a, lda, x, incx, beta, y, incy);
138}

References dgemv(), and F77NAME.

Referenced by Nektar::DiagonalBlockFullScalMatrixMultiply(), Nektar::DiagonalBlockFullScalMatrixMultiply(), and Nektar::NekMultiplyFullMatrix().

◆ Gemv() [2/2]

static void Blas::Gemv ( const char &  trans,
const int &  m,
const int &  n,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x n].

Definition at line 142 of file Blas.hpp.

146{
147 F77NAME(sgemv)(trans, m, n, alpha, a, lda, x, incx, beta, y, incy);
148}

References F77NAME, and sgemv().

◆ Ger() [1/2]

static void Blas::Ger ( const int &  m,
const int &  n,
const double &  alpha,
const double *  x,
const int &  incx,
const double *  y,
const int &  incy,
double *  a,
const int &  lda 
)
inlinestatic

BLAS level 2: Matrix vector multiply A = alpha*x*y**T + A where A[m x n].

Definition at line 276 of file Blas.hpp.

279{
280 F77NAME(dger)(m, n, alpha, x, incx, y, incy, a, lda);
281}

References dger(), and F77NAME.

Referenced by Nektar::CFSImplicit::AddMatNSBlkDiagVol().

◆ Ger() [2/2]

static void Blas::Ger ( const int &  m,
const int &  n,
const float &  alpha,
const float *  x,
const int &  incx,
const float *  y,
const int &  incy,
float *  a,
const int &  lda 
)
inlinestatic

BLAS level 2: Matrix vector multiply A = alpha*x*y**T + A where A[m x n].

Definition at line 285 of file Blas.hpp.

288{
289 F77NAME(sger)(m, n, alpha, x, incx, y, incy, a, lda);
290}

References F77NAME, and sger().

◆ Sbmv() [1/2]

static void Blas::Sbmv ( const char &  uplo,
const int &  m,
const int &  k,
const double &  alpha,
const double *  a,
const int &  lda,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x m] is symmetric banded.

Definition at line 222 of file Blas.hpp.

226{
227 F77NAME(dsbmv)(uplo, m, k, alpha, a, lda, x, incx, beta, y, incy);
228}

References dsbmv(), and F77NAME.

◆ Sbmv() [2/2]

static void Blas::Sbmv ( const char &  uplo,
const int &  m,
const int &  k,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[m x m] is symmetric banded.

Definition at line 232 of file Blas.hpp.

236{
237 F77NAME(ssbmv)(uplo, m, k, alpha, a, lda, x, incx, beta, y, incy);
238}

References F77NAME, and ssbmv().

◆ sgbmv()

void F77NAME() Blas::sgbmv ( const char &  trans,
const int &  m,
const int &  n,
const int &  kl,
const int &  ku,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)

Referenced by Gbmv().

◆ sgemm()

void F77NAME() Blas::sgemm ( const char &  trans,
const char &  transb,
const int &  m1,
const int &  n,
const int &  k,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  b,
const int &  ldb,
const float &  beta,
float *  c,
const int &  ldc 
)

Referenced by Gemm().

◆ sgemv()

void F77NAME() Blas::sgemv ( const char &  trans,
const int &  m,
const int &  n,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)

Referenced by Gemv().

◆ sger()

void F77NAME() Blas::sger ( const int &  m,
const int &  n,
const float &  alpha,
const float *  x,
const int &  incx,
const float *  y,
const int &  incy,
float *  a,
const int &  lda 
)

Referenced by Ger().

◆ Spmv() [1/2]

static void Blas::Spmv ( const char &  uplo,
const int &  n,
const double &  alpha,
const double *  a,
const double *  x,
const int &  incx,
const double &  beta,
double *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[n x n] is symmetric packed.

Definition at line 195 of file Blas.hpp.

198{
199 F77NAME(dspmv)(uplo, n, alpha, a, x, incx, beta, y, incy);
200}

References dspmv(), and F77NAME.

Referenced by Nektar::NekMultiplySymmetricMatrix().

◆ Spmv() [2/2]

static void Blas::Spmv ( const char &  uplo,
const int &  n,
const float &  alpha,
const float *  a,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)
inlinestatic

BLAS level 2: Matrix vector multiply y = alpha A x plus beta y where A[n x n] is symmetric packed.

Definition at line 204 of file Blas.hpp.

207{
208 F77NAME(sspmv)(uplo, n, alpha, a, x, incx, beta, y, incy);
209}

References F77NAME, and sspmv().

◆ ssbmv()

void F77NAME() Blas::ssbmv ( const char &  uplo,
const int &  m,
const int &  k,
const float &  alpha,
const float *  a,
const int &  lda,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)

Referenced by Sbmv().

◆ sspmv()

void F77NAME() Blas::sspmv ( const char &  uplo,
const int &  n,
const float &  alpha,
const float *  a,
const float *  x,
const int &  incx,
const float &  beta,
float *  y,
const int &  incy 
)

Referenced by Spmv().

◆ stpmv()

void F77NAME() Blas::stpmv ( const char &  uplo,
const char &  trans,
const char &  diag,
const int &  n,
const float *  ap,
float *  x,
const int &  incx 
)

Referenced by Tpmv().

◆ Tpmv() [1/2]

static void Blas::Tpmv ( const char &  uplo,
const char &  trans,
const char &  diag,
const int &  n,
const double *  ap,
double *  x,
const int &  incx 
)
inlinestatic

BLAS level 2: Matrix vector multiply x = alpha A x where A[n x n].

Definition at line 251 of file Blas.hpp.

254{
255 F77NAME(dtpmv)(uplo, trans, diag, n, ap, x, incx);
256}

References dtpmv(), and F77NAME.

Referenced by Nektar::NekMultiplyLowerTriangularMatrix(), and Nektar::NekMultiplyUpperTriangularMatrix().

◆ Tpmv() [2/2]

static void Blas::Tpmv ( const char &  uplo,
const char &  trans,
const char &  diag,
const int &  n,
const float *  ap,
float *  x,
const int &  incx 
)
inlinestatic

BLAS level 2: Matrix vector multiply x = alpha A x where A[n x n].

Definition at line 259 of file Blas.hpp.

262{
263 F77NAME(stpmv)(uplo, trans, diag, n, ap, x, incx);
264}

References F77NAME, and stpmv().