|
TRIQS/nda 1.3.0
Multi-dimensional array library for C++
|
#include "./basic_functions.hpp"#include "./concepts.hpp"#include "./layout/for_each.hpp"#include "./layout/range.hpp"#include "./macros.hpp"#include "./map.hpp"#include "./traits.hpp"#include <algorithm>#include <array>#include <cmath>#include <cstdlib>#include <functional>#include <type_traits>#include <utility>#include <vector>Provides various algorithms to be used with nda::Array objects.
Definition in file algorithms.hpp.
Go to the source code of this file.
Functions | |
| template<Array A> | |
| bool | nda::all (A const &a) |
| Do all elements of the array evaluate to true? | |
| template<Array A> | |
| bool | nda::any (A const &a) |
| Does any of the elements of the array evaluate to true? | |
| template<Array A, typename F> | |
| auto | nda::fold (F f, A const &a) |
| The same as nda::fold, except that the initial value is a default constructed value type of the array. | |
| template<Array A, typename F, typename R> | |
| auto | nda::fold (F f, A const &a, R r) |
| Perform a fold operation on the given nda::Array object. | |
| template<ArrayOfRank< 2 > A> | |
| double | nda::frobenius_norm (A const &a) |
| Calculate the Frobenius norm of a 2-dimensional array. | |
| template<Array A, Array B> requires (nda::get_rank<A> == nda::get_rank<B>) | |
| constexpr auto | nda::hadamard (A &&a, B &&b) |
| Hadamard product of two nda::Array objects. | |
| constexpr auto | nda::hadamard (nda::Scalar auto a, nda::Scalar auto b) |
| Hadamard product of two arithmetic types. | |
| template<typename T, typename U, size_t R> | |
| constexpr auto | nda::hadamard (std::array< T, R > const &a, std::array< U, R > const &b) |
| Hadamard product of two std::array objects. | |
| template<typename T, typename U> | |
| constexpr auto | nda::hadamard (std::vector< T > const &a, std::vector< U > const &b) |
| Hadamard product of two std::vector objects. | |
| template<Array A> | |
| auto | nda::max_element (A const &a) |
| Find the maximum element of an array. | |
| template<Array A> | |
| auto | nda::min_element (A const &a) |
| Find the minimum element of an array. | |
| template<Array A, typename Value = get_value_t<A>> requires (nda::Scalar<Value> or nda::Array<Value>) | |
| auto | nda::product (A const &a) |
| Multiply all the elements of an nda::Array object. | |
| template<Array A, typename Value = get_value_t<A>> requires (nda::Scalar<Value> or nda::Array<Value>) | |
| auto | nda::sum (A const &a) |
| Sum all the elements of an nda::Array object. | |