TRIQS/nda 1.3.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
arithmetic.hpp File Reference
#include "./concepts.hpp"
#include "./declarations.hpp"
#include "./linalg/matmul.hpp"
#include "./linalg/det_and_inverse.hpp"
#include "./macros.hpp"
#include "./stdutil/complex.hpp"
#include "./traits.hpp"
#include <functional>
#include <type_traits>
#include <utility>

Detailed Description

Provides lazy expressions for nda::Array types.

Definition in file arithmetic.hpp.

Go to the source code of this file.

Classes

struct  nda::expr< OP, L, R >
 Lazy binary expression for nda::ArrayOrScalar types. More...
 
struct  nda::expr_unary< OP, A >
 Lazy unary expression for nda::Array types. More...
 

Functions

template<Array A, Scalar S>
Array auto nda::operator* (A &&a, S &&s)
 Multiplication operator for an nda::Array and an nda::Scalar.
 
template<Array L, Array R>
auto nda::operator* (L &&l, R &&r)
 Multiplication operator for two nda::Array types.
 
template<Scalar S, Array A>
Array auto nda::operator* (S &&s, A &&a)
 Multiplication operator for an nda::Scalar and an nda::Array.
 
template<Array A, Scalar S>
Array auto nda::operator+ (A &&a, S &&s)
 Addition operator for an nda::Array and an nda::Scalar.
 
template<Array L, Array R>
Array auto nda::operator+ (L &&l, R &&r)
 Addition operator for two nda::Array types.
 
template<Scalar S, Array A>
Array auto nda::operator+ (S &&s, A &&a)
 Addition operator for an nda::Scalar and an nda::Array.
 
template<Array A>
expr_unary<'-', A > nda::operator- (A &&a)
 Unary minus operator for nda::Array types.
 
template<Array A, Scalar S>
Array auto nda::operator- (A &&a, S &&s)
 Subtraction operator for an nda::Array and an nda::Scalar.
 
template<Array L, Array R>
Array auto nda::operator- (L &&l, R &&r)
 Subtraction operator for two nda::Array types.
 
template<Scalar S, Array A>
Array auto nda::operator- (S &&s, A &&a)
 Subtraction operator for an nda::Scalar and an nda::Array.
 
template<Array A, Scalar S>
Array auto nda::operator/ (A &&a, S &&s)
 Division operator for an nda::Array and an nda::Scalar.
 
template<Array L, Array R>
Array auto nda::operator/ (L &&l, R &&r)
 Division operator for two nda::Array types.
 
template<Scalar S, Array A>
Array auto nda::operator/ (S &&s, A &&a)
 Division operator for an nda::Scalar and an nda::Array.