phdMesh Version of the Day
Functions
Simple C-Array Operations

Basic operations for compile-time fixed length arrays. More...

Functions

template<unsigned N, typename T >
void phdmesh::Copy (T *dst, const T &src)
 dst[k] = src , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::Copy (T *dst, const T *src)
 dst[k] = src[k] , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::Sum (T *dst, const T *src)
 dst[k] += src[k] , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::Sum (T *dst, const T &a, const T *src)
 dst[k] += a * src[k] , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::Prod (T *dst, const T *src)
 dst[k] *= src[k] , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::Min (T *dst, const T *src)
 dst[k] = min( dst[k] , src[k] ) , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::Max (T *dst, const T *src)
 dst[k] = max( dst[k] , src[k] ) , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::BitOr (T *dst, const T *src)
 dst[k] |= src[k] , k = 0..N-1
template<unsigned N, typename T >
void phdmesh::BitAnd (T *dst, const T *src)
 dst[k] &= src[k] , k = 0..N-1
template<unsigned N, typename T >
phdmesh::InnerProduct (const T *x, const T *y)
 return sum_k( x[k] * y[k] )
template<unsigned N, typename T >
bool phdmesh::Equal (const T *x, const T *y)
 return x[k] == y[k] , k == 0..N-1
template<unsigned N, typename T >
bool phdmesh::NotEqual (const T *x, const T *y)
 return ! ( x[k] == y[k] , k == 0..N-1 )
template<unsigned N, typename T >
bool phdmesh::Less (const T *x, const T *y)
 return x[k] < y[k] , first k such that x[k] != y[k]
template<unsigned N, typename T >
bool phdmesh::LessEqual (const T *x, const T *y)
 return x[k] <= y[k] , first k such that x[k] != y[k]
template<unsigned N, typename T >
bool phdmesh::Greater (const T *x, const T *y)
 return x[k] > y[k] , first k such that x[k] != y[k]
template<unsigned N, typename T >
bool phdmesh::GreaterEqual (const T *x, const T *y)
 return x[k] => y[k] , first k such that x[k] != y[k]

Detailed Description

Basic operations for compile-time fixed length arrays.

Author:
H. Carter Edwards <hcedwar@sandia.gov>
Date:
November 2006

Example: Sum<5>(x,y) results in x[i] += y[i] for i=0..4

 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator