6 #ifndef MYRAMATH_PDENSE_PSYMM_H 7 #define MYRAMATH_PDENSE_PSYMM_H 14 #include <myramath/MYRAMATH_EXPORT.h> 24 template<
class Number>
class Matrix;
25 template<
class Number>
class MatrixRange;
26 template<
class Number>
class CMatrixRange;
27 template<
class Number>
class CLowerMatrixRange;
30 MYRAMATH_EXPORT
void psymm_inplace(
char side,
char uplo,
const MatrixRange<NumberS>& C,
const CMatrixRange<NumberS>& A,
const CMatrixRange<NumberS>& B, NumberS alpha, NumberS beta, pdense::Options options =
pdense::Options::create());
32 MYRAMATH_EXPORT
void psymm_inplace(
char side,
char uplo,
const MatrixRange<NumberD>& C,
const CMatrixRange<NumberD>& A,
const CMatrixRange<NumberD>& B, NumberD alpha, NumberD beta, pdense::Options options =
pdense::Options::create());
33 MYRAMATH_EXPORT
void psymm_inplace(
char side,
char uplo,
const MatrixRange<NumberC>& C,
const CMatrixRange<NumberC>& A,
const CMatrixRange<NumberC>& B, NumberC alpha, NumberC beta, pdense::Options options =
pdense::Options::create());
34 MYRAMATH_EXPORT
void psymm_inplace(
char side,
char uplo,
const MatrixRange<NumberZ>& C,
const CMatrixRange<NumberZ>& A,
const CMatrixRange<NumberZ>& B, NumberZ alpha, NumberZ beta, pdense::Options options =
pdense::Options::create());
38 MYRAMATH_EXPORT Matrix<NumberS> psymm(
char side,
char uplo,
const CMatrixRange<NumberS>& A,
const CMatrixRange<NumberS>& B, NumberS alpha = 1, pdense::Options options =
pdense::Options::create());
40 MYRAMATH_EXPORT Matrix<NumberD> psymm(
char side,
char uplo,
const CMatrixRange<NumberD>& A,
const CMatrixRange<NumberD>& B, NumberD alpha = 1, pdense::Options options =
pdense::Options::create());
41 MYRAMATH_EXPORT Matrix<NumberC> psymm(
char side,
char uplo,
const CMatrixRange<NumberC>& A,
const CMatrixRange<NumberC>& B, NumberC alpha = 1, pdense::Options options =
pdense::Options::create());
42 MYRAMATH_EXPORT Matrix<NumberZ> psymm(
char side,
char uplo,
const CMatrixRange<NumberZ>& A,
const CMatrixRange<NumberZ>& B, NumberZ alpha = 1, pdense::Options options =
pdense::Options::create());
46 MYRAMATH_EXPORT
void psymm_inplace(
char side,
const MatrixRange<NumberS>& C,
const CLowerMatrixRange<NumberS>& A,
const CMatrixRange<NumberS>& B, NumberS alpha, NumberS beta, pdense::Options options =
pdense::Options::create());
48 MYRAMATH_EXPORT
void psymm_inplace(
char side,
const MatrixRange<NumberD>& C,
const CLowerMatrixRange<NumberD>& A,
const CMatrixRange<NumberD>& B, NumberD alpha, NumberD beta, pdense::Options options =
pdense::Options::create());
49 MYRAMATH_EXPORT
void psymm_inplace(
char side,
const MatrixRange<NumberC>& C,
const CLowerMatrixRange<NumberC>& A,
const CMatrixRange<NumberC>& B, NumberC alpha, NumberC beta, pdense::Options options =
pdense::Options::create());
50 MYRAMATH_EXPORT
void psymm_inplace(
char side,
const MatrixRange<NumberZ>& C,
const CLowerMatrixRange<NumberZ>& A,
const CMatrixRange<NumberZ>& B, NumberZ alpha, NumberZ beta, pdense::Options options =
pdense::Options::create());
54 MYRAMATH_EXPORT Matrix<NumberS> psymm(
char side,
const CLowerMatrixRange<NumberS>& A,
const CMatrixRange<NumberS>& B, NumberS alpha = 1, pdense::Options options =
pdense::Options::create());
56 MYRAMATH_EXPORT Matrix<NumberD> psymm(
char side,
const CLowerMatrixRange<NumberD>& A,
const CMatrixRange<NumberD>& B, NumberD alpha = 1, pdense::Options options =
pdense::Options::create());
57 MYRAMATH_EXPORT Matrix<NumberC> psymm(
char side,
const CLowerMatrixRange<NumberC>& A,
const CMatrixRange<NumberC>& B, NumberC alpha = 1, pdense::Options options =
pdense::Options::create());
58 MYRAMATH_EXPORT Matrix<NumberZ> psymm(
char side,
const CLowerMatrixRange<NumberZ>& A,
const CMatrixRange<NumberZ>& B, NumberZ alpha = 1, pdense::Options options =
pdense::Options::create());
62 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
char uplo,
const MatrixRange<NumberS>& C,
const CMatrixRange<NumberS>& A,
const CMatrixRange<NumberS>& B, NumberS alpha, NumberS beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
64 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
char uplo,
const MatrixRange<NumberD>& C,
const CMatrixRange<NumberD>& A,
const CMatrixRange<NumberD>& B, NumberD alpha, NumberD beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
65 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
char uplo,
const MatrixRange<NumberC>& C,
const CMatrixRange<NumberC>& A,
const CMatrixRange<NumberC>& B, NumberC alpha, NumberC beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
66 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
char uplo,
const MatrixRange<NumberZ>& C,
const CMatrixRange<NumberZ>& A,
const CMatrixRange<NumberZ>& B, NumberZ alpha, NumberZ beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
70 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
const MatrixRange<NumberS>& C,
const CLowerMatrixRange<NumberS>& A,
const CMatrixRange<NumberS>& B, NumberS alpha, NumberS beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
72 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
const MatrixRange<NumberD>& C,
const CLowerMatrixRange<NumberD>& A,
const CMatrixRange<NumberD>& B, NumberD alpha, NumberD beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
73 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
const MatrixRange<NumberC>& C,
const CLowerMatrixRange<NumberC>& A,
const CMatrixRange<NumberC>& B, NumberC alpha, NumberC beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
74 MYRAMATH_EXPORT JobGraph psymm_jobgraph(
char side,
const MatrixRange<NumberZ>& C,
const CLowerMatrixRange<NumberZ>& A,
const CMatrixRange<NumberZ>& B, NumberZ alpha, NumberZ beta,
char dir =
'F', pdense::Options options =
pdense::Options::create());
static Options create()
Named constructor idiom, creates default options.
Definition: Options.h:44
Abstraction for representing a directed acyclic graph of Job's.
Various utility functions/classes related to scalar Number types.
Options pack for routines in /pdense.