TRIQS/nda 1.3.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
dot.hpp
#include "../blas/dot.hpp"
#include "../concepts.hpp"
#include "../macros.hpp"
#include "../mem/address_space.hpp"
#include "../traits.hpp"
#include <complex>
#include <cstddef>

Detailed Description

Provides a generic dot product.

Definition in file dot.hpp.

Go to the source code of this file.

Functions

template<typename X, typename Y>
requires ((Scalar<X> and Scalar<Y>) or (Vector<X> and Vector<Y>))
auto nda::linalg::dot (X const &x, Y const &y)
 Compute the dot product of two nda::vector objects or the product of two scalars.
template<bool star = false, Vector X, Vector Y>
requires (Scalar<get_value_t<X>> and Scalar<get_value_t<Y>> and mem::have_host_compatible_addr_space<X, Y>)
auto nda::linalg::dot_generic (X const &x, Y const &y)
 Generic loop-based dot product implementation for vectors.
template<typename X, typename Y>
requires ((Scalar<X> and Scalar<Y>) or (Vector<X> and Vector<Y>))
auto nda::linalg::dotc (X const &x, Y const &y)
 Compute the dotc (LHS operand is conjugated) product of two nda::vector objects or the product of two scalars.