1 #include <gsl/gsl_test.h>
2 #include <gsl/gsl_ieee_utils.h>
3 #include <gsl/gsl_math.h>
4 #include <gsl/gsl_cblas.h>
10 const double flteps = 1e-4, dbleps = 1e-6;
19 float A[] = { -0.805f };
20 float X[] = { -0.965f };
22 float Y[] = { 0.537f };
24 float y_expected[] = { 0.615725f };
25 cblas_sgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
28 for (i = 0; i < 1; i++) {
29 gsl_test_rel(Y[i], y_expected[i], flteps, "sgemv(case 774)");
43 float A[] = { -0.805f };
44 float X[] = { -0.965f };
46 float Y[] = { 0.537f };
48 float y_expected[] = { 0.615725f };
49 cblas_sgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
52 for (i = 0; i < 1; i++) {
53 gsl_test_rel(Y[i], y_expected[i], flteps, "sgemv(case 775)");
67 float A[] = { -0.805f };
68 float X[] = { -0.965f };
70 float Y[] = { 0.537f };
72 float y_expected[] = { 0.776825f };
73 cblas_sgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
76 for (i = 0; i < 1; i++) {
77 gsl_test_rel(Y[i], y_expected[i], flteps, "sgemv(case 776)");
91 float A[] = { -0.805f };
92 float X[] = { -0.965f };
94 float Y[] = { 0.537f };
96 float y_expected[] = { 0.776825f };
97 cblas_sgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
100 for (i = 0; i < 1; i++) {
101 gsl_test_rel(Y[i], y_expected[i], flteps, "sgemv(case 777)");
115 double A[] = { -0.047 };
116 double X[] = { 0.672 };
118 double Y[] = { 0.554 };
120 double y_expected[] = { -0.5445248 };
121 cblas_dgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
124 for (i = 0; i < 1; i++) {
125 gsl_test_rel(Y[i], y_expected[i], dbleps, "dgemv(case 778)");
139 double A[] = { -0.047 };
140 double X[] = { 0.672 };
142 double Y[] = { 0.554 };
144 double y_expected[] = { -0.5445248 };
145 cblas_dgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
148 for (i = 0; i < 1; i++) {
149 gsl_test_rel(Y[i], y_expected[i], dbleps, "dgemv(case 779)");
163 double A[] = { -0.047 };
164 double X[] = { 0.672 };
166 double Y[] = { 0.554 };
168 double y_expected[] = { 0.585584 };
169 cblas_dgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
172 for (i = 0; i < 1; i++) {
173 gsl_test_rel(Y[i], y_expected[i], dbleps, "dgemv(case 780)");
187 double A[] = { -0.047 };
188 double X[] = { 0.672 };
190 double Y[] = { 0.554 };
192 double y_expected[] = { 0.585584 };
193 cblas_dgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
196 for (i = 0; i < 1; i++) {
197 gsl_test_rel(Y[i], y_expected[i], dbleps, "dgemv(case 781)");
209 float alpha[2] = {0.0f, 0.1f};
210 float beta[2] = {0.0f, 1.0f};
211 float A[] = { 0.629f, 0.801f };
212 float X[] = { 0.778f, -0.073f };
214 float Y[] = { -0.976f, -0.682f };
216 float y_expected[] = { 0.624274f, -0.921216f };
217 cblas_cgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
220 for (i = 0; i < 1; i++) {
221 gsl_test_rel(Y[2*i], y_expected[2*i], flteps, "cgemv(case 782) real");
222 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], flteps, "cgemv(case 782) imag");
234 float alpha[2] = {0.0f, 0.1f};
235 float beta[2] = {0.0f, 1.0f};
236 float A[] = { 0.629f, 0.801f };
237 float X[] = { 0.778f, -0.073f };
239 float Y[] = { -0.976f, -0.682f };
241 float y_expected[] = { 0.624274f, -0.921216f };
242 cblas_cgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
245 for (i = 0; i < 1; i++) {
246 gsl_test_rel(Y[2*i], y_expected[2*i], flteps, "cgemv(case 783) real");
247 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], flteps, "cgemv(case 783) imag");
259 float alpha[2] = {0.0f, 1.0f};
260 float beta[2] = {-0.3f, 0.1f};
261 float A[] = { 0.629f, 0.801f };
262 float X[] = { 0.778f, -0.073f };
264 float Y[] = { -0.976f, -0.682f };
266 float y_expected[] = { -0.216261f, 0.654835f };
267 cblas_cgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
270 for (i = 0; i < 1; i++) {
271 gsl_test_rel(Y[2*i], y_expected[2*i], flteps, "cgemv(case 784) real");
272 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], flteps, "cgemv(case 784) imag");
284 float alpha[2] = {0.0f, 1.0f};
285 float beta[2] = {-0.3f, 0.1f};
286 float A[] = { 0.629f, 0.801f };
287 float X[] = { 0.778f, -0.073f };
289 float Y[] = { -0.976f, -0.682f };
291 float y_expected[] = { -0.216261f, 0.654835f };
292 cblas_cgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
295 for (i = 0; i < 1; i++) {
296 gsl_test_rel(Y[2*i], y_expected[2*i], flteps, "cgemv(case 785) real");
297 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], flteps, "cgemv(case 785) imag");
309 float alpha[2] = {0.0f, 0.1f};
310 float beta[2] = {-0.3f, 0.1f};
311 float A[] = { 0.629f, 0.801f };
312 float X[] = { 0.778f, -0.073f };
314 float Y[] = { -0.976f, -0.682f };
316 float y_expected[] = { 0.427909f, 0.150089f };
317 cblas_cgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
320 for (i = 0; i < 1; i++) {
321 gsl_test_rel(Y[2*i], y_expected[2*i], flteps, "cgemv(case 786) real");
322 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], flteps, "cgemv(case 786) imag");
334 float alpha[2] = {0.0f, 0.1f};
335 float beta[2] = {-0.3f, 0.1f};
336 float A[] = { 0.629f, 0.801f };
337 float X[] = { 0.778f, -0.073f };
339 float Y[] = { -0.976f, -0.682f };
341 float y_expected[] = { 0.427909f, 0.150089f };
342 cblas_cgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
345 for (i = 0; i < 1; i++) {
346 gsl_test_rel(Y[2*i], y_expected[2*i], flteps, "cgemv(case 787) real");
347 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], flteps, "cgemv(case 787) imag");
359 double alpha[2] = {0, 0.1};
360 double beta[2] = {1, 0};
361 double A[] = { 0.932, -0.724 };
362 double X[] = { 0.334, -0.317 };
364 double Y[] = { 0.348, 0.07 };
366 double y_expected[] = { 0.401726, 0.078178 };
367 cblas_zgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
370 for (i = 0; i < 1; i++) {
371 gsl_test_rel(Y[2*i], y_expected[2*i], dbleps, "zgemv(case 788) real");
372 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], dbleps, "zgemv(case 788) imag");
384 double alpha[2] = {0, 0.1};
385 double beta[2] = {1, 0};
386 double A[] = { 0.932, -0.724 };
387 double X[] = { 0.334, -0.317 };
389 double Y[] = { 0.348, 0.07 };
391 double y_expected[] = { 0.401726, 0.078178 };
392 cblas_zgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
395 for (i = 0; i < 1; i++) {
396 gsl_test_rel(Y[2*i], y_expected[2*i], dbleps, "zgemv(case 789) real");
397 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], dbleps, "zgemv(case 789) imag");
409 double alpha[2] = {-0.3, 0.1};
410 double beta[2] = {0, 1};
411 double A[] = { 0.932, -0.724 };
412 double X[] = { 0.334, -0.317 };
414 double Y[] = { 0.348, 0.07 };
416 double y_expected[] = { -0.040808, 0.517356 };
417 cblas_zgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
420 for (i = 0; i < 1; i++) {
421 gsl_test_rel(Y[2*i], y_expected[2*i], dbleps, "zgemv(case 790) real");
422 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], dbleps, "zgemv(case 790) imag");
434 double alpha[2] = {-0.3, 0.1};
435 double beta[2] = {0, 1};
436 double A[] = { 0.932, -0.724 };
437 double X[] = { 0.334, -0.317 };
439 double Y[] = { 0.348, 0.07 };
441 double y_expected[] = { -0.040808, 0.517356 };
442 cblas_zgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
445 for (i = 0; i < 1; i++) {
446 gsl_test_rel(Y[2*i], y_expected[2*i], dbleps, "zgemv(case 791) real");
447 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], dbleps, "zgemv(case 791) imag");
459 double alpha[2] = {1, 0};
460 double beta[2] = {0, 0};
461 double A[] = { 0.932, -0.724 };
462 double X[] = { 0.334, -0.317 };
464 double Y[] = { 0.348, 0.07 };
466 double y_expected[] = { 0.540796, -0.053628 };
467 cblas_zgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
470 for (i = 0; i < 1; i++) {
471 gsl_test_rel(Y[2*i], y_expected[2*i], dbleps, "zgemv(case 792) real");
472 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], dbleps, "zgemv(case 792) imag");
484 double alpha[2] = {1, 0};
485 double beta[2] = {0, 0};
486 double A[] = { 0.932, -0.724 };
487 double X[] = { 0.334, -0.317 };
489 double Y[] = { 0.348, 0.07 };
491 double y_expected[] = { 0.540796, -0.053628 };
492 cblas_zgemv(order, trans, M, N, alpha, A, lda, X, incX, beta, Y, incY);
495 for (i = 0; i < 1; i++) {
496 gsl_test_rel(Y[2*i], y_expected[2*i], dbleps, "zgemv(case 793) real");
497 gsl_test_rel(Y[2*i+1], y_expected[2*i+1], dbleps, "zgemv(case 793) imag");