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;
17 float A[] = { -0.515f };
18 float X[] = { 0.611f };
20 float Y[] = { -0.082f };
22 float A_expected[] = { -0.565102f };
23 cblas_sger(order, M, N, alpha, X, incX, Y, incY, A, lda);
26 for (i = 0; i < 1; i++) {
27 gsl_test_rel(A[i], A_expected[i], flteps, "sger(case 1390)");
39 float A[] = { -0.515f };
40 float X[] = { 0.611f };
42 float Y[] = { -0.082f };
44 float A_expected[] = { -0.565102f };
45 cblas_sger(order, M, N, alpha, X, incX, Y, incY, A, lda);
48 for (i = 0; i < 1; i++) {
49 gsl_test_rel(A[i], A_expected[i], flteps, "sger(case 1391)");
61 double A[] = { -0.809 };
62 double X[] = { -0.652 };
64 double Y[] = { 0.712 };
66 double A_expected[] = { -1.273224 };
67 cblas_dger(order, M, N, alpha, X, incX, Y, incY, A, lda);
70 for (i = 0; i < 1; i++) {
71 gsl_test_rel(A[i], A_expected[i], dbleps, "dger(case 1392)");
83 double A[] = { -0.809 };
84 double X[] = { -0.652 };
86 double Y[] = { 0.712 };
88 double A_expected[] = { -1.273224 };
89 cblas_dger(order, M, N, alpha, X, incX, Y, incY, A, lda);
92 for (i = 0; i < 1; i++) {
93 gsl_test_rel(A[i], A_expected[i], dbleps, "dger(case 1393)");
104 float alpha[2] = {0.0f, 0.0f};
105 float A[] = { -0.651f, 0.856f };
106 float X[] = { -0.38f, -0.235f };
108 float Y[] = { -0.627f, 0.757f };
110 float A_expected[] = { -0.651f, 0.856f };
111 cblas_cgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
114 for (i = 0; i < 1; i++) {
115 gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgeru(case 1394) real");
116 gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgeru(case 1394) imag");
127 float alpha[2] = {0.0f, 0.0f};
128 float A[] = { -0.651f, 0.856f };
129 float X[] = { -0.38f, -0.235f };
131 float Y[] = { -0.627f, 0.757f };
133 float A_expected[] = { -0.651f, 0.856f };
134 cblas_cgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
137 for (i = 0; i < 1; i++) {
138 gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgerc(case 1395) real");
139 gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgerc(case 1395) imag");
150 float alpha[2] = {0.0f, 0.0f};
151 float A[] = { -0.651f, 0.856f };
152 float X[] = { -0.38f, -0.235f };
154 float Y[] = { -0.627f, 0.757f };
156 float A_expected[] = { -0.651f, 0.856f };
157 cblas_cgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
160 for (i = 0; i < 1; i++) {
161 gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgeru(case 1396) real");
162 gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgeru(case 1396) imag");
173 float alpha[2] = {0.0f, 0.0f};
174 float A[] = { -0.651f, 0.856f };
175 float X[] = { -0.38f, -0.235f };
177 float Y[] = { -0.627f, 0.757f };
179 float A_expected[] = { -0.651f, 0.856f };
180 cblas_cgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
183 for (i = 0; i < 1; i++) {
184 gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgerc(case 1397) real");
185 gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgerc(case 1397) imag");
196 double alpha[2] = {-1, 0};
197 double A[] = { -0.426, 0.757 };
198 double X[] = { -0.579, -0.155 };
200 double Y[] = { 0.831, 0.035 };
202 double A_expected[] = { 0.049724, 0.90607 };
203 cblas_zgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
206 for (i = 0; i < 1; i++) {
207 gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgeru(case 1398) real");
208 gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgeru(case 1398) imag");
219 double alpha[2] = {-1, 0};
220 double A[] = { -0.426, 0.757 };
221 double X[] = { -0.579, -0.155 };
223 double Y[] = { 0.831, 0.035 };
225 double A_expected[] = { 0.060574, 0.86554 };
226 cblas_zgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
229 for (i = 0; i < 1; i++) {
230 gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgerc(case 1399) real");
231 gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgerc(case 1399) imag");
242 double alpha[2] = {-1, 0};
243 double A[] = { -0.426, 0.757 };
244 double X[] = { -0.579, -0.155 };
246 double Y[] = { 0.831, 0.035 };
248 double A_expected[] = { 0.049724, 0.90607 };
249 cblas_zgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
252 for (i = 0; i < 1; i++) {
253 gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgeru(case 1400) real");
254 gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgeru(case 1400) imag");
265 double alpha[2] = {-1, 0};
266 double A[] = { -0.426, 0.757 };
267 double X[] = { -0.579, -0.155 };
269 double Y[] = { 0.831, 0.035 };
271 double A_expected[] = { 0.060574, 0.86554 };
272 cblas_zgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
275 for (i = 0; i < 1; i++) {
276 gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgerc(case 1401) real");
277 gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgerc(case 1401) imag");