monolish
0.14.0
MONOlithic LIner equation Solvers for Highly-parallel architecture
include
blas
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
#if defined USE_MPI
6
#include <mpi.h>
7
#endif
8
9
namespace
monolish
{
15
namespace
blas {
16
27
void
copy
(
const
matrix::Dense<double>
&A,
matrix::Dense<double>
&C);
28
void
copy
(
const
matrix::Dense<float>
&A,
matrix::Dense<float>
&C);
29
40
void
copy
(
const
matrix::LinearOperator<double>
&A,
41
matrix::LinearOperator<double>
&C);
42
void
copy
(
const
matrix::LinearOperator<float>
&A,
43
matrix::LinearOperator<float>
&C);
44
57
void
copy
(
const
matrix::CRS<double>
&A,
matrix::CRS<double>
&C);
58
void
copy
(
const
matrix::CRS<float>
&A,
matrix::CRS<float>
&C);
59
70
void
mscal
(
const
double
alpha,
matrix::Dense<double>
&A);
71
void
mscal
(
const
float
alpha,
matrix::Dense<float>
&A);
72
83
void
mscal
(
const
double
alpha,
matrix::CRS<double>
&A);
84
void
mscal
(
const
float
alpha,
matrix::CRS<float>
&A);
85
97
void
matadd
(
const
matrix::Dense<double>
&A,
const
matrix::Dense<double>
&B,
98
matrix::Dense<double>
&C);
99
void
matadd
(
const
matrix::Dense<float>
&A,
const
matrix::Dense<float>
&B,
100
matrix::Dense<float>
&C);
101
112
void
matadd
(
const
matrix::LinearOperator<double>
&A,
113
const
matrix::LinearOperator<double>
&B,
114
matrix::LinearOperator<double>
&C);
115
void
matadd
(
const
matrix::LinearOperator<float>
&A,
116
const
matrix::LinearOperator<float>
&B,
117
matrix::LinearOperator<float>
&C);
118
133
void
matadd
(
const
matrix::CRS<double>
&A,
const
matrix::CRS<double>
&B,
134
matrix::CRS<double>
&C);
135
void
matadd
(
const
matrix::CRS<float>
&A,
const
matrix::CRS<float>
&B,
136
matrix::CRS<float>
&C);
137
149
void
matsub
(
const
matrix::Dense<double>
&A,
const
matrix::Dense<double>
&B,
150
matrix::Dense<double>
&C);
151
void
matsub
(
const
matrix::Dense<float>
&A,
const
matrix::Dense<float>
&B,
152
matrix::Dense<float>
&C);
153
164
void
matsub
(
const
matrix::LinearOperator<double>
&A,
165
const
matrix::LinearOperator<double>
&B,
166
matrix::LinearOperator<double>
&C);
167
void
matsub
(
const
matrix::LinearOperator<float>
&A,
168
const
matrix::LinearOperator<float>
&B,
169
matrix::LinearOperator<float>
&C);
170
185
void
matsub
(
const
matrix::CRS<double>
&A,
const
matrix::CRS<double>
&B,
186
matrix::CRS<double>
&C);
187
void
matsub
(
const
matrix::CRS<float>
&A,
const
matrix::CRS<float>
&B,
188
matrix::CRS<float>
&C);
189
201
void
matmul
(
const
matrix::Dense<double>
&A,
const
matrix::Dense<double>
&B,
202
matrix::Dense<double>
&C);
203
void
matmul
(
const
matrix::Dense<float>
&A,
const
matrix::Dense<float>
&B,
204
matrix::Dense<float>
&C);
205
216
void
matmul
(
const
matrix::LinearOperator<double>
&A,
217
const
matrix::LinearOperator<double>
&B,
218
matrix::LinearOperator<double>
&C);
219
void
matmul
(
const
matrix::LinearOperator<float>
&A,
220
const
matrix::LinearOperator<float>
&B,
221
matrix::LinearOperator<float>
&C);
222
234
void
matmul
(
const
matrix::CRS<double>
&A,
const
matrix::Dense<double>
&B,
235
matrix::Dense<double>
&C);
236
void
matmul
(
const
matrix::CRS<float>
&A,
const
matrix::Dense<float>
&B,
237
matrix::Dense<float>
&C);
238
239
}
// namespace blas
240
}
// namespace monolish
monolish::matrix::LinearOperator
Linear Operator imitating Matrix.
Definition:
monolish_coo.hpp:30
monolish::matrix::Dense
Dense format Matrix.
Definition:
monolish_coo.hpp:28
monolish::blas::mscal
void mscal(const double alpha, matrix::Dense< double > &A)
Densematrix scal: A = alpha * A.
Definition:
dense_scal.cpp:20
monolish::blas::copy
void copy(const matrix::Dense< double > &A, matrix::Dense< double > &C)
Dense matrix copy (C=A)
Definition:
dense_copy.cpp:25
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.
Definition:
dense_mataddsub.cpp:46
monolish
Definition:
monolish_matrix_blas.hpp:9
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.
Definition:
dense_mataddsub.cpp:42
monolish::blas::matmul
void matmul(const matrix::Dense< double > &A, const matrix::Dense< double > &B, matrix::Dense< double > &C)
Dense matrix multiplication: C = AB.
Definition:
dense-dense_matmul.cpp:7
monolish::matrix::CRS
Compressed Row Storage (CRS) format Matrix.
Definition:
monolish_coo.hpp:29
Generated by
1.8.17