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;
13 float X[] = { 0.539f };
15 float Y[] = { -0.262f };
17 float expected1[] = { -0.262f };
18 float expected2[] = { 0.539f };
19 cblas_sswap(N, X, incX, Y, incY);
22 for (i = 0; i < 1; i++) {
23 gsl_test_rel(X[i], expected1[i], flteps, "sswap(case 88)");
28 for (i = 0; i < 1; i++) {
29 gsl_test_rel(Y[i], expected2[i], flteps, "sswap(case 89)");
37 double X[] = { 0.906 };
39 double Y[] = { 0.373 };
41 double expected1[] = { 0.373 };
42 double expected2[] = { 0.906 };
43 cblas_dswap(N, X, incX, Y, incY);
46 for (i = 0; i < 1; i++) {
47 gsl_test_rel(X[i], expected1[i], dbleps, "dswap(case 90)");
52 for (i = 0; i < 1; i++) {
53 gsl_test_rel(Y[i], expected2[i], dbleps, "dswap(case 91)");
61 float X[] = { -0.316f, -0.529f };
63 float Y[] = { -0.313f, 0.363f };
65 float expected1[] = { -0.313f, 0.363f };
66 float expected2[] = { -0.316f, -0.529f };
67 cblas_cswap(N, X, incX, Y, incY);
70 for (i = 0; i < 1; i++) {
71 gsl_test_rel(X[2*i], expected1[2*i], flteps, "cswap(case 92) real");
72 gsl_test_rel(X[2*i+1], expected1[2*i+1], flteps, "cswap(case 92) imag");
77 for (i = 0; i < 1; i++) {
78 gsl_test_rel(Y[2*i], expected2[2*i], flteps, "cswap(case 93) real");
79 gsl_test_rel(Y[2*i+1], expected2[2*i+1], flteps, "cswap(case 93) imag");
87 double X[] = { 0.512, -0.89 };
89 double Y[] = { -0.225, -0.511 };
91 double expected1[] = { -0.225, -0.511 };
92 double expected2[] = { 0.512, -0.89 };
93 cblas_zswap(N, X, incX, Y, incY);
96 for (i = 0; i < 1; i++) {
97 gsl_test_rel(X[2*i], expected1[2*i], dbleps, "zswap(case 94) real");
98 gsl_test_rel(X[2*i+1], expected1[2*i+1], dbleps, "zswap(case 94) imag");
103 for (i = 0; i < 1; i++) {
104 gsl_test_rel(Y[2*i], expected2[2*i], dbleps, "zswap(case 95) real");
105 gsl_test_rel(Y[2*i+1], expected2[2*i+1], dbleps, "zswap(case 95) imag");
113 float X[] = { 0.336f };
115 float Y[] = { -0.431f };
117 float expected1[] = { -0.431f };
118 float expected2[] = { 0.336f };
119 cblas_sswap(N, X, incX, Y, incY);
122 for (i = 0; i < 1; i++) {
123 gsl_test_rel(X[i], expected1[i], flteps, "sswap(case 96)");
128 for (i = 0; i < 1; i++) {
129 gsl_test_rel(Y[i], expected2[i], flteps, "sswap(case 97)");
137 double X[] = { 0.764 };
139 double Y[] = { -0.293 };
141 double expected1[] = { -0.293 };
142 double expected2[] = { 0.764 };
143 cblas_dswap(N, X, incX, Y, incY);
146 for (i = 0; i < 1; i++) {
147 gsl_test_rel(X[i], expected1[i], dbleps, "dswap(case 98)");
152 for (i = 0; i < 1; i++) {
153 gsl_test_rel(Y[i], expected2[i], dbleps, "dswap(case 99)");
161 float X[] = { -0.239f, 0.361f };
163 float Y[] = { 0.149f, 0.347f };
165 float expected1[] = { 0.149f, 0.347f };
166 float expected2[] = { -0.239f, 0.361f };
167 cblas_cswap(N, X, incX, Y, incY);
170 for (i = 0; i < 1; i++) {
171 gsl_test_rel(X[2*i], expected1[2*i], flteps, "cswap(case 100) real");
172 gsl_test_rel(X[2*i+1], expected1[2*i+1], flteps, "cswap(case 100) imag");
177 for (i = 0; i < 1; i++) {
178 gsl_test_rel(Y[2*i], expected2[2*i], flteps, "cswap(case 101) real");
179 gsl_test_rel(Y[2*i+1], expected2[2*i+1], flteps, "cswap(case 101) imag");
187 double X[] = { -0.171, -0.936 };
189 double Y[] = { 0.495, -0.835 };
191 double expected1[] = { 0.495, -0.835 };
192 double expected2[] = { -0.171, -0.936 };
193 cblas_zswap(N, X, incX, Y, incY);
196 for (i = 0; i < 1; i++) {
197 gsl_test_rel(X[2*i], expected1[2*i], dbleps, "zswap(case 102) real");
198 gsl_test_rel(X[2*i+1], expected1[2*i+1], dbleps, "zswap(case 102) imag");
203 for (i = 0; i < 1; i++) {
204 gsl_test_rel(Y[2*i], expected2[2*i], dbleps, "zswap(case 103) real");
205 gsl_test_rel(Y[2*i+1], expected2[2*i+1], dbleps, "zswap(case 103) imag");
213 float X[] = { -0.405f };
215 float Y[] = { -0.213f };
217 float expected1[] = { -0.213f };
218 float expected2[] = { -0.405f };
219 cblas_sswap(N, X, incX, Y, incY);
222 for (i = 0; i < 1; i++) {
223 gsl_test_rel(X[i], expected1[i], flteps, "sswap(case 104)");
228 for (i = 0; i < 1; i++) {
229 gsl_test_rel(Y[i], expected2[i], flteps, "sswap(case 105)");
237 double X[] = { -0.761 };
239 double Y[] = { -0.585 };
241 double expected1[] = { -0.585 };
242 double expected2[] = { -0.761 };
243 cblas_dswap(N, X, incX, Y, incY);
246 for (i = 0; i < 1; i++) {
247 gsl_test_rel(X[i], expected1[i], dbleps, "dswap(case 106)");
252 for (i = 0; i < 1; i++) {
253 gsl_test_rel(Y[i], expected2[i], dbleps, "dswap(case 107)");
261 float X[] = { 0.853f, 0.146f };
263 float Y[] = { 0.009f, -0.178f };
265 float expected1[] = { 0.009f, -0.178f };
266 float expected2[] = { 0.853f, 0.146f };
267 cblas_cswap(N, X, incX, Y, incY);
270 for (i = 0; i < 1; i++) {
271 gsl_test_rel(X[2*i], expected1[2*i], flteps, "cswap(case 108) real");
272 gsl_test_rel(X[2*i+1], expected1[2*i+1], flteps, "cswap(case 108) imag");
277 for (i = 0; i < 1; i++) {
278 gsl_test_rel(Y[2*i], expected2[2*i], flteps, "cswap(case 109) real");
279 gsl_test_rel(Y[2*i+1], expected2[2*i+1], flteps, "cswap(case 109) imag");
287 double X[] = { -0.228, 0.386 };
289 double Y[] = { 0.988, -0.084 };
291 double expected1[] = { 0.988, -0.084 };
292 double expected2[] = { -0.228, 0.386 };
293 cblas_zswap(N, X, incX, Y, incY);
296 for (i = 0; i < 1; i++) {
297 gsl_test_rel(X[2*i], expected1[2*i], dbleps, "zswap(case 110) real");
298 gsl_test_rel(X[2*i+1], expected1[2*i+1], dbleps, "zswap(case 110) imag");
303 for (i = 0; i < 1; i++) {
304 gsl_test_rel(Y[2*i], expected2[2*i], dbleps, "zswap(case 111) real");
305 gsl_test_rel(Y[2*i+1], expected2[2*i+1], dbleps, "zswap(case 111) imag");