monolish  0.16.0
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 
55 void copy(const matrix::CRS<float> &A, matrix::CRS<float> &C);
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 matadd(const matrix::Dense<double> &A, const matrix::Dense<double> &B,
135 void matadd(const matrix::Dense<float> &A, const matrix::Dense<float> &B,
180 void matadd(const matrix::CRS<double> &A, const matrix::CRS<double> &B,
182 void matadd(const matrix::CRS<float> &A, const matrix::CRS<float> &B,
183  matrix::CRS<float> &C);
202 void matsub(const matrix::Dense<double> &A, const matrix::Dense<double> &B,
204 void matsub(const matrix::Dense<float> &A, const matrix::Dense<float> &B,
250 void matsub(const matrix::CRS<double> &A, const matrix::CRS<double> &B,
252 void matsub(const matrix::CRS<float> &A, const matrix::CRS<float> &B,
253  matrix::CRS<float> &C);
272 void matmul(const matrix::Dense<double> &A, const matrix::Dense<double> &B,
274 void matmul(const matrix::Dense<float> &A, const matrix::Dense<float> &B,
294 void matmul(const matrix::CRS<double> &A, const matrix::Dense<double> &B,
296 void matmul(const matrix::CRS<float> &A, const matrix::Dense<float> &B,
365 } // namespace blas
366 } // namespace monolish
monolish::matrix::LinearOperator
Linear Operator imitating Matrix.
Definition: monolish_coo.hpp:30
monolish::blas::mscal
void mscal(const double alpha, matrix::Dense< double > &A)
Dense matrix scal: A = alpha * A.
monolish::matrix::Dense
Dense format Matrix.
Definition: monolish_coo.hpp:28
monolish::blas::matsub
void matsub(const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
Dense matrix subtract: C = A - B.
monolish
monolish namespaces
Definition: monolish_matrix_blas.hpp:5
monolish::blas::copy
void copy(const matrix::Dense< double > &A, matrix::Dense< double > &C)
Dense matrix copy (C=A)
monolish::blas::matmul
void matmul(const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
Dense matrix multiplication: C = AB.
monolish::matrix::CRS
Compressed Row Storage (CRS) format Matrix.
Definition: monolish_coo.hpp:29
monolish::blas::rmatmul
void rmatmul(const matrix::LinearOperator< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
LinearOperator multiplication: C = A^H B.
monolish::blas::matadd
void matadd(const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
Dense matrix addition: C = A + B.