Advanced Multi-Physics (AMP)
On-Line Documentation
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
AMP Namespace Reference

Namespaces

namespace  applications
 
namespace  Constants
 
namespace  DelaunayHelpers
 
namespace  DelaunayTessellation
 
namespace  Discretization
 
namespace  extended
 
namespace  Geometry
 
namespace  IO
 
namespace  LinearAlgebra
 
namespace  Materials
 
namespace  MechanicsManufacturedSolution
 
namespace  Mesh
 
namespace  Operator
 
namespace  Solver
 
namespace  Thread
 
namespace  TimeIntegrator
 
namespace  unit_test
 
namespace  Utilities
 

Classes

class  AMP_MPI
 Provides C++ wrapper around MPI routines. More...
 
class  AMPManager
 Class AMPManager is a utility for managing startup and shutdown for AMP applications and for changing the maximum number of patch data components supported by AMP patches. All applications should call AMPManager::startup() at the beginning of the program. Startup will initialize all packages including MPI. AMPManager::shutdown() should be called at the end of the program, before calling exit(0). Note that the shutdown, but it shuts down the packages, MPI, and deallocates memory. More...
 
class  AMPManagerProperties
 Class AMPManagerProperties is a class that contains the various startup options for AMP. More...
 
struct  any_type
 
struct  arg_count
 
struct  arg_count< T(Args...)>
 
class  ARGB32
 Structure to store RGBA data. More...
 
class  Array
 
class  ArraySize
 Simple class to store the array dimensions. More...
 
class  AtomicList
 Maintain a sorted list of entries. More...
 
class  CudaDevAllocator
 Allocator based on cudaMalloc. More...
 
class  CudaManagedAllocator
 Allocator based on cudaMallocManaged. More...
 
class  Database
 Class to a database. More...
 
class  DatabaseBox
 Class to store a box. More...
 
class  DelaunayInterpolation
 
class  enable_shared_from_this
 Enhancement of std::enable_shared_from_this. More...
 
class  FunctionTable
 
class  GPUFunctionTable
 
struct  has_begin
 
struct  has_begin< T, decltype(void(std::begin(std::declval< T & >())))>
 
struct  has_empty
 
struct  has_empty< T, decltype(void(std::empty(std::declval< T & >())))>
 
struct  has_end
 
struct  has_end< T, decltype(void(std::end(std::declval< T & >())))>
 
struct  has_size
 Checks whether T has a size() function. More...
 
class  HipDevAllocator
 Allocator based on hipMalloc. More...
 
class  HipManagedAllocator
 Allocator based on hipMallocManaged. More...
 
struct  is_Array
 Checks whether T is an AMP::Array. More...
 
struct  is_array
 Checks whether T is a std::array. More...
 
struct  is_Array< Array< T, FunctionTable< T >, HostAllocator< T > > >
 
struct  is_Array< Array< T, FunctionTable< T >, HostAllocator< void > > >
 
struct  is_array< std::array< T, N > >
 
struct  is_braces_constructible
 
struct  is_complex
 Checks whether T is complex. More...
 
struct  is_complex< const T >
 
struct  is_complex< std::complex< T > >
 
struct  is_complex< volatile const T >
 
struct  is_complex< volatile T >
 
struct  is_initializer_list
 Checks whether T is an initializer_list. More...
 
struct  is_initializer_list< std::initializer_list< T > >
 
struct  is_pair
 
struct  is_pair< std::pair< T, U > >
 
struct  is_shared_ptr
 Checks whether T is a shared_ptr. More...
 
struct  is_shared_ptr< std::shared_ptr< T > >
 
struct  is_string
 Checks whether T is convertible to a string. More...
 
struct  is_string< char * >
 
struct  is_string< char[N]>
 
struct  is_string< std::string >
 
struct  is_string< std::string_view >
 
struct  is_unique_ptr
 Checks whether T is a unique_ptr. More...
 
struct  is_unique_ptr< std::unique_ptr< T > >
 
struct  is_vector
 Checks whether T is a std::vector. More...
 
struct  is_vector< std::vector< T > >
 
class  kdtree
 A class used to to perform kd-tree based operations. More...
 
