TRIQS/nda 2.0.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
elementwise.hpp
#include "./interface/cutensor_interface.hpp"
#include "./tools.hpp"
#include "../exceptions.hpp"
#include "../mem/address_space.hpp"
#include "../traits.hpp"
#include <string_view>
#include <utility>

Detailed Description

Provides a generic in-place elementwise binary tensor operation with cuTENSOR/nda dispatch.

Definition in file elementwise.hpp.

Go to the source code of this file.

Functions

template<BlasArrayOrConj A, BlasArrayFor< A > B>
void nda::tensor::elementwise (A const &a, B &&b, binary_op op=binary_op::SUM)
 Convenience overload of nda::tensor::elementwise with nda::tensor::default_index strings, \( \alpha = 1 \) and \( \beta = 0 \).
template<BlasArrayOrConj A, BlasArrayFor< A > B>
void nda::tensor::elementwise (A const &a, std::string_view idx_a, B &&b, std::string_view idx_b, binary_op op=binary_op::SUM)
 Convenience overload of nda::tensor::elementwise with \( \alpha = 1 \) and \( \beta = 0 \).
template<BlasArrayOrConj A, BlasArrayFor< A > B>
void nda::tensor::elementwise (get_value_t< A > alpha, A const &a, get_value_t< A > beta, B &&b, binary_op op=binary_op::SUM)
 Convenience overload of nda::tensor::elementwise with nda::tensor::default_index strings.
template<BlasArrayOrConj A, BlasArrayFor< A > B>
void nda::tensor::elementwise (get_value_t< A > alpha, A const &a, std::string_view idx_a, get_value_t< A > beta, B &&b, std::string_view idx_b, binary_op op=binary_op::SUM)
 In-place elementwise binary tensor operation with cuTENSOR/nda dispatch.