Blaze 3.9
dotc.h
Go to the documentation of this file.
1//=================================================================================================
33//=================================================================================================
34
35#ifndef _BLAZE_MATH_BLAS_DOTC_H_
36#define _BLAZE_MATH_BLAS_DOTC_H_
37
38
39//*************************************************************************************************
40// Includes
41//*************************************************************************************************
42
43#include <blaze/math/Aliases.h>
49#include <blaze/system/BLAS.h>
50#include <blaze/system/Inline.h>
52#include <blaze/util/Assert.h>
53#include <blaze/util/Complex.h>
56
57
58namespace blaze {
59
60//=================================================================================================
61//
62// BLAS DOT PRODUCT (DOTC)
63//
64//=================================================================================================
65
66//*************************************************************************************************
69template< typename VT1, bool TF1, typename VT2, bool TF2 >
70ElementType_t<VT1> dotc( const DenseVector<VT1,TF1>& x, const DenseVector<VT2,TF2>& y );
72//*************************************************************************************************
73
74
75//*************************************************************************************************
92template< typename VT1, bool TF1, typename VT2, bool TF2 >
94{
97
100
103
104 const blas_int_t n( numeric_cast<blas_int_t>( (*x).size() ) );
105
106 return dotc( n, (*x).data(), 1, (*y).data(), 1 );
107}
108//*************************************************************************************************
109
110} // namespace blaze
111
112#endif
Header file for auxiliary alias declarations.
typename T::ElementType ElementType_t
Alias declaration for nested ElementType type definitions.
Definition: Aliases.h:190
Header file for run time assertion macros.
Constraint on the data type.
Header file for the complex data type.
Constraint on the data type.
Deactivation of problematic macros.
Cast operators for numeric types.
Compile time assertion.
Header file for the CBLAS dotc wrapper functions.
Base class for N-dimensional dense vectors.
Definition: DenseVector.h:77
Constraint on the data type.
Header file for the DenseVector base class.
ElementType_t< VT1 > dotc(const DenseVector< VT1, TF1 > &x, const DenseVector< VT2, TF2 > &y)
BLAS kernel for a dense vector complex conjugate dot product ( ).
Definition: dotc.h:93
#define BLAZE_CONSTRAINT_MUST_BE_BLAS_COMPATIBLE_TYPE(T)
Constraint on the data type.
Definition: BLASCompatible.h:61
#define BLAZE_CONSTRAINT_MUST_NOT_BE_COMPUTATION_TYPE(T)
Constraint on the data type.
Definition: Computation.h:81
#define BLAZE_CONSTRAINT_MUST_HAVE_CONST_DATA_ACCESS(T)
Constraint on the data type.
Definition: ConstDataAccess.h:61
int32_t blas_int_t
Signed integer type used in the BLAS/LAPACK wrapper functions.
Definition: Types.h:64
System settings for the BLAS mode.
System settings for the inline keywords.