class  kdtree2
 A class used to to perform kd-tree based operations. More...
 
class  KeyData
 Base class to hold data of a given type. More...
 
class  ManufacturedSolution
 
class  MathExpr
 A class used to evaluate math expressions. More...
 
class  MemoryPool
 Pool allocator. More...
 
class  Mutex
 Functions for locking/unlocking a mutex. More...
 
class  ParallelStreamBuffer
 
class  ParameterBase
 
class  PetscMonitor
 Provide a monitor that petsc can use instead of the default. More...
 
class  Range
 Simple range class. More...
 
class  RGBA32
 Structure to store RGBA data. More...
 
class  Scalar
 Scalar is a class used to store a scalar variable that may be different types/precision. More...
 
class  ThreadPool
 This is a concrete class that provides for a basic thread pool. More...
 
class  ThreadPoolHeapQueue
 Class to store the queue for the ThreadPool using a binary heap. More...
 
class  ThreadPoolID
 This a class to hold the work item id. More...
 
class  ThreadPoolListQueue
 Class to store the queue for the ThreadPool using an thread-safe list. More...
 
class  ThreadPoolWorkItem
 Base class for the work item (users should derive from ThreadPool::WorkItemRet) More...
 
struct  typeID
 Class to store type info. More...
 
class  Units
 Provides a class for storing units. More...
 
class  UnitTest
 Class UnitTest is simple utility for running unit tests. It provides basic routines for tracing success or failure of tests, and reporting the results. More...
 
class  Xdmf
 

Typedefs

template<typename TYPE >
using HostAllocator = std::allocator< TYPE >
 
template<typename T >
using remove_cvref_t = typename std::remove_cv_t< typename std::remove_reference_t< T > >
 
using RGB = ARGB32
 Structure to store RGB data.
 

Enumerations

enum class  UnitPrefix : int8_t {
  quecto = 0 , ronto = 1 , yocto = 2 , zepto = 3 ,
  atto = 4 , femto = 5 , pico = 6 , nano = 7 ,
  micro = 8 , milli = 9 , centi = 10 , deci = 11 ,
  none = 12 , deca = 13 , hecto = 14 , kilo = 15 ,
  mega = 16 , giga = 17 , tera = 18 , peta = 19 ,
  exa = 20 , zetta = 21 , yotta = 22 , ronna = 23 ,
  quetta = 24 , unknown = -1
}
 Enum to hold prefix. More...
 
enum class  UnitType : int8_t {
  unitless = 0 , time = 1 , length = 2 , mass = 3 ,
  current = 4 , temperature = 5 , mole = 6 , intensity = 7 ,
  angle = 8 , solidAngle = 9 , energy = 10 , power = 11 ,
  frequency = 12 , force = 13 , pressure = 14 , electricCharge = 15 ,
  electricalPotential = 16 , capacitance = 17 , resistance = 18 , electricalConductance = 19 ,
  magneticFlux = 20 , magneticFluxDensity = 21 , inductance = 22 , luminousFlux = 23 ,
  illuminance = 24 , unknown = -1
}
 Enum to hold type. More...
 

Functions

constexpr ArraySize cat (const ArraySize &x, const ArraySize &y)
 
constexpr double cross (const std::array< double, 2 > &x, const std::array< double, 2 > &y)
 
constexpr std::array< double, 3 > cross (const std::array< double, 3 > &x, const std::array< double, 3 > &y)
 
template<std::size_t N>
constexpr double dot (const std::array< double, N > &x, const std::array< double, N > &y)
 
template<int NDIM, class TYPE >
std::pair< int, int > find_min_dist (const int N, const TYPE *x)
 Function to compute the closest pair of points.
 
std::pair< int, int > find_min_dist (const std::vector< AMP::Mesh::MeshPoint< double > > &x)
 Function to compute the closest pair of points.
 
template<class TYPE >
AMP_MPI getComm (const TYPE &obj)
 Return the underlying MPI class for the object.
 
template<typename TYPE >
constexpr typeID getTypeID ()
 Get the type info (does not resolve dynamic types)
 
