MyraMath
syr2k.h
Go to the documentation of this file.
1 // ========================================================================= //
2 // This file is part of MyraMath, copyright (c) 2014-2019 by Ryan A Chilton //
3 // and distributed by MyraCore, LLC. See LICENSE.txt for license terms. //
4 // ========================================================================= //
5 
6 #ifndef MYRAMATH_DENSE_SYR2K_H
7 #define MYRAMATH_DENSE_SYR2K_H
8 
22 
23 namespace myra {
24 
25 // Forward declarations.
26 template<class Number> class Matrix;
27 template<class Number> class MatrixRange;
28 template<class Number> class CMatrixRange;
29 template<class Number> class LowerMatrix;
30 template<class Number> class LowerMatrixRange;
31 
33 MYRAMATH_EXPORT void syr2k_inplace(const MatrixRange<NumberS>& C, char uplo, const CMatrixRange<NumberS>& A, const CMatrixRange<NumberS>& B, char op='N', NumberS alpha=1, NumberS beta=0);
35 MYRAMATH_EXPORT void syr2k_inplace(const MatrixRange<NumberD>& C, char uplo, const CMatrixRange<NumberD>& A, const CMatrixRange<NumberD>& B, char op='N', NumberD alpha=1, NumberD beta=0);
36 MYRAMATH_EXPORT void syr2k_inplace(const MatrixRange<NumberC>& C, char uplo, const CMatrixRange<NumberC>& A, const CMatrixRange<NumberC>& B, char op='N', NumberC alpha=1, NumberC beta=0);
37 MYRAMATH_EXPORT void syr2k_inplace(const MatrixRange<NumberZ>& C, char uplo, const CMatrixRange<NumberZ>& A, const CMatrixRange<NumberZ>& B, char op='N', NumberZ alpha=1, NumberZ beta=0);
39 
41 MYRAMATH_EXPORT void syr2k_inplace(const LowerMatrixRange<NumberS>& C, const CMatrixRange<NumberS>& A, const CMatrixRange<NumberS>& B, char op='N', NumberS alpha=1, NumberS beta=0);
43 MYRAMATH_EXPORT void syr2k_inplace(const LowerMatrixRange<NumberD>& C, const CMatrixRange<NumberD>& A, const CMatrixRange<NumberD>& B, char op='N', NumberD alpha=1, NumberD beta=0);
44 MYRAMATH_EXPORT void syr2k_inplace(const LowerMatrixRange<NumberC>& C, const CMatrixRange<NumberC>& A, const CMatrixRange<NumberC>& B, char op='N', NumberC alpha=1, NumberC beta=0);
45 MYRAMATH_EXPORT void syr2k_inplace(const LowerMatrixRange<NumberZ>& C, const CMatrixRange<NumberZ>& A, const CMatrixRange<NumberZ>& B, char op='N', NumberZ alpha=1, NumberZ beta=0);
47 
49 MYRAMATH_EXPORT LowerMatrix<NumberS> syr2k (const CMatrixRange<NumberS>& A, const CMatrixRange<NumberS>& B, char op='N', NumberS alpha=1);
51 MYRAMATH_EXPORT LowerMatrix<NumberD> syr2k (const CMatrixRange<NumberD>& A, const CMatrixRange<NumberD>& B, char op='N', NumberD alpha=1);
52 MYRAMATH_EXPORT LowerMatrix<NumberC> syr2k (const CMatrixRange<NumberC>& A, const CMatrixRange<NumberC>& B, char op='N', NumberC alpha=1);
53 MYRAMATH_EXPORT LowerMatrix<NumberZ> syr2k (const CMatrixRange<NumberZ>& A, const CMatrixRange<NumberZ>& B, char op='N', NumberZ alpha=1);
55 
56 } // namespace
57 
58 #endif
Definition: syntax.dox:1
Various utility functions/classes related to scalar Number types.