Collection of Concrete Vector Reduction/Transformation Operator Implementations  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
RTOpPack_ROpDotProd.hpp
1 // @HEADER
2 // *****************************************************************************
3 // RTOp: Interfaces and Support Software for Vector Reduction Transformation
4 // Operations
5 //
6 // Copyright 2006 NTESS and the RTOp contributors.
7 // SPDX-License-Identifier: BSD-3-Clause
8 // *****************************************************************************
9 // @HEADER
10 
11 #ifndef RTOPPACK_ROP_DOT_PROD_HPP
12 #define RTOPPACK_ROP_DOT_PROD_HPP
13 
14 
15 #include "RTOpPack_RTOpTHelpers.hpp"
16 
17 namespace RTOpPack {
18 
19 
20 RTOP_ROP_2_REDUCT_SCALAR( ROpDotProd,
21  Scalar, // Reduction object type
22  REDUCT_TYPE_SUM // Reduction object reduction operator type
23  )
24 {
25  reduct += ScalarTraits<Scalar>::conjugate(v0)*(v1);
26 }
27 
28 
29 } // namespace RTOpPack
30 
31 
32 #endif // RTOPPACK_ROP_DOT_PROD_HPP