Blame cblas/test_ger.c

Packit 67cb25
#include <gsl/gsl_test.h>
Packit 67cb25
#include <gsl/gsl_ieee_utils.h>
Packit 67cb25
#include <gsl/gsl_math.h>
Packit 67cb25
#include <gsl/gsl_cblas.h>
Packit 67cb25
Packit 67cb25
#include "tests.h"
Packit 67cb25
Packit 67cb25
void
Packit 67cb25
test_ger (void) {
Packit 67cb25
const double flteps = 1e-4, dbleps = 1e-6;
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   float alpha = 1.0f;
Packit 67cb25
   float A[] = { -0.515f };
Packit 67cb25
   float X[] = { 0.611f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Y[] = { -0.082f };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   float A_expected[] = { -0.565102f };
Packit 67cb25
   cblas_sger(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[i], A_expected[i], flteps, "sger(case 1390)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   float alpha = 1.0f;
Packit 67cb25
   float A[] = { -0.515f };
Packit 67cb25
   float X[] = { 0.611f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Y[] = { -0.082f };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   float A_expected[] = { -0.565102f };
Packit 67cb25
   cblas_sger(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[i], A_expected[i], flteps, "sger(case 1391)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   double alpha = 1;
Packit 67cb25
   double A[] = { -0.809 };
Packit 67cb25
   double X[] = { -0.652 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Y[] = { 0.712 };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   double A_expected[] = { -1.273224 };
Packit 67cb25
   cblas_dger(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[i], A_expected[i], dbleps, "dger(case 1392)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   double alpha = 1;
Packit 67cb25
   double A[] = { -0.809 };
Packit 67cb25
   double X[] = { -0.652 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Y[] = { 0.712 };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   double A_expected[] = { -1.273224 };
Packit 67cb25
   cblas_dger(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[i], A_expected[i], dbleps, "dger(case 1393)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   float alpha[2] = {0.0f, 0.0f};
Packit 67cb25
   float A[] = { -0.651f, 0.856f };
Packit 67cb25
   float X[] = { -0.38f, -0.235f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Y[] = { -0.627f, 0.757f };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   float A_expected[] = { -0.651f, 0.856f };
Packit 67cb25
   cblas_cgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgeru(case 1394) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgeru(case 1394) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   float alpha[2] = {0.0f, 0.0f};
Packit 67cb25
   float A[] = { -0.651f, 0.856f };
Packit 67cb25
   float X[] = { -0.38f, -0.235f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Y[] = { -0.627f, 0.757f };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   float A_expected[] = { -0.651f, 0.856f };
Packit 67cb25
   cblas_cgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgerc(case 1395) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgerc(case 1395) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   float alpha[2] = {0.0f, 0.0f};
Packit 67cb25
   float A[] = { -0.651f, 0.856f };
Packit 67cb25
   float X[] = { -0.38f, -0.235f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Y[] = { -0.627f, 0.757f };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   float A_expected[] = { -0.651f, 0.856f };
Packit 67cb25
   cblas_cgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgeru(case 1396) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgeru(case 1396) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   float alpha[2] = {0.0f, 0.0f};
Packit 67cb25
   float A[] = { -0.651f, 0.856f };
Packit 67cb25
   float X[] = { -0.38f, -0.235f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Y[] = { -0.627f, 0.757f };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   float A_expected[] = { -0.651f, 0.856f };
Packit 67cb25
   cblas_cgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], flteps, "cgerc(case 1397) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], flteps, "cgerc(case 1397) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   double alpha[2] = {-1, 0};
Packit 67cb25
   double A[] = { -0.426, 0.757 };
Packit 67cb25
   double X[] = { -0.579, -0.155 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Y[] = { 0.831, 0.035 };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   double A_expected[] = { 0.049724, 0.90607 };
Packit 67cb25
   cblas_zgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgeru(case 1398) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgeru(case 1398) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   double alpha[2] = {-1, 0};
Packit 67cb25
   double A[] = { -0.426, 0.757 };
Packit 67cb25
   double X[] = { -0.579, -0.155 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Y[] = { 0.831, 0.035 };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   double A_expected[] = { 0.060574, 0.86554 };
Packit 67cb25
   cblas_zgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgerc(case 1399) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgerc(case 1399) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   double alpha[2] = {-1, 0};
Packit 67cb25
   double A[] = { -0.426, 0.757 };
Packit 67cb25
   double X[] = { -0.579, -0.155 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Y[] = { 0.831, 0.035 };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   double A_expected[] = { 0.049724, 0.90607 };
Packit 67cb25
   cblas_zgeru(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgeru(case 1400) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgeru(case 1400) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int M = 1;
Packit 67cb25
   int N = 1;
Packit 67cb25
   int lda = 1;
Packit 67cb25
   double alpha[2] = {-1, 0};
Packit 67cb25
   double A[] = { -0.426, 0.757 };
Packit 67cb25
   double X[] = { -0.579, -0.155 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Y[] = { 0.831, 0.035 };
Packit 67cb25
   int incY = -1;
Packit 67cb25
   double A_expected[] = { 0.060574, 0.86554 };
Packit 67cb25
   cblas_zgerc(order, M, N, alpha, X, incX, Y, incY, A, lda);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 1; i++) {
Packit 67cb25
       gsl_test_rel(A[2*i], A_expected[2*i], dbleps, "zgerc(case 1401) real");
Packit 67cb25
       gsl_test_rel(A[2*i+1], A_expected[2*i+1], dbleps, "zgerc(case 1401) imag");
Packit 67cb25
     };
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
}