Advanced Multi-Physics (AMP)
On-Line Documentation
DeviceOperationsHelpers.h
Go to the documentation of this file.
1#ifndef included_AMP_DeviceOperationsHelpers_h
2#define included_AMP_DeviceOperationsHelpers_h
3
4
5namespace AMP {
6namespace LinearAlgebra {
7
8
14template<typename TYPE>
16{
17public:
18 // functions that operate on VectorData
19 static void setRandomValues( size_t N, TYPE *x );
20 static void scale( TYPE alpha, size_t N, const TYPE *x, TYPE *y );
21 static void scale( TYPE alpha, size_t N, TYPE *x );
22 static void add( size_t N, const TYPE *x, const TYPE *y, TYPE *z );
23 static void subtract( size_t N, const TYPE *x, const TYPE *y, TYPE *z );
24 static void multiply( size_t N, const TYPE *x, const TYPE *y, TYPE *z );
25 static void divide( size_t N, const TYPE *x, const TYPE *y, TYPE *z );
26 static void reciprocal( size_t N, const TYPE *x, TYPE *y );
27 static void
28 linearSum( const TYPE alpha, size_t N, const TYPE *x, const TYPE beta, const TYPE *y, TYPE *z );
29 static void abs( size_t N, const TYPE *x, TYPE *z );
30 static void addScalar( size_t N, const TYPE *x, TYPE alpha_in, TYPE *y );
31 static void setMax( size_t N, TYPE val, TYPE *x );
32 static void setMin( size_t N, TYPE val, TYPE *x );
33 static TYPE localMin( size_t N, const TYPE *x );
34 static TYPE localMax( size_t N, const TYPE *x );
35 static TYPE localSum( size_t N, const TYPE *x );
36 static TYPE localL1Norm( size_t N, const TYPE *x );
37 static TYPE localL2Norm( size_t N, const TYPE *x );
38 static TYPE localMaxNorm( size_t N, const TYPE *x );
39 static TYPE localDot( size_t N, const TYPE *x, const TYPE *y );
40 static TYPE localMinQuotient( size_t N, const TYPE *x, const TYPE *y );
41 static TYPE localWrmsNorm( size_t N, const TYPE *x, const TYPE *y );
42};
43
44
45} // namespace LinearAlgebra
46} // namespace AMP
47
48
49#endif
A default set of helper functions for vector operations.
static TYPE localMinQuotient(size_t N, const TYPE *x, const TYPE *y)
static void divide(size_t N, const TYPE *x, const TYPE *y, TYPE *z)
static TYPE localL2Norm(size_t N, const TYPE *x)
static void add(size_t N, const TYPE *x, const TYPE *y, TYPE *z)
static TYPE localSum(size_t N, const TYPE *x)
static void setRandomValues(size_t N, TYPE *x)
static TYPE localMax(size_t N, const TYPE *x)
static TYPE localMaxNorm(size_t N, const TYPE *x)
static TYPE localMin(size_t N, const TYPE *x)
static void scale(TYPE alpha, size_t N, TYPE *x)
static void scale(TYPE alpha, size_t N, const TYPE *x, TYPE *y)
static void subtract(size_t N, const TYPE *x, const TYPE *y, TYPE *z)
static TYPE localL1Norm(size_t N, const TYPE *x)
static void reciprocal(size_t N, const TYPE *x, TYPE *y)
static TYPE localWrmsNorm(size_t N, const TYPE *x, const TYPE *y)
static void linearSum(const TYPE alpha, size_t N, const TYPE *x, const TYPE beta, const TYPE *y, TYPE *z)
static void addScalar(size_t N, const TYPE *x, TYPE alpha_in, TYPE *y)
static void abs(size_t N, const TYPE *x, TYPE *z)
static TYPE localDot(size_t N, const TYPE *x, const TYPE *y)
static void setMax(size_t N, TYPE val, TYPE *x)
static void multiply(size_t N, const TYPE *x, const TYPE *y, TYPE *z)
static void setMin(size_t N, TYPE val, TYPE *x)



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:41.
Comments on this page