TRIQS/nda 2.0.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
elementwise_trinary.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 trinary tensor operation with cuTENSOR/nda dispatch.

Definition in file elementwise_trinary.hpp.

Go to the source code of this file.

Functions

template<BlasArrayOrConj A, BlasArrayOrConjFor< A > B, BlasArrayFor< A > C>
void nda::tensor::elementwise_trinary (A const &a, std::string_view idx_a, B const &b, std::string_view idx_b, C &&c, std::string_view idx_c, binary_op op_AB=binary_op::SUM, binary_op op_ABC=binary_op::SUM)
 Convenience overload of nda::tensor::elementwise_trinary with \( \alpha = \beta = 1 \) and \( \gamma = 0 \).
template<BlasArrayOrConj A, BlasArrayOrConjFor< A > B, BlasArrayFor< A > C>
void nda::tensor::elementwise_trinary (get_value_t< A > alpha, A const &a, std::string_view idx_a, get_value_t< A > beta, B const &b, std::string_view idx_b, get_value_t< A > gamma, C &&c, std::string_view idx_c, binary_op op_AB=binary_op::SUM, binary_op op_ABC=binary_op::SUM)
 In-place elementwise trinary tensor operation with cuTENSOR/nda dispatch.