template<typename T0 >
constexpr typeID getTypeIDEval ()
 Get the type info (does not resolve dynamic types)
 
void lock_MPI_Mutex (AMP::Mutex &mutex, const AMP::AMP_MPI &comm)
 Function to sycronize locking a mutex across a MPI communicator.
 
void logAllNodes (const std::string &filename, bool singleStream=false)
 
void logOnlyNodeZero (const std::string &filename)
 
constexpr ArraySize multiplySize (const ArraySize &sa, const ArraySize &sb)
 
template<std::size_t N>
constexpr double norm (const std::array< double, N > &x)
 
template<std::size_t N>
constexpr std::array< double, N > normalize (const std::array< double, N > &x)
 
template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > operator* (const Array< TYPE, FUN, Allocator > &a, const Array< TYPE, FUN, Allocator > &b)
 
template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > operator* (const Array< TYPE, FUN, Allocator > &a, const std::vector< TYPE > &b)
 
template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > operator* (const Array< TYPE, FUN, Allocator > &a, const TYPE &b)
 
constexpr ArraySize operator* (const ArraySize &x, const ArraySize &y)
 
constexpr ArraySize operator* (const ArraySize &x, size_t v)
 
Scalar operator* (const Scalar &x, const Scalar &y)
 
template<std::size_t N>
constexpr std::array< double, N > operator* (const std::array< double, N > &b, double a)
 
template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > operator* (const TYPE &a, const Array< TYPE, FUN, Allocator > &b)
 
template<std::size_t N>
constexpr std::array< double, N > operator* (double a, const std::array< double, N > &b)
 
constexpr ArraySize operator* (size_t v, const ArraySize &x)
 
template<std::size_t N>
static std::string operator+ (char x[N], std::string_view y)
 
template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > operator+ (const Array< TYPE, FUN, Allocator > &a, const Array< TYPE, FUN, Allocator > &b)
 
constexpr ArraySize operator+ (const ArraySize &x, size_t v)
 
Scalar operator+ (const Scalar &x, const Scalar &y)
 
template<std::size_t N>
constexpr std::array< double, N > operator+ (const std::array< double, N > &a, double b)
 
template<std::size_t N>
constexpr std::array< double, N > operator+ (const std::array< double, N > &x, const std::array< double, N > &y)
 
constexpr ArraySize operator+ (size_t v, const ArraySize &x)
 
static std::string operator+ (std::string_view x, std::string_view y)
 
template<std::size_t N>
static std::string operator+ (std::string_view y, char x[N])
 
template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > operator- (const Array< TYPE, FUN, Allocator > &a, const Array< TYPE, FUN, Allocator > &b)
 
constexpr ArraySize operator- (const ArraySize &x, size_t v)
 
Scalar operator- (const Scalar &x)
 
Scalar operator- (const Scalar &x, const Scalar &y)
 
template<std::size_t N>
constexpr std::array< double, N > operator- (const std::array< double, N > &a)
 
template<std::size_t N>
constexpr std::array< double, N > operator- (const std::array< double, N > &a, double b)
 
template<std::size_t N>
constexpr std::array< double, N > operator- (const std::array< double, N > &x, const std::array< double, N > &y)
 
Scalar operator/ (const Scalar &x, const Scalar &y)
 
std::ostream & operator<< (std::ostream &os, const Units &unit)
 
std::ostream & operator<< (std::ostream &out, const AMP::ArraySize &s)
 
template<class TYPE >
std::ostream & operator<< (std::ostream &out, const AMP::Range< TYPE > &r)
 
std::ostream & operator<< (std::ostream &out, const DatabaseBox &)
 
template<std::size_t N>
std::ostream & operator<< (std::ostream &out, const std::array< double, N > &x)
 
template<class TYPE >
std::enable_if_t< std::is_same_v< TYPE, Scalar >, std::ostream & > operator<< (std::ostream &out, const TYPE &x)
 
bool operator== (double x, const Scalar &y)
 
void overrideCerr (std::function< void(const char *)> fun)
 
void overrideCout (std::function< void(const char *)> fun)
 
constexpr ArraySize pop (const ArraySize &x)
 
int printp (const char *format,...)
 
