monolish  0.14.0
MONOlithic LIner equation Solvers for Highly-parallel architecture
monolish_linearoperator_vml.hpp
Go to the documentation of this file.
1 // this code is generated by gen_linearoperator_vml.sh
2 #pragma once
3 
4 #include "../common/monolish_common.hpp"
5 #if defined USE_MPI
6 #include <mpi.h>
7 #endif
8 
9 namespace monolish {
14 namespace vml {
15 
27 void add(const matrix::LinearOperator<double> &A,
28  const matrix::LinearOperator<double> &B,
29  matrix::LinearOperator<double> &C);
30 void add(const matrix::LinearOperator<float> &A,
31  const matrix::LinearOperator<float> &B,
32  matrix::LinearOperator<float> &C);
33 
45 void sub(const matrix::LinearOperator<double> &A,
46  const matrix::LinearOperator<double> &B,
47  matrix::LinearOperator<double> &C);
48 void sub(const matrix::LinearOperator<float> &A,
49  const matrix::LinearOperator<float> &B,
50  matrix::LinearOperator<float> &C);
51 
63 void add(const matrix::LinearOperator<double> &A, const double &alpha,
64  matrix::LinearOperator<double> &C);
65 void add(const matrix::LinearOperator<float> &A, const float &alpha,
66  matrix::LinearOperator<float> &C);
67 
79 void sub(const matrix::LinearOperator<double> &A, const double &alpha,
80  matrix::LinearOperator<double> &C);
81 void sub(const matrix::LinearOperator<float> &A, const float &alpha,
82  matrix::LinearOperator<float> &C);
83 
95 void mul(const matrix::LinearOperator<double> &A, const double &alpha,
96  matrix::LinearOperator<double> &C);
97 void mul(const matrix::LinearOperator<float> &A, const float &alpha,
98  matrix::LinearOperator<float> &C);
99 
111 void div(const matrix::LinearOperator<double> &A, const double &alpha,
112  matrix::LinearOperator<double> &C);
113 void div(const matrix::LinearOperator<float> &A, const float &alpha,
114  matrix::LinearOperator<float> &C);
115 
116 } // namespace vml
117 } // namespace monolish
monolish::vml::sub
void sub(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element subtract CRS matrix A and CRS matrix B.
Definition: matrix_vml.cpp:228
monolish
Definition: monolish_matrix_blas.hpp:9
monolish::vml::div
void div(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element division CRS matrix A and CRS matrix B.
Definition: matrix_vml.cpp:244
monolish::vml::add
void add(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element addition CRS matrix A and CRS matrix B.
Definition: matrix_vml.cpp:220
monolish::vml::mul
void mul(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element multiplication CRS matrix A and CRS matrix B.
Definition: matrix_vml.cpp:236