monolish  0.16.2
MONOlithic LInear equation Solvers for Highly-parallel architecture
monolish_matrix_blas.hpp
Go to the documentation of this file.
1 // this code is generated by gen_matrix_blas.sh
2 #pragma once
3 #include "../common/monolish_common.hpp"
4 
5 namespace monolish {
11 namespace blas {
12 
94 void mscal(const double alpha, matrix::Dense<double> &A);
95 void mscal(const float alpha, matrix::Dense<float> &A);
113 void mscal(const double alpha, matrix::CRS<double> &A);
114 void mscal(const float alpha, matrix::CRS<float> &A);
133 void times(const double alpha, const matrix::Dense<double> &A,
135 void times(const float alpha, const matrix::Dense<float> &A,
157 void times(const double alpha, const matrix::CRS<double> &A,
159 void times(const float alpha, const matrix::CRS<float> &A,
160  matrix::CRS<float> &C);
229  matrix::CRS<float> &C);
299  matrix::CRS<float> &C);
411 } // namespace blas
412 } // namespace monolish
Compressed Row Storage (CRS) format Matrix.
Dense format Matrix.
Linear Operator imitating Matrix.
void matadd(const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
Dense matrix addition: C = A + B.
void copy(const matrix::Dense< double > &A, matrix::Dense< double > &C)
Dense matrix copy (C=A)
void matmul(const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
Dense matrix multiplication: C = AB.
void mscal(const double alpha, matrix::Dense< double > &A)
Dense matrix scal: A = alpha * A.
void matsub(const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
Dense matrix subtract: C = A - B.
void rmatmul(const matrix::LinearOperator< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
LinearOperator multiplication: C = A^H B.
void times(const double alpha, const matrix::Dense< double > &A, matrix::Dense< double > &C)
Dense matrix times: C = alpha * A.
monolish namespaces