Added MACS source
[htsworkflow.git] / htswanalysis / MACS / lib / gsl / gsl-1.11 / cblas / test_sbmv.c
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>
5
6 #include "tests.h"
7
8 void
9 test_sbmv (void) {
10 const double flteps = 1e-4, dbleps = 1e-6;
11   {
12    int order = 101;
13    int uplo = 121;
14    float alpha = 1.0f;
15    float beta = 0.0f;
16    int N = 3;
17    int k = 1;
18    int lda = 3;
19    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
20    float X[] = { -0.542f, 0.606f, 0.727f };
21    int incX = -1;
22    float Y[] = { 0.755f, 0.268f, -0.99f };
23    int incY = -1;
24    float y_expected[] = { -0.236236f, -0.215242f, 0.266757f };
25    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
26    {
27      int i;
28      for (i = 0; i < 3; i++) {
29        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1102)");
30      }
31    };
32   };
33
34
35   {
36    int order = 101;
37    int uplo = 121;
38    float alpha = 1.0f;
39    float beta = 0.0f;
40    int N = 3;
41    int k = 1;
42    int lda = 3;
43    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
44    float X[] = { -0.542f, 0.606f, 0.727f };
45    int incX = -1;
46    float Y[] = { 0.755f, 0.268f, -0.99f };
47    int incY = -1;
48    float y_expected[] = { -0.236236f, -0.215242f, 0.266757f };
49    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
50    {
51      int i;
52      for (i = 0; i < 3; i++) {
53        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1103)");
54      }
55    };
56   };
57
58
59   {
60    int order = 101;
61    int uplo = 122;
62    float alpha = 1.0f;
63    float beta = 0.0f;
64    int N = 3;
65    int k = 1;
66    int lda = 3;
67    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
68    float X[] = { -0.542f, 0.606f, 0.727f };
69    int incX = -1;
70    float Y[] = { 0.755f, 0.268f, -0.99f };
71    int incY = -1;
72    float y_expected[] = { 0.187592f, -0.01232f, -0.040176f };
73    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
74    {
75      int i;
76      for (i = 0; i < 3; i++) {
77        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1104)");
78      }
79    };
80   };
81
82
83   {
84    int order = 101;
85    int uplo = 122;
86    float alpha = 1.0f;
87    float beta = 0.0f;
88    int N = 3;
89    int k = 1;
90    int lda = 3;
91    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
92    float X[] = { -0.542f, 0.606f, 0.727f };
93    int incX = -1;
94    float Y[] = { 0.755f, 0.268f, -0.99f };
95    int incY = -1;
96    float y_expected[] = { 0.187592f, -0.01232f, -0.040176f };
97    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
98    {
99      int i;
100      for (i = 0; i < 3; i++) {
101        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1105)");
102      }
103    };
104   };
105
106
107   {
108    int order = 102;
109    int uplo = 121;
110    float alpha = 1.0f;
111    float beta = 0.0f;
112    int N = 3;
113    int k = 1;
114    int lda = 3;
115    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
116    float X[] = { -0.542f, 0.606f, 0.727f };
117    int incX = -1;
118    float Y[] = { 0.755f, 0.268f, -0.99f };
119    int incY = -1;
120    float y_expected[] = { 0.187592f, -0.01232f, -0.040176f };
121    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
122    {
123      int i;
124      for (i = 0; i < 3; i++) {
125        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1106)");
126      }
127    };
128   };
129
130
131   {
132    int order = 102;
133    int uplo = 121;
134    float alpha = 1.0f;
135    float beta = 0.0f;
136    int N = 3;
137    int k = 1;
138    int lda = 3;
139    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
140    float X[] = { -0.542f, 0.606f, 0.727f };
141    int incX = -1;
142    float Y[] = { 0.755f, 0.268f, -0.99f };
143    int incY = -1;
144    float y_expected[] = { 0.187592f, -0.01232f, -0.040176f };
145    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
146    {
147      int i;
148      for (i = 0; i < 3; i++) {
149        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1107)");
150      }
151    };
152   };
153
154
155   {
156    int order = 102;
157    int uplo = 122;
158    float alpha = 1.0f;
159    float beta = 0.0f;
160    int N = 3;
161    int k = 1;
162    int lda = 3;
163    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
164    float X[] = { -0.542f, 0.606f, 0.727f };
165    int incX = -1;
166    float Y[] = { 0.755f, 0.268f, -0.99f };
167    int incY = -1;
168    float y_expected[] = { -0.236236f, -0.215242f, 0.266757f };
169    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
170    {
171      int i;
172      for (i = 0; i < 3; i++) {
173        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1108)");
174      }
175    };
176   };
177
178
179   {
180    int order = 102;
181    int uplo = 122;
182    float alpha = 1.0f;
183    float beta = 0.0f;
184    int N = 3;
185    int k = 1;
186    int lda = 3;
187    float A[] = { 0.627f, -0.312f, 0.031f, 0.308f, 0.323f, -0.578f, 0.797f, 0.545f, -0.476f };
188    float X[] = { -0.542f, 0.606f, 0.727f };
189    int incX = -1;
190    float Y[] = { 0.755f, 0.268f, -0.99f };
191    int incY = -1;
192    float y_expected[] = { -0.236236f, -0.215242f, 0.266757f };
193    cblas_ssbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
194    {
195      int i;
196      for (i = 0; i < 3; i++) {
197        gsl_test_rel(Y[i], y_expected[i], flteps, "ssbmv(case 1109)");
198      }
199    };
200   };
201
202
203   {
204    int order = 101;
205    int uplo = 121;
206    double alpha = 0;
207    double beta = 1;
208    int N = 3;
209    int k = 1;
210    int lda = 3;
211    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
212    double X[] = { 0.166, 0.808, 0.723 };
213    int incX = -1;
214    double Y[] = { 0.9, 0.99, -0.578 };
215    int incY = -1;
216    double y_expected[] = { 0.9, 0.99, -0.578 };
217    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
218    {
219      int i;
220      for (i = 0; i < 3; i++) {
221        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1110)");
222      }
223    };
224   };
225
226
227   {
228    int order = 101;
229    int uplo = 121;
230    double alpha = 0;
231    double beta = 1;
232    int N = 3;
233    int k = 1;
234    int lda = 3;
235    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
236    double X[] = { 0.166, 0.808, 0.723 };
237    int incX = -1;
238    double Y[] = { 0.9, 0.99, -0.578 };
239    int incY = -1;
240    double y_expected[] = { 0.9, 0.99, -0.578 };
241    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
242    {
243      int i;
244      for (i = 0; i < 3; i++) {
245        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1111)");
246      }
247    };
248   };
249
250
251   {
252    int order = 101;
253    int uplo = 122;
254    double alpha = 0;
255    double beta = 1;
256    int N = 3;
257    int k = 1;
258    int lda = 3;
259    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
260    double X[] = { 0.166, 0.808, 0.723 };
261    int incX = -1;
262    double Y[] = { 0.9, 0.99, -0.578 };
263    int incY = -1;
264    double y_expected[] = { 0.9, 0.99, -0.578 };
265    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
266    {
267      int i;
268      for (i = 0; i < 3; i++) {
269        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1112)");
270      }
271    };
272   };
273
274
275   {
276    int order = 101;
277    int uplo = 122;
278    double alpha = 0;
279    double beta = 1;
280    int N = 3;
281    int k = 1;
282    int lda = 3;
283    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
284    double X[] = { 0.166, 0.808, 0.723 };
285    int incX = -1;
286    double Y[] = { 0.9, 0.99, -0.578 };
287    int incY = -1;
288    double y_expected[] = { 0.9, 0.99, -0.578 };
289    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
290    {
291      int i;
292      for (i = 0; i < 3; i++) {
293        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1113)");
294      }
295    };
296   };
297
298
299   {
300    int order = 102;
301    int uplo = 121;
302    double alpha = 0;
303    double beta = 1;
304    int N = 3;
305    int k = 1;
306    int lda = 3;
307    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
308    double X[] = { 0.166, 0.808, 0.723 };
309    int incX = -1;
310    double Y[] = { 0.9, 0.99, -0.578 };
311    int incY = -1;
312    double y_expected[] = { 0.9, 0.99, -0.578 };
313    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
314    {
315      int i;
316      for (i = 0; i < 3; i++) {
317        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1114)");
318      }
319    };
320   };
321
322
323   {
324    int order = 102;
325    int uplo = 121;
326    double alpha = 0;
327    double beta = 1;
328    int N = 3;
329    int k = 1;
330    int lda = 3;
331    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
332    double X[] = { 0.166, 0.808, 0.723 };
333    int incX = -1;
334    double Y[] = { 0.9, 0.99, -0.578 };
335    int incY = -1;
336    double y_expected[] = { 0.9, 0.99, -0.578 };
337    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
338    {
339      int i;
340      for (i = 0; i < 3; i++) {
341        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1115)");
342      }
343    };
344   };
345
346
347   {
348    int order = 102;
349    int uplo = 122;
350    double alpha = 0;
351    double beta = 1;
352    int N = 3;
353    int k = 1;
354    int lda = 3;
355    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
356    double X[] = { 0.166, 0.808, 0.723 };
357    int incX = -1;
358    double Y[] = { 0.9, 0.99, -0.578 };
359    int incY = -1;
360    double y_expected[] = { 0.9, 0.99, -0.578 };
361    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
362    {
363      int i;
364      for (i = 0; i < 3; i++) {
365        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1116)");
366      }
367    };
368   };
369
370
371   {
372    int order = 102;
373    int uplo = 122;
374    double alpha = 0;
375    double beta = 1;
376    int N = 3;
377    int k = 1;
378    int lda = 3;
379    double A[] = { 0.83, -0.568, -0.888, 0.281, -0.779, -0.148, 0.138, 0.053, -0.757 };
380    double X[] = { 0.166, 0.808, 0.723 };
381    int incX = -1;
382    double Y[] = { 0.9, 0.99, -0.578 };
383    int incY = -1;
384    double y_expected[] = { 0.9, 0.99, -0.578 };
385    cblas_dsbmv(order, uplo, N, k, alpha, A, lda, X, incX, beta, Y, incY);
386    {
387      int i;
388      for (i = 0; i < 3; i++) {
389        gsl_test_rel(Y[i], y_expected[i], dbleps, "dsbmv(case 1117)");
390      }
391    };
392   };
393
394
395 }