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;
14 float X[] = { 0.651f };
16 float expected[] = { 0.651f };
17 cblas_sscal(N, alpha, X, incX);
20 for (i = 0; i < 1; i++) {
21 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 112)");
30 float X[] = { 0.651f };
32 float expected[] = { 0.651f };
33 cblas_sscal(N, alpha, X, incX);
36 for (i = 0; i < 1; i++) {
37 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 113)");
46 float X[] = { 0.651f };
48 float expected[] = { 0.651f };
49 cblas_sscal(N, alpha, X, incX);
52 for (i = 0; i < 1; i++) {
53 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 114)");
62 double X[] = { 0.686 };
64 double expected[] = { 0.686 };
65 cblas_dscal(N, alpha, X, incX);
68 for (i = 0; i < 1; i++) {
69 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 115)");
78 double X[] = { 0.686 };
80 double expected[] = { 0.686 };
81 cblas_dscal(N, alpha, X, incX);
84 for (i = 0; i < 1; i++) {
85 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 116)");
94 double X[] = { 0.686 };
96 double expected[] = { 0.686 };
97 cblas_dscal(N, alpha, X, incX);
100 for (i = 0; i < 1; i++) {
101 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 117)");
109 float alpha[2] = {0.0f, 0.0f};
110 float X[] = { 0.986f, -0.775f };
112 float expected[] = { 0.986f, -0.775f };
113 cblas_cscal(N, alpha, X, incX);
116 for (i = 0; i < 1; i++) {
117 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 118) real");
118 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 118) imag");
126 float alpha[2] = {0.1f, 0.0f};
127 float X[] = { 0.986f, -0.775f };
129 float expected[] = { 0.986f, -0.775f };
130 cblas_cscal(N, alpha, X, incX);
133 for (i = 0; i < 1; i++) {
134 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 119) real");
135 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 119) imag");
143 float alpha[2] = {1.0f, 0.0f};
144 float X[] = { 0.986f, -0.775f };
146 float expected[] = { 0.986f, -0.775f };
147 cblas_cscal(N, alpha, X, incX);
150 for (i = 0; i < 1; i++) {
151 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 120) real");
152 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 120) imag");
160 float alpha[2] = {0.0f, 0.1f};
161 float X[] = { 0.986f, -0.775f };
163 float expected[] = { 0.986f, -0.775f };
164 cblas_cscal(N, alpha, X, incX);
167 for (i = 0; i < 1; i++) {
168 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 121) real");
169 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 121) imag");
177 float alpha[2] = {0.1f, 0.2f};
178 float X[] = { 0.986f, -0.775f };
180 float expected[] = { 0.986f, -0.775f };
181 cblas_cscal(N, alpha, X, incX);
184 for (i = 0; i < 1; i++) {
185 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 122) real");
186 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 122) imag");
194 float alpha[2] = {1.0f, 0.3f};
195 float X[] = { 0.986f, -0.775f };
197 float expected[] = { 0.986f, -0.775f };
198 cblas_cscal(N, alpha, X, incX);
201 for (i = 0; i < 1; i++) {
202 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 123) real");
203 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 123) imag");
211 double alpha[2] = {0, 0};
212 double X[] = { 0.454, -0.478 };
214 double expected[] = { 0.454, -0.478 };
215 cblas_zscal(N, alpha, X, incX);
218 for (i = 0; i < 1; i++) {
219 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 124) real");
220 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 124) imag");
228 double alpha[2] = {0.1, 0};
229 double X[] = { 0.454, -0.478 };
231 double expected[] = { 0.454, -0.478 };
232 cblas_zscal(N, alpha, X, incX);
235 for (i = 0; i < 1; i++) {
236 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 125) real");
237 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 125) imag");
245 double alpha[2] = {1, 0};
246 double X[] = { 0.454, -0.478 };
248 double expected[] = { 0.454, -0.478 };
249 cblas_zscal(N, alpha, X, incX);
252 for (i = 0; i < 1; i++) {
253 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 126) real");
254 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 126) imag");
262 double alpha[2] = {0, 0.1};
263 double X[] = { 0.454, -0.478 };
265 double expected[] = { 0.454, -0.478 };
266 cblas_zscal(N, alpha, X, incX);
269 for (i = 0; i < 1; i++) {
270 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 127) real");
271 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 127) imag");
279 double alpha[2] = {0.1, 0.2};
280 double X[] = { 0.454, -0.478 };
282 double expected[] = { 0.454, -0.478 };
283 cblas_zscal(N, alpha, X, incX);
286 for (i = 0; i < 1; i++) {
287 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 128) real");
288 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 128) imag");
296 double alpha[2] = {1, 0.3};
297 double X[] = { 0.454, -0.478 };
299 double expected[] = { 0.454, -0.478 };
300 cblas_zscal(N, alpha, X, incX);
303 for (i = 0; i < 1; i++) {
304 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 129) real");
305 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 129) imag");
314 float X[] = { 0.389f, -0.236f };
316 float expected[] = { 0.0f, -0.0f };
317 cblas_sscal(N, alpha, X, incX);
320 for (i = 0; i < 2; i++) {
321 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 130)");
330 float X[] = { 0.389f, -0.236f };
332 float expected[] = { 0.0389f, -0.0236f };
333 cblas_sscal(N, alpha, X, incX);
336 for (i = 0; i < 2; i++) {
337 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 131)");
346 float X[] = { 0.389f, -0.236f };
348 float expected[] = { 0.389f, -0.236f };
349 cblas_sscal(N, alpha, X, incX);
352 for (i = 0; i < 2; i++) {
353 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 132)");
362 double X[] = { -0.429, -0.183 };
364 double expected[] = { -0.0, -0.0 };
365 cblas_dscal(N, alpha, X, incX);
368 for (i = 0; i < 2; i++) {
369 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 133)");
378 double X[] = { -0.429, -0.183 };
380 double expected[] = { -0.0429, -0.0183 };
381 cblas_dscal(N, alpha, X, incX);
384 for (i = 0; i < 2; i++) {
385 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 134)");
394 double X[] = { -0.429, -0.183 };
396 double expected[] = { -0.429, -0.183 };
397 cblas_dscal(N, alpha, X, incX);
400 for (i = 0; i < 2; i++) {
401 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 135)");
409 float alpha[2] = {0.0f, 0.0f};
410 float X[] = { -0.603f, 0.239f, 0.339f, -0.58f };
412 float expected[] = { -0.0f, 0.0f, 0.0f, 0.0f };
413 cblas_cscal(N, alpha, X, incX);
416 for (i = 0; i < 2; i++) {
417 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 136) real");
418 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 136) imag");
426 float alpha[2] = {0.1f, 0.0f};
427 float X[] = { -0.603f, 0.239f, 0.339f, -0.58f };
429 float expected[] = { -0.0603f, 0.0239f, 0.0339f, -0.058f };
430 cblas_cscal(N, alpha, X, incX);
433 for (i = 0; i < 2; i++) {
434 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 137) real");
435 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 137) imag");
443 float alpha[2] = {1.0f, 0.0f};
444 float X[] = { -0.603f, 0.239f, 0.339f, -0.58f };
446 float expected[] = { -0.603f, 0.239f, 0.339f, -0.58f };
447 cblas_cscal(N, alpha, X, incX);
450 for (i = 0; i < 2; i++) {
451 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 138) real");
452 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 138) imag");
460 float alpha[2] = {0.0f, 0.1f};
461 float X[] = { -0.603f, 0.239f, 0.339f, -0.58f };
463 float expected[] = { -0.0239f, -0.0603f, 0.058f, 0.0339f };
464 cblas_cscal(N, alpha, X, incX);
467 for (i = 0; i < 2; i++) {
468 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 139) real");
469 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 139) imag");
477 float alpha[2] = {0.1f, 0.2f};
478 float X[] = { -0.603f, 0.239f, 0.339f, -0.58f };
480 float expected[] = { -0.1081f, -0.0967f, 0.1499f, 0.0098f };
481 cblas_cscal(N, alpha, X, incX);
484 for (i = 0; i < 2; i++) {
485 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 140) real");
486 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 140) imag");
494 float alpha[2] = {1.0f, 0.3f};
495 float X[] = { -0.603f, 0.239f, 0.339f, -0.58f };
497 float expected[] = { -0.6747f, 0.0581f, 0.513f, -0.4783f };
498 cblas_cscal(N, alpha, X, incX);
501 for (i = 0; i < 2; i++) {
502 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 141) real");
503 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 141) imag");
511 double alpha[2] = {0, 0};
512 double X[] = { -0.956, 0.613, 0.443, 0.503 };
514 double expected[] = { -0.0, 0.0, 0.0, 0.0 };
515 cblas_zscal(N, alpha, X, incX);
518 for (i = 0; i < 2; i++) {
519 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 142) real");
520 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 142) imag");
528 double alpha[2] = {0.1, 0};
529 double X[] = { -0.956, 0.613, 0.443, 0.503 };
531 double expected[] = { -0.0956, 0.0613, 0.0443, 0.0503 };
532 cblas_zscal(N, alpha, X, incX);
535 for (i = 0; i < 2; i++) {
536 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 143) real");
537 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 143) imag");
545 double alpha[2] = {1, 0};
546 double X[] = { -0.956, 0.613, 0.443, 0.503 };
548 double expected[] = { -0.956, 0.613, 0.443, 0.503 };
549 cblas_zscal(N, alpha, X, incX);
552 for (i = 0; i < 2; i++) {
553 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 144) real");
554 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 144) imag");
562 double alpha[2] = {0, 0.1};
563 double X[] = { -0.956, 0.613, 0.443, 0.503 };
565 double expected[] = { -0.0613, -0.0956, -0.0503, 0.0443 };
566 cblas_zscal(N, alpha, X, incX);
569 for (i = 0; i < 2; i++) {
570 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 145) real");
571 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 145) imag");
579 double alpha[2] = {0.1, 0.2};
580 double X[] = { -0.956, 0.613, 0.443, 0.503 };
582 double expected[] = { -0.2182, -0.1299, -0.0563, 0.1389 };
583 cblas_zscal(N, alpha, X, incX);
586 for (i = 0; i < 2; i++) {
587 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 146) real");
588 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 146) imag");
596 double alpha[2] = {1, 0.3};
597 double X[] = { -0.956, 0.613, 0.443, 0.503 };
599 double expected[] = { -1.1399, 0.3262, 0.2921, 0.6359 };
600 cblas_zscal(N, alpha, X, incX);
603 for (i = 0; i < 2; i++) {
604 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 147) real");
605 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 147) imag");
614 float X[] = { 0.629f, -0.419f };
616 float expected[] = { 0.629f, -0.419f };
617 cblas_sscal(N, alpha, X, incX);
620 for (i = 0; i < 2; i++) {
621 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 148)");
630 float X[] = { 0.629f, -0.419f };
632 float expected[] = { 0.629f, -0.419f };
633 cblas_sscal(N, alpha, X, incX);
636 for (i = 0; i < 2; i++) {
637 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 149)");
646 float X[] = { 0.629f, -0.419f };
648 float expected[] = { 0.629f, -0.419f };
649 cblas_sscal(N, alpha, X, incX);
652 for (i = 0; i < 2; i++) {
653 gsl_test_rel(X[i], expected[i], flteps, "sscal(case 150)");
662 double X[] = { 0.398, -0.656 };
664 double expected[] = { 0.398, -0.656 };
665 cblas_dscal(N, alpha, X, incX);
668 for (i = 0; i < 2; i++) {
669 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 151)");
678 double X[] = { 0.398, -0.656 };
680 double expected[] = { 0.398, -0.656 };
681 cblas_dscal(N, alpha, X, incX);
684 for (i = 0; i < 2; i++) {
685 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 152)");
694 double X[] = { 0.398, -0.656 };
696 double expected[] = { 0.398, -0.656 };
697 cblas_dscal(N, alpha, X, incX);
700 for (i = 0; i < 2; i++) {
701 gsl_test_rel(X[i], expected[i], dbleps, "dscal(case 153)");
709 float alpha[2] = {0.0f, 0.0f};
710 float X[] = { 0.736f, 0.331f, -0.318f, 0.622f };
712 float expected[] = { 0.736f, 0.331f, -0.318f, 0.622f };
713 cblas_cscal(N, alpha, X, incX);
716 for (i = 0; i < 2; i++) {
717 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 154) real");
718 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 154) imag");
726 float alpha[2] = {0.1f, 0.0f};
727 float X[] = { 0.736f, 0.331f, -0.318f, 0.622f };
729 float expected[] = { 0.736f, 0.331f, -0.318f, 0.622f };
730 cblas_cscal(N, alpha, X, incX);
733 for (i = 0; i < 2; i++) {
734 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 155) real");
735 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 155) imag");
743 float alpha[2] = {1.0f, 0.0f};
744 float X[] = { 0.736f, 0.331f, -0.318f, 0.622f };
746 float expected[] = { 0.736f, 0.331f, -0.318f, 0.622f };
747 cblas_cscal(N, alpha, X, incX);
750 for (i = 0; i < 2; i++) {
751 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 156) real");
752 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 156) imag");
760 float alpha[2] = {0.0f, 0.1f};
761 float X[] = { 0.736f, 0.331f, -0.318f, 0.622f };
763 float expected[] = { 0.736f, 0.331f, -0.318f, 0.622f };
764 cblas_cscal(N, alpha, X, incX);
767 for (i = 0; i < 2; i++) {
768 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 157) real");
769 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 157) imag");
777 float alpha[2] = {0.1f, 0.2f};
778 float X[] = { 0.736f, 0.331f, -0.318f, 0.622f };
780 float expected[] = { 0.736f, 0.331f, -0.318f, 0.622f };
781 cblas_cscal(N, alpha, X, incX);
784 for (i = 0; i < 2; i++) {
785 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 158) real");
786 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 158) imag");
794 float alpha[2] = {1.0f, 0.3f};
795 float X[] = { 0.736f, 0.331f, -0.318f, 0.622f };
797 float expected[] = { 0.736f, 0.331f, -0.318f, 0.622f };
798 cblas_cscal(N, alpha, X, incX);
801 for (i = 0; i < 2; i++) {
802 gsl_test_rel(X[2*i], expected[2*i], flteps, "cscal(case 159) real");
803 gsl_test_rel(X[2*i+1], expected[2*i+1], flteps, "cscal(case 159) imag");
811 double alpha[2] = {0, 0};
812 double X[] = { 0.521, -0.811, 0.556, -0.147 };
814 double expected[] = { 0.521, -0.811, 0.556, -0.147 };
815 cblas_zscal(N, alpha, X, incX);
818 for (i = 0; i < 2; i++) {
819 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 160) real");
820 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 160) imag");
828 double alpha[2] = {0.1, 0};
829 double X[] = { 0.521, -0.811, 0.556, -0.147 };
831 double expected[] = { 0.521, -0.811, 0.556, -0.147 };
832 cblas_zscal(N, alpha, X, incX);
835 for (i = 0; i < 2; i++) {
836 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 161) real");
837 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 161) imag");
845 double alpha[2] = {1, 0};
846 double X[] = { 0.521, -0.811, 0.556, -0.147 };
848 double expected[] = { 0.521, -0.811, 0.556, -0.147 };
849 cblas_zscal(N, alpha, X, incX);
852 for (i = 0; i < 2; i++) {
853 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 162) real");
854 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 162) imag");
862 double alpha[2] = {0, 0.1};
863 double X[] = { 0.521, -0.811, 0.556, -0.147 };
865 double expected[] = { 0.521, -0.811, 0.556, -0.147 };
866 cblas_zscal(N, alpha, X, incX);
869 for (i = 0; i < 2; i++) {
870 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 163) real");
871 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 163) imag");
879 double alpha[2] = {0.1, 0.2};
880 double X[] = { 0.521, -0.811, 0.556, -0.147 };
882 double expected[] = { 0.521, -0.811, 0.556, -0.147 };
883 cblas_zscal(N, alpha, X, incX);
886 for (i = 0; i < 2; i++) {
887 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 164) real");
888 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 164) imag");
896 double alpha[2] = {1, 0.3};
897 double X[] = { 0.521, -0.811, 0.556, -0.147 };
899 double expected[] = { 0.521, -0.811, 0.556, -0.147 };
900 cblas_zscal(N, alpha, X, incX);
903 for (i = 0; i < 2; i++) {
904 gsl_test_rel(X[2*i], expected[2*i], dbleps, "zscal(case 165) real");
905 gsl_test_rel(X[2*i+1], expected[2*i+1], dbleps, "zscal(case 165) imag");