void registerKeyData (const std::string &name, std::function< std::unique_ptr< KeyData >()> fun)
 
constexpr ArraySize squeeze (const ArraySize &x)
 
void stopLogging ()
 
constexpr uint32_t store (uint8_t a, uint8_t b, uint8_t c, uint8_t d)
 Helper function to convert 4 uint8_t to uint32_t.
 
template<class T , typename... Args>
std::false_type test (...)
 
template<class T , typename... Args>
decltype(void(T{ std::declval< Args >()... }), std::true_type()) test (int)
 
template<class T >
auto to_tuple (T &&object) noexcept
 

Variables

template<class T >
constexpr bool arg_count_v = arg_count<T>::value
 
template<class T >
constexpr bool has_begin_v = has_begin<T>::value
 
template<class T >
constexpr bool has_empty_v = has_empty<T>::value
 
template<class T >
constexpr bool has_end_v = has_end<T>::value
 
template<class T >
constexpr bool has_size_v = has_size<T>::value
 
template<class T >
constexpr bool is_array_v = is_array<T>::value
 
template<class T >
constexpr bool is_Array_v = is_Array<T>::value
 
template<class T , typename... Args>
constexpr bool is_braces_constructible_v = is_braces_constructible<T, Args...>{}
 
template<class T >
constexpr bool is_complex_v = is_complex<T>::value
 
template<class T >
constexpr bool is_container_v = has_begin_v<T> && has_end_v<T> && has_empty_v<T>
 
template<class T >
constexpr bool is_initializer_list_v = is_initializer_list<T>::value
 
template<class T >
constexpr bool is_pair_v = is_pair<T>::value
 
template<class T1 , class T2 >
constexpr bool is_same_int_v
 Checks whether two types are both integers of the same size and sign.
 
template<class T >
constexpr bool is_shared_ptr_v = is_shared_ptr<T>::value
 
template<class T >
constexpr bool is_string_v = is_string<T>::value
 
template<class T >
constexpr bool is_unique_ptr_v = is_unique_ptr<T>::value
 
template<class T >
constexpr bool is_vector_v = is_vector<T>::value
 
std::ostream perr
 
std::ostream plog
 
std::ostream pout
 

Typedef Documentation

◆ HostAllocator

template<typename TYPE >
using AMP::HostAllocator = typedef std::allocator<TYPE>

Definition at line 69 of file Memory.h.

◆ remove_cvref_t

template<typename T >
using AMP::remove_cvref_t = typedef typename std::remove_cv_t<typename std::remove_reference_t<T> >

Definition at line 108 of file TypeTraits.h.

◆ RGB

using AMP::RGB = typedef ARGB32

Structure to store RGB data.

Definition at line 83 of file RGBA.h.

Enumeration Type Documentation

◆ UnitPrefix

enum class AMP::UnitPrefix : int8_t
strong

Enum to hold prefix.

Enumerator
quecto 
ronto 
yocto 
zepto 
atto 
femto 
pico 
nano 
micro 
milli 
centi 
deci 
none 
deca 
hecto 
kilo 
mega 
giga 
tera 
peta 
exa 
zetta 
yotta 
ronna 
quetta 
unknown 

Definition at line 15 of file Units.h.

◆ UnitType

enum class AMP::UnitType : int8_t
strong

Enum to hold type.

Enumerator
unitless 
time 
length 
mass 
current 
temperature 
mole 
intensity 
angle 
solidAngle 
energy 
power 
frequency 
force 
pressure 
electricCharge 
electricalPotential 
capacitance 
resistance 
electricalConductance 
magneticFlux 
magneticFluxDensity 
inductance 
luminousFlux 
illuminance 
unknown 

Definition at line 46 of file Units.h.

Function Documentation

◆ cat()

constexpr ArraySize AMP::cat ( const ArraySize x,
const ArraySize y 
)
constexpr

Definition at line 416 of file ArraySize.h.

References ARRAY_INSIST, AMP::ArraySize::maxDim(), and AMP::ArraySize::ndim().

◆ cross() [1/2]

constexpr double AMP::cross ( const std::array< double, 2 > &  x,
const std::array< double, 2 > &  y 
)
constexpr

