Added script front-end for primer-design code
[htsworkflow.git] / htswanalysis / MACS / lib / gsl / gsl-1.11 / cblas / test_her2k.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_her2k (void) {
10 const double flteps = 1e-4, dbleps = 1e-6;
11   {
12    int order = 101;
13    int uplo = 121;
14    int trans = 111;
15    int N = 1;
16    int K = 2;
17    float alpha[2] = {-1.0f, 0.0f};
18    float beta = -0.3f;
19    float A[] = { 0.178f, 0.545f, -0.491f, 0.979f };
20    int lda = 2;
21    float B[] = { -0.665f, -0.531f, -0.4f, 0.227f };
22    int ldb = 2;
23    float C[] = { 0.115f, -0.193f };
24    int ldc = 1;
25    float C_expected[] = { -0.056236f, 0.0f };
26    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
27    {
28      int i;
29      for (i = 0; i < 1; i++) {
30        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1646) real");
31        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1646) imag");
32      };
33    };
34   };
35
36
37   {
38    int order = 101;
39    int uplo = 122;
40    int trans = 111;
41    int N = 1;
42    int K = 2;
43    float alpha[2] = {-1.0f, 0.0f};
44    float beta = -0.3f;
45    float A[] = { -0.808f, 0.447f, 0.145f, -0.226f };
46    int lda = 2;
47    float B[] = { -0.413f, 0.904f, -0.585f, 0.717f };
48    int ldb = 2;
49    float C[] = { -0.725f, -0.244f };
50    int ldc = 1;
51    float C_expected[] = { -0.76435f, 0.0f };
52    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
53    {
54      int i;
55      for (i = 0; i < 1; i++) {
56        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1647) real");
57        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1647) imag");
58      };
59    };
60   };
61
62
63   {
64    int order = 102;
65    int uplo = 121;
66    int trans = 111;
67    int N = 1;
68    int K = 2;
69    float alpha[2] = {-1.0f, 0.0f};
70    float beta = -0.3f;
71    float A[] = { 0.337f, -0.737f, -0.993f, 0.69f };
72    int lda = 1;
73    float B[] = { -0.39f, -0.836f, -0.32f, 0.368f };
74    int ldb = 1;
75    float C[] = { 0.844f, -0.763f };
76    int ldc = 1;
77    float C_expected[] = { -2.36596f, 0.0f };
78    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
79    {
80      int i;
81      for (i = 0; i < 1; i++) {
82        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1648) real");
83        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1648) imag");
84      };
85    };
86   };
87
88
89   {
90    int order = 102;
91    int uplo = 122;
92    int trans = 111;
93    int N = 1;
94    int K = 2;
95    float alpha[2] = {-1.0f, 0.0f};
96    float beta = -0.3f;
97    float A[] = { 0.386f, -0.465f, 0.719f, -0.378f };
98    int lda = 1;
99    float B[] = { 0.099f, -0.879f, 0.864f, 0.141f };
100    int ldb = 1;
101    float C[] = { -0.599f, -0.47f };
102    int ldc = 1;
103    float C_expected[] = { -1.85003f, 0.0f };
104    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
105    {
106      int i;
107      for (i = 0; i < 1; i++) {
108        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1649) real");
109        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1649) imag");
110      };
111    };
112   };
113
114
115   {
116    int order = 101;
117    int uplo = 121;
118    int trans = 113;
119    int N = 1;
120    int K = 2;
121    float alpha[2] = {0.0f, 1.0f};
122    float beta = -1.0f;
123    float A[] = { 0.128f, 0.431f, -0.26f, 0.75f };
124    int lda = 1;
125    float B[] = { 0.276f, 0.058f, 0.904f, -0.116f };
126    int ldb = 1;
127    float C[] = { 0.914f, -0.262f };
128    int ldc = 1;
129    float C_expected[] = { 0.604744f, 0.0f };
130    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
131    {
132      int i;
133      for (i = 0; i < 1; i++) {
134        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1650) real");
135        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1650) imag");
136      };
137    };
138   };
139
140
141   {
142    int order = 101;
143    int uplo = 122;
144    int trans = 113;
145    int N = 1;
146    int K = 2;
147    float alpha[2] = {0.0f, 1.0f};
148    float beta = -1.0f;
149    float A[] = { 0.72f, 0.783f, -0.737f, 0.375f };
150    int lda = 1;
151    float B[] = { 0.531f, 0.167f, 0.203f, -0.221f };
152    int ldb = 1;
153    float C[] = { 0.618f, 0.392f };
154    int ldc = 1;
155    float C_expected[] = { -0.200438f, 0.0f };
156    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
157    {
158      int i;
159      for (i = 0; i < 1; i++) {
160        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1651) real");
161        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1651) imag");
162      };
163    };
164   };
165
166
167   {
168    int order = 102;
169    int uplo = 121;
170    int trans = 113;
171    int N = 1;
172    int K = 2;
173    float alpha[2] = {0.0f, 1.0f};
174    float beta = -1.0f;
175    float A[] = { -0.372f, -0.735f, -0.711f, 0.051f };
176    int lda = 2;
177    float B[] = { 0.257f, 0.097f, 0.338f, -0.484f };
178    int ldb = 2;
179    float C[] = { -0.142f, -0.197f };
180    int ldc = 1;
181    float C_expected[] = { -0.817394f, 0.0f };
182    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
183    {
184      int i;
185      for (i = 0; i < 1; i++) {
186        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1652) real");
187        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1652) imag");
188      };
189    };
190   };
191
192
193   {
194    int order = 102;
195    int uplo = 122;
196    int trans = 113;
197    int N = 1;
198    int K = 2;
199    float alpha[2] = {0.0f, 1.0f};
200    float beta = -1.0f;
201    float A[] = { 0.1f, -0.878f, 0.28f, -0.381f };
202    int lda = 2;
203    float B[] = { -0.208f, 0.309f, -0.276f, 0.123f };
204    int ldb = 2;
205    float C[] = { 0.483f, -0.541f };
206    int ldc = 1;
207    float C_expected[] = { -0.03812f, 0.0f };
208    cblas_cher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
209    {
210      int i;
211      for (i = 0; i < 1; i++) {
212        gsl_test_rel(C[2*i], C_expected[2*i], flteps, "cher2k(case 1653) real");
213        gsl_test_rel(C[2*i+1], C_expected[2*i+1], flteps, "cher2k(case 1653) imag");
214      };
215    };
216   };
217
218
219   {
220    int order = 101;
221    int uplo = 121;
222    int trans = 111;
223    int N = 1;
224    int K = 2;
225    double alpha[2] = {1, 0};
226    double beta = 1;
227    double A[] = { 0.515, -0.034, 0.067, 0.66 };
228    int lda = 2;
229    double B[] = { 0.408, -0.85, -0.945, -0.799 };
230    int ldb = 2;
231    double C[] = { -0.918, -0.985 };
232    int ldc = 1;
233    double C_expected[] = { -1.62127, 0.0 };
234    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
235    {
236      int i;
237      for (i = 0; i < 1; i++) {
238        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1654) real");
239        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1654) imag");
240      };
241    };
242   };
243
244
245   {
246    int order = 101;
247    int uplo = 122;
248    int trans = 111;
249    int N = 1;
250    int K = 2;
251    double alpha[2] = {1, 0};
252    double beta = 1;
253    double A[] = { -0.009, 0.495, -0.008, -0.973 };
254    int lda = 2;
255    double B[] = { -0.239, -0.373, -0.032, -0.539 };
256    int ldb = 2;
257    double C[] = { 0.443, -0.245 };
258    int ldc = 1;
259    double C_expected[] = { 1.127438, 0.0 };
260    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
261    {
262      int i;
263      for (i = 0; i < 1; i++) {
264        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1655) real");
265        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1655) imag");
266      };
267    };
268   };
269
270
271   {
272    int order = 102;
273    int uplo = 121;
274    int trans = 111;
275    int N = 1;
276    int K = 2;
277    double alpha[2] = {1, 0};
278    double beta = 1;
279    double A[] = { 0.531, 0.721, -0.848, 0.826 };
280    int lda = 1;
281    double B[] = { -0.711, -0.2, -0.92, -0.676 };
282    int ldb = 1;
283    double C[] = { -0.447, 0.701 };
284    int ldc = 1;
285    double C_expected[] = { -1.046914, 0.0 };
286    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
287    {
288      int i;
289      for (i = 0; i < 1; i++) {
290        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1656) real");
291        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1656) imag");
292      };
293    };
294   };
295
296
297   {
298    int order = 102;
299    int uplo = 122;
300    int trans = 111;
301    int N = 1;
302    int K = 2;
303    double alpha[2] = {1, 0};
304    double beta = 1;
305    double A[] = { 0.68, 0.079, 0.837, -0.814 };
306    int lda = 1;
307    double B[] = { -0.986, 0.024, 0.584, -0.248 };
308    int ldb = 1;
309    double C[] = { 0.477, -0.551 };
310    int ldc = 1;
311    double C_expected[] = { 0.521192, 0.0 };
312    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
313    {
314      int i;
315      for (i = 0; i < 1; i++) {
316        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1657) real");
317        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1657) imag");
318      };
319    };
320   };
321
322
323   {
324    int order = 101;
325    int uplo = 121;
326    int trans = 113;
327    int N = 1;
328    int K = 2;
329    double alpha[2] = {-1, 0};
330    double beta = 0.1;
331    double A[] = { -0.63, 0.787, 0.426, -0.568 };
332    int lda = 1;
333    double B[] = { -0.228, 0.302, 0.83, 0.023 };
334    int ldb = 1;
335    double C[] = { 0.354, -0.85 };
336    int ldc = 1;
337    double C_expected[] = { -1.40826, 0.0 };
338    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
339    {
340      int i;
341      for (i = 0; i < 1; i++) {
342        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1658) real");
343        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1658) imag");
344      };
345    };
346   };
347
348
349   {
350    int order = 101;
351    int uplo = 122;
352    int trans = 113;
353    int N = 1;
354    int K = 2;
355    double alpha[2] = {-1, 0};
356    double beta = 0.1;
357    double A[] = { 0.224, -0.191, 0.46, 0.464 };
358    int lda = 1;
359    double B[] = { -0.815, 0.634, 0.066, -0.873 };
360    int ldb = 1;
361    double C[] = { -0.49, -0.606 };
362    int ldc = 1;
363    double C_expected[] = { 1.307732, 0.0 };
364    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
365    {
366      int i;
367      for (i = 0; i < 1; i++) {
368        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1659) real");
369        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1659) imag");
370      };
371    };
372   };
373
374
375   {
376    int order = 102;
377    int uplo = 121;
378    int trans = 113;
379    int N = 1;
380    int K = 2;
381    double alpha[2] = {-1, 0};
382    double beta = 0.1;
383    double A[] = { 0.943, 0.075, 0.15, -0.141 };
384    int lda = 2;
385    double B[] = { -0.962, 0.422, -0.592, -0.789 };
386    int ldb = 2;
387    double C[] = { 0.728, 0.601 };
388    int ldc = 1;
389    double C_expected[] = { 1.778934, 0.0 };
390    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
391    {
392      int i;
393      for (i = 0; i < 1; i++) {
394        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1660) real");
395        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1660) imag");
396      };
397    };
398   };
399
400
401   {
402    int order = 102;
403    int uplo = 122;
404    int trans = 113;
405    int N = 1;
406    int K = 2;
407    double alpha[2] = {-1, 0};
408    double beta = 0.1;
409    double A[] = { -0.93, -0.386, 0.565, 0.141 };
410    int lda = 2;
411    double B[] = { -0.801, 0.022, 0.558, -0.932 };
412    int ldb = 2;
413    double C[] = { 0.068, 0.501 };
414    int ldc = 1;
415    double C_expected[] = { -1.833792, 0.0 };
416    cblas_zher2k(order, uplo, trans, N, K, alpha, A, lda, B, ldb, beta, C, ldc);
417    {
418      int i;
419      for (i = 0; i < 1; i++) {
420        gsl_test_rel(C[2*i], C_expected[2*i], dbleps, "zher2k(case 1661) real");
421        gsl_test_rel(C[2*i+1], C_expected[2*i+1], dbleps, "zher2k(case 1661) imag");
422      };
423    };
424   };
425
426
427 }