Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Functions
Vmath.hpp File Reference
#include <LibUtilities/LinearAlgebra/Blas.hpp>
#include <LibUtilities/LibUtilitiesDeclspec.h>
Include dependency graph for Vmath.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Vmath

Functions

template<class T >
void Vmath::Fill (int n, const T alpha, T *x, const int incx)
 Fill a vector with a constant value.
template<class T >
Vmath::ran2 (long *idum)
 Generates a number from ~Normal(0,1)
template<class T >
void Vmath::FillWhiteNoise (int n, const T eps, T *x, const int incx, int outseed)
 Fills a vector with white noise.
template<class T >
void Vmath::Vmul (int n, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 Multiply vector z = x*y.
template<class T >
void Vmath::Smul (int n, const T alpha, const T *x, const int incx, T *y, const int incy)
 Scalar multiply y = alpha*y.
template<class T >
void Vmath::Vdiv (int n, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 Multiply vector z = x/y.
template<class T >
void Vmath::Sdiv (int n, const T alpha, const T *x, const int incx, T *y, const int incy)
 Scalar multiply y = alpha/y.
template<class T >
void Vmath::Vadd (int n, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 Add vector z = x+y.
template<class T >
void Vmath::Sadd (int n, const T alpha, const T *x, const int incx, T *y, const int incy)
 Add vector y = alpha + x.
template<class T >
void Vmath::Vsub (int n, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 Subtract vector z = x-y.
template<class T >
void Vmath::Zero (int n, T *x, const int incx)
 Zero vector.
template<class T >
void Vmath::Neg (int n, T *x, const int incx)
 Negate x = -x.
template<class T >
void Vmath::Vlog (int n, const T *x, const int incx, T *y, const int incy)
template<class T >
void Vmath::Vexp (int n, const T *x, const int incx, T *y, const int incy)
template<class T >
void Vmath::Vpow (int n, const T *x, const int incx, const T f, T *y, const int incy)
template<class T >
void Vmath::Vsqrt (int n, const T *x, const int incx, T *y, const int incy)
 sqrt y = sqrt(x)
template<class T >
void Vmath::Vabs (int n, const T *x, const int incx, T *y, const int incy)
 vabs: y = |x|
template<class T >
void Vmath::Vvtvp (int n, const T *w, const int incw, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 vvtvp (vector times vector plus vector): z = w*x + y
template<class T >
void Vmath::Vvtvm (int n, const T *w, const int incw, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 vvtvm (vector times vector plus vector): z = w*x - y
template<class T >
void Vmath::Svtvp (int n, const T alpha, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 svtvp (scalar times vector plus vector): z = alpha*x + y
template<class T >
void Vmath::Svtvm (int n, const T alpha, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
 svtvp (scalar times vector plus vector): z = alpha*x - y
template<class T >
void Vmath::Vvtvvtp (int n, const T *v, int incv, const T *w, int incw, const T *x, int incx, const T *y, int incy, T *z, int incz)
 vvtvvtp (vector times vector plus vector times vector):
template<class T >
void Vmath::Vvtvvtm (int n, const T *v, int incv, const T *w, int incw, const T *x, int incx, const T *y, int incy, T *z, int incz)
 vvtvvtm (vector times vector minus vector times vector):
template<class T >
void Vmath::Svtsvtp (int n, const T alpha, const T *x, int incx, const T beta, const T *y, int incy, T *z, int incz)
 vvtvvtp (scalar times vector plus scalar times vector):
template<class T >
void Vmath::Vstvpp (int n, const T alpha, const T *v, int incv, const T *w, int incw, const T *x, int incx, T *z, int incz)
 Vstvpp (scalar times vector plus vector plus vector):
template<class T >
void Vmath::Gathr (int n, const T *x, const int *y, T *z)
 Gather vector z[i] = x[y[i]].
template<class T >
void Vmath::Gathr (int n, const T *sign, const T *x, const int *y, T *z)
 Gather vector z[i] = sign[i]*x[y[i]].
template<class T >
void Vmath::Scatr (int n, const T *x, const int *y, T *z)
 Scatter vector z[y[i]] = x[i].
template<class T >
void Vmath::Scatr (int n, const T *sign, const T *x, const int *y, T *z)
 Scatter vector z[y[i]] = sign[i]*x[i].
template<class T >
void Vmath::Assmb (int n, const T *x, const int *y, T *z)
 Assemble z[y[i]] += x[i]; z should be zero'd first.
template<class T >
void Vmath::Assmb (int n, const T *sign, const T *x, const int *y, T *z)
 Assemble z[y[i]] += sign[i]*x[i]; z should be zero'd first.
template<class T >
Vmath::Vsum (int n, const T *x, const int incx)
 Subtract return sum(x)
template<class T >
int Vmath::Imax (int n, const T *x, const int incx)
 Return the index of the maximum element in x.
template<class T >
Vmath::Vmax (int n, const T *x, const int incx)
 Return the maximum element in x – called vmax to avoid conflict with max.
template<class T >
int Vmath::Iamax (int n, const T *x, const int incx)
 Return the index of the maximum absolute element in x.
template<class T >
Vmath::Vamax (int n, const T *x, const int incx)
 Return the maximum absolute element in x called vamax to avoid conflict with max.
template<class T >
int Vmath::Imin (int n, const T *x, const int incx)
 Return the index of the minimum element in x.
template<class T >
Vmath::Vmin (int n, const T *x, const int incx)
 Return the minimum element in x - called vmin to avoid conflict with min.
template<class T >
Vmath::Dot (int n, const T *w, const T *x)
 vvtvp (vector times vector times vector): z = w*x*y
template<class T >
Vmath::Dot (int n, const T *w, const int incw, const T *x, const int incx)
 vvtvp (vector times vector times vector): z = w*x*y
template<class T >
Vmath::Dot2 (int n, const T *w, const T *x, const int *y)
 vvtvp (vector times vector times vector): z = w*x*y
template<class T >
Vmath::Dot2 (int n, const T *w, const int incw, const T *x, const int incx, const int *y, const int incy)
 vvtvp (vector times vector times vector): z = w*x*y
template<typename T >
void Vmath::Vcopy (int n, const T *x, const int incx, T *y, const int incy)
template<class T >
void Vmath::Reverse (int n, const T *x, const int incx, T *y, const int incy)