Definition at line 169 of file ArrayHelpers.h.

◆ cross() [2/2]

constexpr std::array< double, 3 > AMP::cross ( const std::array< double, 3 > &  x,
const std::array< double, 3 > &  y 
)
constexpr

Definition at line 173 of file ArrayHelpers.h.

◆ dot()

template<std::size_t N>
constexpr double AMP::dot ( const std::array< double, N > &  x,
const std::array< double, N > &  y 
)
constexpr

Definition at line 154 of file ArrayHelpers.h.

Referenced by normalize().

◆ find_min_dist() [1/2]

template<int NDIM, class TYPE >
std::pair< int, int > AMP::find_min_dist ( const int  N,
const TYPE *  x 
)
inline

Function to compute the closest pair of points.

This function will calculate the closest pair of points in a list

Parameters
NThe number of points in the list
xThe coordinates of the vertices (NDIM x N)

◆ find_min_dist() [2/2]

std::pair< int, int > AMP::find_min_dist ( const std::vector< AMP::Mesh::MeshPoint< double > > &  x)

Function to compute the closest pair of points.

This function will calculate the closest pair of points in a list

Parameters
xThe coordinates of the vertices

◆ getComm()

template<class TYPE >
AMP_MPI AMP::getComm ( const TYPE &  obj)

Return the underlying MPI class for the object.

◆ getTypeID()

template<typename TYPE >
constexpr typeID AMP::getTypeID ( )
constexpr

Get the type info (does not resolve dynamic types)

Definition at line 245 of file typeid.h.

◆ getTypeIDEval()

template<typename T0 >
constexpr typeID AMP::getTypeIDEval ( )
constexpr

Get the type info (does not resolve dynamic types)

Definition at line 224 of file typeid.h.

◆ lock_MPI_Mutex()

void AMP::lock_MPI_Mutex ( AMP::Mutex mutex,
const AMP::AMP_MPI comm 
)

Function to sycronize locking a mutex across a MPI communicator.

This routine will sycronize locking the given mutex across the given MPI communicator. This routine will return only when all threads across the given MPI communicator have acquired the mutex. It is assumed that multiple threads with different communicators will attempt to lock the same mutex using this function

◆ logAllNodes()

void AMP::logAllNodes ( const std::string &  filename,
bool  singleStream = false 
)

Log messages from all nodes. The diagnostic data for processor XXXXX will be sent to a file with the name filename.XXXXX, where filename is the function argument.

◆ logOnlyNodeZero()

void AMP::logOnlyNodeZero ( const std::string &  filename)

Log messages for node zero only to the specified filename. All output to pout, perr, and plog on node zero will go to the log file.

◆ multiplySize()

constexpr ArraySize AMP::multiplySize ( const ArraySize sa,
const ArraySize sb 
)
constexpr

Definition at line 486 of file ArraySize.h.

References AMP::ArraySize::ndim().

Referenced by operator*(), and operator*().

◆ norm()

template<std::size_t N>
constexpr double AMP::norm ( const std::array< double, N > &  x)
constexpr

Definition at line 179 of file ArrayHelpers.h.

◆ normalize()

template<std::size_t N>
constexpr std::array< double, N > AMP::normalize ( const std::array< double, N > &  x)
constexpr

Definition at line 195 of file ArrayHelpers.h.

References dot().

◆ operator*() [1/10]

template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > AMP::operator* ( const Array< TYPE, FUN, Allocator > &  a,
const Array< TYPE, FUN, Allocator > &  b 
)
inline

◆ operator*() [2/10]

template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > AMP::operator* ( const Array< TYPE, FUN, Allocator > &  a,
const std::vector< TYPE > &  b 
)
inline

◆ operator*() [3/10]

template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > AMP::operator* ( const Array< TYPE, FUN, Allocator > &  a,
const TYPE &  b 
)
inline

Definition at line 922 of file Array.h.

◆ operator*() [4/10]

constexpr ArraySize AMP::operator* ( const ArraySize x,
const ArraySize y 
)
constexpr

Definition at line 462 of file ArraySize.h.

