monolish
0.14.0
MONOlithic LIner equation Solvers for Highly-parallel architecture
src
blas
matrix
matvec
matvec_blas.cpp
Go to the documentation of this file.
1
// this code is generated by gen_matvec_blas.sh
2
#include "../../../../include/monolish_blas.hpp"
3
#include "../../../internal/monolish_internal.hpp"
4
#include "
crs_matvec.hpp
"
5
#include "
dense_matvec.hpp
"
6
#include "
linearoperator_matvec.hpp
"
7
8
namespace
monolish
{
9
namespace
blas {
10
11
void
matvec
(
const
matrix::Dense<double>
&A,
const
vector<double>
&x,
12
vector<double>
&y) {
13
Dmatvec_core(A, x, y);
14
}
15
void
matvec
(
const
matrix::Dense<double>
&A,
const
vector<double>
&x,
16
view1D
<
vector<double>
,
double
> &y) {
17
Dmatvec_core(A, x, y);
18
}
19
void
matvec
(
const
matrix::Dense<double>
&A,
const
vector<double>
&x,
20
view1D
<
matrix::Dense<double>
,
double
> &y) {
21
Dmatvec_core(A, x, y);
22
}
23
void
matvec
(
const
matrix::Dense<double>
&A,
24
const
view1D
<
vector<double>
,
double
> &x,
vector<double>
&y) {
25
Dmatvec_core(A, x, y);
26
}
27
void
matvec
(
const
matrix::Dense<double>
&A,
28
const
view1D
<
vector<double>
,
double
> &x,
29
view1D
<
vector<double>
,
double
> &y) {
30
Dmatvec_core(A, x, y);
31
}
32
void
matvec
(
const
matrix::Dense<double>
&A,
33
const
view1D
<
vector<double>
,
double
> &x,
34
view1D
<
matrix::Dense<double>
,
double
> &y) {
35
Dmatvec_core(A, x, y);
36
}
37
void
matvec
(
const
matrix::Dense<double>
&A,
38
const
view1D
<
matrix::Dense<double>
,
double
> &x,
vector<double>
&y) {
39
Dmatvec_core(A, x, y);
40
}
41
void
matvec
(
const
matrix::Dense<double>
&A,
42
const
view1D
<
matrix::Dense<double>
,
double
> &x,
43
view1D
<
vector<double>
,
double
> &y) {
44
Dmatvec_core(A, x, y);
45
}
46
void
matvec
(
const
matrix::Dense<double>
&A,
47
const
view1D
<
matrix::Dense<double>
,
double
> &x,
48
view1D
<
matrix::Dense<double>
,
double
> &y) {
49
Dmatvec_core(A, x, y);
50
}
51
void
matvec
(
const
matrix::Dense<float>
&A,
const
vector<float>
&x,
52
vector<float>
&y) {
53
Smatvec_core(A, x, y);
54
}
55
void
matvec
(
const
matrix::Dense<float>
&A,
const
vector<float>
&x,
56
view1D
<
vector<float>
,
float
> &y) {
57
Smatvec_core(A, x, y);
58
}
59
void
matvec
(
const
matrix::Dense<float>
&A,
const
vector<float>
&x,
60
view1D
<
matrix::Dense<float>
,
float
> &y) {
61
Smatvec_core(A, x, y);
62
}
63
void
matvec
(
const
matrix::Dense<float>
&A,
64
const
view1D
<
vector<float>
,
float
> &x,
vector<float>
&y) {
65
Smatvec_core(A, x, y);
66
}
67
void
matvec
(
const
matrix::Dense<float>
&A,
68
const
view1D
<
vector<float>
,
float
> &x,
69
view1D
<
vector<float>
,
float
> &y) {
70
Smatvec_core(A, x, y);
71
}
72
void
matvec
(
const
matrix::Dense<float>
&A,
73
const
view1D
<
vector<float>
,
float
> &x,
74
view1D
<
matrix::Dense<float>
,
float
> &y) {
75
Smatvec_core(A, x, y);
76
}
77
void
matvec
(
const
matrix::Dense<float>
&A,
78
const
view1D
<
matrix::Dense<float>
,
float
> &x,
vector<float>
&y) {
79
Smatvec_core(A, x, y);
80
}
81
void
matvec
(
const
matrix::Dense<float>
&A,
82
const
view1D
<
matrix::Dense<float>
,
float
> &x,
83
view1D
<
vector<float>
,
float
> &y) {
84
Smatvec_core(A, x, y);
85
}
86
void
matvec
(
const
matrix::Dense<float>
&A,
87
const
view1D
<
matrix::Dense<float>
,
float
> &x,
88
view1D
<
matrix::Dense<float>
,
float
> &y) {
89
Smatvec_core(A, x, y);
90
}
91
92
void
matvec
(
const
matrix::CRS<double>
&A,
const
vector<double>
&x,
93
vector<double>
&y) {
94
Dmatvec_core(A, x, y);
95
}
96
void
matvec
(
const
matrix::CRS<double>
&A,
const
vector<double>
&x,
97
view1D
<
vector<double>
,
double
> &y) {
98
Dmatvec_core(A, x, y);
99
}
100
void
matvec
(
const
matrix::CRS<double>
&A,
const
vector<double>
&x,
101
view1D
<
matrix::Dense<double>
,
double
> &y) {
102
Dmatvec_core(A, x, y);
103
}
104
void
matvec
(
const
matrix::CRS<double>
&A,
105
const
view1D
<
vector<double>
,
double
> &x,
vector<double>
&y) {
106
Dmatvec_core(A, x, y);
107
}
108
void
matvec
(
const
matrix::CRS<double>
&A,
109
const
view1D
<
vector<double>
,
double
> &x,
110
view1D
<
vector<double>
,
double
> &y) {
111
Dmatvec_core(A, x, y);
112
}
113
void
matvec
(
const
matrix::CRS<double>
&A,
114
const
view1D
<
vector<double>
,
double
> &x,
115
view1D
<
matrix::Dense<double>
,
double
> &y) {
116
Dmatvec_core(A, x, y);
117
}
118
void
matvec
(
const
matrix::CRS<double>
&A,
119
const
view1D
<
matrix::Dense<double>
,
double
> &x,
vector<double>
&y) {
120
Dmatvec_core(A, x, y);
121
}
122
void
matvec
(
const
matrix::CRS<double>
&A,
123
const
view1D
<
matrix::Dense<double>
,
double
> &x,
124
view1D
<
vector<double>
,
double
> &y) {
125
Dmatvec_core(A, x, y);
126
}
127
void
matvec
(
const
matrix::CRS<double>
&A,
128
const
view1D
<
matrix::Dense<double>
,
double
> &x,
129
view1D
<
matrix::Dense<double>
,
double
> &y) {
130
Dmatvec_core(A, x, y);
131
}
132
void
matvec
(
const
matrix::CRS<float>
&A,
const
vector<float>
&x,
133
vector<float>
&y) {
134
Smatvec_core(A, x, y);
135
}
136
void
matvec
(
const
matrix::CRS<float>
&A,
const
vector<float>
&x,
137
view1D
<
vector<float>
,
float
> &y) {
138
Smatvec_core(A, x, y);
139
}
140
void
matvec
(
const
matrix::CRS<float>
&A,
const
vector<float>
&x,
141
view1D
<
matrix::Dense<float>
,
float
> &y) {
142
Smatvec_core(A, x, y);
143
}
144
void
matvec
(
const
matrix::CRS<float>
&A,
const
view1D
<
vector<float>
,
float
> &x,
145
vector<float>
&y) {
146
Smatvec_core(A, x, y);
147
}
148
void
matvec
(
const
matrix::CRS<float>
&A,
const
view1D
<
vector<float>
,
float
> &x,
149
view1D
<
vector<float>
,
float
> &y) {
150
Smatvec_core(A, x, y);
151
}
152
void
matvec
(
const
matrix::CRS<float>
&A,
const
view1D
<
vector<float>
,
float
> &x,
153
view1D
<
matrix::Dense<float>
,
float
> &y) {
154
Smatvec_core(A, x, y);
155
}
156
void
matvec
(
const
matrix::CRS<float>
&A,
157
const
view1D
<
matrix::Dense<float>
,
float
> &x,
vector<float>
&y) {
158
Smatvec_core(A, x, y);
159
}
160
void
matvec
(
const
matrix::CRS<float>
&A,
161
const
view1D
<
matrix::Dense<float>
,
float
> &x,
162
view1D
<
vector<float>
,
float
> &y) {
163
Smatvec_core(A, x, y);
164
}
165
void
matvec
(
const
matrix::CRS<float>
&A,
166
const
view1D
<
matrix::Dense<float>
,
float
> &x,
167
view1D
<
matrix::Dense<float>
,
float
> &y) {
168
Smatvec_core(A, x, y);
169
}
170
171
void
matvec
(
const
matrix::LinearOperator<double>
&A,
const
vector<double>
&x,
172
vector<double>
&y) {
173
matvec_core(A, x, y);
174
}
175
void
matvec
(
const
matrix::LinearOperator<double>
&A,
const
vector<double>
&x,
176
view1D
<
vector<double>
,
double
> &y) {
177
matvec_core(A, x, y);
178
}
179
void
matvec
(
const
matrix::LinearOperator<double>
&A,
const
vector<double>
&x,
180
view1D
<
matrix::Dense<double>
,
double
> &y) {
181
matvec_core(A, x, y);
182
}
183
void
matvec
(
const
matrix::LinearOperator<double>
&A,
184
const
view1D
<
vector<double>
,
double
> &x,
vector<double>
&y) {
185
matvec_core(A, x, y);
186
}
187
void
matvec
(
const
matrix::LinearOperator<double>
&A,
188
const
view1D
<
vector<double>
,
double
> &x,
189
view1D
<
vector<double>
,
double
> &y) {
190
matvec_core(A, x, y);
191
}
192
void
matvec
(
const
matrix::LinearOperator<double>
&A,
193
const
view1D
<
vector<double>
,
double
> &x,
194
view1D
<
matrix::Dense<double>
,
double
> &y) {
195
matvec_core(A, x, y);
196
}
197
void
matvec
(
const
matrix::LinearOperator<double>
&A,
198
const
view1D
<
matrix::Dense<double>
,
double
> &x,
vector<double>
&y) {
199
matvec_core(A, x, y);
200
}
201
void
matvec
(
const
matrix::LinearOperator<double>
&A,
202
const
view1D
<
matrix::Dense<double>
,
double
> &x,
203
view1D
<
vector<double>
,
double
> &y) {
204
matvec_core(A, x, y);
205
}
206
void
matvec
(
const
matrix::LinearOperator<double>
&A,
207
const
view1D
<
matrix::Dense<double>
,
double
> &x,
208
view1D
<
matrix::Dense<double>
,
double
> &y) {
209
matvec_core(A, x, y);
210
}
211
void
matvec
(
const
matrix::LinearOperator<float>
&A,
const
vector<float>
&x,
212
vector<float>
&y) {
213
matvec_core(A, x, y);
214
}
215
void
matvec
(
const
matrix::LinearOperator<float>
&A,
const
vector<float>
&x,
216
view1D
<
vector<float>
,
float
> &y) {
217
matvec_core(A, x, y);
218
}
219
void
matvec
(
const
matrix::LinearOperator<float>
&A,
const
vector<float>
&x,
220
view1D
<
matrix::Dense<float>
,
float
> &y) {
221
matvec_core(A, x, y);
222
}
223
void
matvec
(
const
matrix::LinearOperator<float>
&A,
224
const
view1D
<
vector<float>
,
float
> &x,
vector<float>
&y) {
225
matvec_core(A, x, y);
226
}
227
void
matvec
(
const
matrix::LinearOperator<float>
&A,
228
const
view1D
<
vector<float>
,
float
> &x,
229
view1D
<
vector<float>
,
float
> &y) {
230
matvec_core(A, x, y);
231
}
232
void
matvec
(
const
matrix::LinearOperator<float>
&A,
233
const
view1D
<
vector<float>
,
float
> &x,
234
view1D
<
matrix::Dense<float>
,
float
> &y) {
235
matvec_core(A, x, y);
236
}
237
void
matvec
(
const
matrix::LinearOperator<float>
&A,
238
const
view1D
<
matrix::Dense<float>
,
float
> &x,
vector<float>
&y) {
239
matvec_core(A, x, y);
240
}
241
void
matvec
(
const
matrix::LinearOperator<float>
&A,
242
const
view1D
<
matrix::Dense<float>
,
float
> &x,
243
view1D
<
vector<float>
,
float
> &y) {
244
matvec_core(A, x, y);
245
}
246
void
matvec
(
const
matrix::LinearOperator<float>
&A,
247
const
view1D
<
matrix::Dense<float>
,
float
> &x,
248
view1D
<
matrix::Dense<float>
,
float
> &y) {
249
matvec_core(A, x, y);
250
}
251
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
const
vector<double>
&x,
252
vector<double>
&y) {
253
rmatvec_core(A, x, y);
254
}
255
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
const
vector<double>
&x,
256
view1D
<
vector<double>
,
double
> &y) {
257
rmatvec_core(A, x, y);
258
}
259
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
const
vector<double>
&x,
260
view1D
<
matrix::Dense<double>
,
double
> &y) {
261
rmatvec_core(A, x, y);
262
}
263
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
264
const
view1D
<
vector<double>
,
double
> &x,
vector<double>
&y) {
265
rmatvec_core(A, x, y);
266
}
267
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
268
const
view1D
<
vector<double>
,
double
> &x,
269
view1D
<
vector<double>
,
double
> &y) {
270
rmatvec_core(A, x, y);
271
}
272
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
273
const
view1D
<
vector<double>
,
double
> &x,
274
view1D
<
matrix::Dense<double>
,
double
> &y) {
275
rmatvec_core(A, x, y);
276
}
277
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
278
const
view1D
<
matrix::Dense<double>
,
double
> &x,
279
vector<double>
&y) {
280
rmatvec_core(A, x, y);
281
}
282
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
283
const
view1D
<
matrix::Dense<double>
,
double
> &x,
284
view1D
<
vector<double>
,
double
> &y) {
285
rmatvec_core(A, x, y);
286
}
287
void
rmatvec
(
const
matrix::LinearOperator<double>
&A,
288
const
view1D
<
matrix::Dense<double>
,
double
> &x,
289
view1D
<
matrix::Dense<double>
,
double
> &y) {
290
rmatvec_core(A, x, y);
291
}
292
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
const
vector<float>
&x,
293
vector<float>
&y) {
294
rmatvec_core(A, x, y);
295
}
296
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
const
vector<float>
&x,
297
view1D
<
vector<float>
,
float
> &y) {
298
rmatvec_core(A, x, y);
299
}
300
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
const
vector<float>
&x,
301
view1D
<
matrix::Dense<float>
,
float
> &y) {
302
rmatvec_core(A, x, y);
303
}
304
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
305
const
view1D
<
vector<float>
,
float
> &x,
vector<float>
&y) {
306
rmatvec_core(A, x, y);
307
}
308
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
309
const
view1D
<
vector<float>
,
float
> &x,
310
view1D
<
vector<float>
,
float
> &y) {
311
rmatvec_core(A, x, y);
312
}
313
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
314
const
view1D
<
vector<float>
,
float
> &x,
315
view1D
<
matrix::Dense<float>
,
float
> &y) {
316
rmatvec_core(A, x, y);
317
}
318
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
319
const
view1D
<
matrix::Dense<float>
,
float
> &x,
vector<float>
&y) {
320
rmatvec_core(A, x, y);
321
}
322
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
323
const
view1D
<
matrix::Dense<float>
,
float
> &x,
324
view1D
<
vector<float>
,
float
> &y) {
325
rmatvec_core(A, x, y);
326
}
327
void
rmatvec
(
const
matrix::LinearOperator<float>
&A,
328
const
view1D
<
matrix::Dense<float>
,
float
> &x,
329
view1D
<
matrix::Dense<float>
,
float
> &y) {
330
rmatvec_core(A, x, y);
331
}
332
333
}
// namespace blas
334
}
// namespace monolish
monolish::matrix::LinearOperator
Linear Operator imitating Matrix.
Definition:
monolish_coo.hpp:30
monolish::blas::rmatvec
void rmatvec(const matrix::LinearOperator< double > &A, const vector< double > &x, vector< double > &y)
matrix (LinearOperator) and vector multiplication: y = Ax
Definition:
matvec_blas.cpp:251
monolish::matrix::Dense
Dense format Matrix.
Definition:
monolish_coo.hpp:28
linearoperator_matvec.hpp
dense_matvec.hpp
monolish
Definition:
monolish_matrix_blas.hpp:9
monolish::blas::matvec
void matvec(const matrix::Dense< double > &A, const vector< double > &x, vector< double > &y)
Dense matrix and vector multiplication: y = Ax.
Definition:
matvec_blas.cpp:11
monolish::view1D
1D view class
Definition:
monolish_coo.hpp:26
monolish::vector
vector class
Definition:
monolish_coo.hpp:25
crs_matvec.hpp
monolish::matrix::CRS
Compressed Row Storage (CRS) format Matrix.
Definition:
monolish_coo.hpp:29
Generated by
1.8.17