AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
NumericArray.hpp File Reference
#include "axom/core/Macros.hpp"
#include "axom/core/utilities/Utilities.hpp"
#include "axom/slic/interface/slic.hpp"
#include <algorithm>
#include <ostream>
#include <initializer_list>
#include "axom/fmt.hpp"

Classes

struct  axom::primal::NonChar< T >
 Type trait to avoid outputting chars when a value is expected This avoids unintentionally outputting system beeps. More...
 
struct  axom::primal::NonChar< char >
 
struct  axom::primal::NonChar< unsigned char >
 
class  axom::primal::NumericArray< T, SIZE >
 A simple statically sized array of data with component-wise operators. More...
 
struct  axom::fmt::formatter< axom::primal::NumericArray< T, NDIMS > >
 Overload to format a primal::NumericArray using fmt. More...
 

Namespaces

 axom
 
 axom::primal
 

Functions

Forward Declared Overloaded Operators
template<typename T , int SIZE>
AXOM_HOST_DEVICE bool axom::primal::operator== (const NumericArray< T, SIZE > &lhs, const NumericArray< T, SIZE > &rhs)
 Checks if two numeric arrays are component-wise equal. More...
 
template<typename T , int SIZE>
bool axom::primal::operator!= (const NumericArray< T, SIZE > &lhs, const NumericArray< T, SIZE > &rhs)
 Checks if two numeric arrays are not component-wise equal. More...
 
template<typename T , int SIZE>
AXOM_HOST_DEVICE NumericArray< T, SIZE > axom::primal::operator+ (const NumericArray< T, SIZE > &lhs, const NumericArray< T, SIZE > &rhs)
 Performs component-wise addition of two numeric arrays. More...
 
template<typename T , int SIZE>
AXOM_HOST_DEVICE NumericArray< T, SIZE > axom::primal::operator- (const NumericArray< T, SIZE > &lhs, const NumericArray< T, SIZE > &rhs)
 Performs component-wise subtraction of two numeric arrays. More...
 
template<typename T , int SIZE>
NumericArray< T, SIZE > axom::primal::operator- (const NumericArray< T, SIZE > &arr)
 Unary negation of a numeric array instance. More...
 
template<typename T , int SIZE>
NumericArray< T, SIZE > axom::primal::operator* (const NumericArray< T, SIZE > &arr, double scalar)
 Scalar multiplication a numeric array; Scalar on rhs. More...
 
template<typename T , int SIZE>
NumericArray< T, SIZE > axom::primal::operator* (double scalar, const NumericArray< T, SIZE > &arr)
 Scalar multiplication a numeric array; Scalar on lhs. More...
 
template<typename T , int SIZE>
AXOM_HOST_DEVICE NumericArray< T, SIZE > axom::primal::operator* (const NumericArray< T, SIZE > &lhs, const NumericArray< T, SIZE > &rhs)
 Component-wise multiplication of NumericArrays. More...
 
template<typename T , int SIZE>
NumericArray< T, SIZE > axom::primal::operator/ (const NumericArray< T, SIZE > &lhs, const NumericArray< T, SIZE > &rhs)
 Component-wise division of NumericArrays. More...
 
template<typename T , int SIZE>
NumericArray< T, SIZE > axom::primal::operator/ (const NumericArray< T, SIZE > &arr, double scalar)
 Scalar division of NumericArray; Scalar on rhs. More...
 
template<typename T , int SIZE>
NumericArray< T, SIZE > axom::primal::abs (const NumericArray< T, SIZE > &arr)
 Coordinate-wise absolute value on the NumericArray. More...
 
template<typename T , int SIZE>
std::ostream & axom::primal::operator<< (std::ostream &os, const NumericArray< T, SIZE > &arr)
 Overloaded output operator for numeric arrays. More...