References AMP::ArraySize::ndim().

◆ operator*() [5/10]

constexpr ArraySize AMP::operator* ( const ArraySize x,
size_t  v 
)
constexpr

Definition at line 457 of file ArraySize.h.

References AMP::ArraySize::ndim().

◆ operator*() [6/10]

Scalar AMP::operator* ( const Scalar x,
const Scalar y 
)

◆ operator*() [7/10]

template<std::size_t N>
constexpr std::array< double, N > AMP::operator* ( const std::array< double, N > &  b,
double  a 
)
constexpr

Definition at line 46 of file ArrayHelpers.h.

◆ operator*() [8/10]

template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > AMP::operator* ( const TYPE &  a,
const Array< TYPE, FUN, Allocator > &  b 
)
inline

Definition at line 915 of file Array.h.

◆ operator*() [9/10]

template<std::size_t N>
constexpr std::array< double, N > AMP::operator* ( double  a,
const std::array< double, N > &  b 
)
constexpr

Definition at line 30 of file ArrayHelpers.h.

◆ operator*() [10/10]

constexpr ArraySize AMP::operator* ( size_t  v,
const ArraySize x 
)
constexpr

Definition at line 452 of file ArraySize.h.

References AMP::ArraySize::ndim().

◆ operator+() [1/9]

template<std::size_t N>
static std::string AMP::operator+ ( char  x[N],
std::string_view  y 
)
inlinestatic

Definition at line 32 of file UtilityMacros.h.

◆ operator+() [2/9]

template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > AMP::operator+ ( const Array< TYPE, FUN, Allocator > &  a,
const Array< TYPE, FUN, Allocator > &  b 
)
inline

Definition at line 881 of file Array.h.

◆ operator+() [3/9]

constexpr ArraySize AMP::operator+ ( const ArraySize x,
size_t  v 
)
constexpr

Definition at line 473 of file ArraySize.h.

References AMP::ArraySize::ndim().

◆ operator+() [4/9]

Scalar AMP::operator+ ( const Scalar x,
const Scalar y 
)

◆ operator+() [5/9]

template<std::size_t N>
constexpr std::array< double, N > AMP::operator+ ( const std::array< double, N > &  a,
double  b 
)
constexpr

Definition at line 62 of file ArrayHelpers.h.

◆ operator+() [6/9]

template<std::size_t N>
constexpr std::array< double, N > AMP::operator+ ( const std::array< double, N > &  x,
const std::array< double, N > &  y 
)
constexpr

Definition at line 115 of file ArrayHelpers.h.

◆ operator+() [7/9]

constexpr ArraySize AMP::operator+ ( size_t  v,
const ArraySize x 
)
constexpr

Definition at line 478 of file ArraySize.h.

References AMP::ArraySize::ndim().

◆ operator+() [8/9]

static std::string AMP::operator+ ( std::string_view  x,
std::string_view  y 
)
inlinestatic

Definition at line 41 of file UtilityMacros.h.

◆ operator+() [9/9]

template<std::size_t N>
static std::string AMP::operator+ ( std::string_view  y,
char  x[N] 
)
inlinestatic

Definition at line 37 of file UtilityMacros.h.

◆ operator-() [1/7]

template<class TYPE , class FUN , class Allocator >
Array< TYPE, FUN, Allocator > AMP::operator- ( const Array< TYPE, FUN, Allocator > &  a,
const Array< TYPE, FUN, Allocator > &  b 
)
inline

Definition at line 889 of file Array.h.

◆ operator-() [2/7]

constexpr ArraySize AMP::operator- ( const ArraySize x,
size_t  v 
)
constexpr

Definition at line 468 of file ArraySize.h.

References AMP::ArraySize::ndim().

◆ operator-() [3/7]

Scalar AMP::operator- ( const Scalar x)

◆ operator-() [4/7]

Scalar AMP::operator- ( const Scalar x,
const Scalar y 
)

◆ operator-() [5/7]

template<std::size_t N>
constexpr std::array< double, N > AMP::operator- ( const std::array< double, N > &  a)
constexpr

Definition at line 94 of file ArrayHelpers.h.

◆ operator-() [6/7]

template<std::size_t N>
constexpr std::array< double, N > AMP::operator- ( const std::array< double, N > &  a,
double  b 
)
constexpr

Definition at line 78 of file ArrayHelpers.h.

◆ operator-() [7/7]

template<std::size_t N>
constexpr std::array< double, N > AMP::operator- ( const std::array< double, N > &  x,
const std::array< double, N > &  y 
)
constexpr

Definition at line 132 of file ArrayHelpers.h.

◆ operator/()

Scalar AMP::operator/ ( const Scalar x,
const Scalar y 
)

◆ operator<<() [1/6]

std::ostream & AMP::operator<< ( std::ostream &  os,
const Units unit 
)
inline

Definition at line 262 of file Units.h.

References AMP::Units::str().

◆ operator<<() [2/6]

std::ostream & AMP::operator<< ( std::ostream &  out,
const AMP::ArraySize s 
)
inline

Definition at line 861 of file Array.h.

References AMP::ArraySize::ndim().

◆ operator<<() [3/6]

template<class TYPE >
std::ostream & AMP::operator<< ( std::ostream &  out,
const AMP::Range< TYPE > &  r 
)
inline

Definition at line 870 of file Array.h.

References AMP::Range< TYPE >::i, AMP::Range< TYPE >::j, and AMP::Range< TYPE >::k.

◆ operator<<() [4/6]

std::ostream & AMP::operator<< ( std::ostream &  out,
const DatabaseBox  
)

◆ operator<<() [5/6]

template<std::size_t N>
std::ostream & AMP::operator<< ( std::ostream &  out,
const std::array< double, N > &  x 
)
inline

Definition at line 16 of file ArrayHelpers.h.

◆ operator<<() [6/6]

template<class TYPE >
std::enable_if_t< std::is_same_v< TYPE, Scalar >, std::ostream & > AMP::operator<< ( std::ostream &  out,
const TYPE &  x 
)

Definition at line 170 of file Scalar.h.

◆ operator==()

bool AMP::operator== ( double  x,
const Scalar y 
)
inline

Definition at line 170 of file Scalar.h.

◆ overrideCerr()

void AMP::overrideCerr ( std::function< void(const char *)>  fun)

Redirect the error stream to a user defined function

◆ overrideCout()

void AMP::overrideCout ( std::function< void(const char *)>  fun)

Redirect the output stream to a user defined function

◆ pop()

constexpr ArraySize AMP::pop ( const ArraySize x)
constexpr

Definition at line 430 of file ArraySize.h.

References AMP::ArraySize::ndim().

◆ printp()

int AMP::printp ( const char *  format,
  ... 
)
inline

Parallel output printp pout writes to the standard output from node zero only. Output from other nodes is ignored. If logging is enabled, then output is mirrored to the log stream, as well. The format matches the format for printf

Definition at line 120 of file PIO.h.

References pout.

◆ registerKeyData()

void AMP::registerKeyData ( const std::string &  name,
std::function< std::unique_ptr< KeyData >()>  fun 
)

◆ squeeze()

constexpr ArraySize AMP::squeeze ( const ArraySize x)
constexpr

Definition at line 439 of file ArraySize.h.

References AMP::ArraySize::maxDim().

◆ stopLogging()

void AMP::stopLogging ( )

Stop logging messages, flush buffers, and reset memory.

◆ store()

constexpr uint32_t AMP::store ( uint8_t  a,
uint8_t  b,
uint8_t  c,
uint8_t  d 
)
constexpr

Helper function to convert 4 uint8_t to uint32_t.

Definition at line 14 of file RGBA.h.

◆ test() [1/2]

template<class T , typename... Args>
std::false_type AMP::test (   ...)

◆ test() [2/2]

template<class T , typename... Args>
decltype(void(T{ std::declval< Args >()... }), std::true_type()) AMP::test ( int  )

◆ to_tuple()

template<class T >
auto AMP::to_tuple ( T &&  object)
noexcept

Definition at line 47 of file to_tuple.h.

References AMP_ERROR, and AMP_TO_TUPLE_BLOCK.

Variable Documentation

◆ arg_count_v

template<class T >
constexpr bool AMP::arg_count_v = arg_count<T>::value
constexpr

Definition at line 114 of file TypeTraits.h.

◆ has_begin_v

template<class T >
constexpr bool AMP::has_begin_v = has_begin<T>::value
constexpr

Definition at line 95 of file TypeTraits.h.

◆ has_empty_v

template<class T >
constexpr bool AMP::has_empty_v = has_empty<T>::value
constexpr

Definition at line 97 of file TypeTraits.h.

◆ has_end_v

template<class T >
constexpr bool AMP::has_end_v = has_end<T>::value
constexpr

Definition at line 96 of file TypeTraits.h.

◆ has_size_v

template<class T >
constexpr bool AMP::has_size_v = has_size<T>::value
constexpr

Definition at line 94 of file TypeTraits.h.

◆ is_array_v

template<class T >
constexpr bool AMP::is_array_v = is_array<T>::value
constexpr

Definition at line 90 of file TypeTraits.h.

◆ is_Array_v

template<class T >
constexpr bool AMP::is_Array_v = is_Array<T>::value
constexpr

Definition at line 91 of file TypeTraits.h.

◆ is_braces_constructible_v

template<class T , typename... Args>
constexpr bool AMP::is_braces_constructible_v = is_braces_constructible<T, Args...>{}
inlineconstexpr

Definition at line 28 of file to_tuple.h.

◆ is_complex_v

template<class T >
constexpr bool AMP::is_complex_v = is_complex<T>::value
constexpr

Definition at line 100 of file TypeTraits.h.

◆ is_container_v

template<class T >
constexpr bool AMP::is_container_v = has_begin_v<T> && has_end_v<T> && has_empty_v<T>
constexpr

Definition at line 98 of file TypeTraits.h.

◆ is_initializer_list_v

template<class T >
constexpr bool AMP::is_initializer_list_v = is_initializer_list<T>::value
constexpr

Definition at line 99 of file TypeTraits.h.

◆ is_pair_v

template<class T >
constexpr bool AMP::is_pair_v = is_pair<T>::value
constexpr

Definition at line 92 of file TypeTraits.h.

◆ is_same_int_v

template<class T1 , class T2 >
constexpr bool AMP::is_same_int_v
constexpr
Initial value:
=
std::is_integral_v<T1> && std::is_integral_v<T2> &&
( std::is_signed_v<T1> == std::is_signed_v<T2> ) && ( sizeof( T1 ) == sizeof( T2 ) )

Checks whether two types are both integers of the same size and sign.

Definition at line 103 of file TypeTraits.h.

◆ is_shared_ptr_v

template<class T >
constexpr bool AMP::is_shared_ptr_v = is_shared_ptr<T>::value
constexpr

Definition at line 87 of file TypeTraits.h.

◆ is_string_v

template<class T >
constexpr bool AMP::is_string_v = is_string<T>::value
constexpr

Definition at line 93 of file TypeTraits.h.

◆ is_unique_ptr_v

template<class T >
constexpr bool AMP::is_unique_ptr_v = is_unique_ptr<T>::value
constexpr

Definition at line 88 of file TypeTraits.h.

◆ is_vector_v

template<class T >
constexpr bool AMP::is_vector_v = is_vector<T>::value
constexpr

Definition at line 89 of file TypeTraits.h.

◆ perr

std::ostream AMP::perr
extern

Parallel output stream perr writes to the standard error from all nodes. Output is prepended with the processor number.

Definition at line 20 of file UtilityMacros.h.

◆ plog

std::ostream AMP::plog
extern

Parallel output stream plog writes output to the log file. When logging from multiple processors, the processor number is appended to the filename.

Definition at line 21 of file UtilityMacros.h.

◆ pout

std::ostream AMP::pout
extern

Parallel output stream pout writes to the standard output from node zero only. Output from other nodes is ignored. If logging is enabled, then output is mirrored to the log stream, as well.

Definition at line 19 of file UtilityMacros.h.

Referenced by AMP::LinearAlgebra::CSRConfig< Alloc, LocalInd, GlobalInd, Scalar >::print(), and printp().



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