Blame cblas/test_spr.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_spr (void) {
Packit 67cb25
const double flteps = 1e-4, dbleps = 1e-6;
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int uplo = 121;
Packit 67cb25
   int N = 2;
Packit 67cb25
   float alpha = -0.3f;
Packit 67cb25
   float Ap[] = { -0.764f, -0.257f, -0.064f };
Packit 67cb25
   float X[] = { 0.455f, -0.285f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Ap_expected[] = { -0.788367f, -0.218097f, -0.126108f };
Packit 67cb25
   cblas_sspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], flteps, "sspr(case 1426)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int uplo = 122;
Packit 67cb25
   int N = 2;
Packit 67cb25
   float alpha = -0.3f;
Packit 67cb25
   float Ap[] = { -0.764f, -0.257f, -0.064f };
Packit 67cb25
   float X[] = { 0.455f, -0.285f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Ap_expected[] = { -0.788367f, -0.218097f, -0.126108f };
Packit 67cb25
   cblas_sspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], flteps, "sspr(case 1427)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int uplo = 121;
Packit 67cb25
   int N = 2;
Packit 67cb25
   float alpha = -0.3f;
Packit 67cb25
   float Ap[] = { -0.764f, -0.257f, -0.064f };
Packit 67cb25
   float X[] = { 0.455f, -0.285f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Ap_expected[] = { -0.788367f, -0.218097f, -0.126108f };
Packit 67cb25
   cblas_sspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], flteps, "sspr(case 1428)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int uplo = 122;
Packit 67cb25
   int N = 2;
Packit 67cb25
   float alpha = -0.3f;
Packit 67cb25
   float Ap[] = { -0.764f, -0.257f, -0.064f };
Packit 67cb25
   float X[] = { 0.455f, -0.285f };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   float Ap_expected[] = { -0.788367f, -0.218097f, -0.126108f };
Packit 67cb25
   cblas_sspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], flteps, "sspr(case 1429)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int uplo = 121;
Packit 67cb25
   int N = 2;
Packit 67cb25
   double alpha = -1;
Packit 67cb25
   double Ap[] = { 0.819, 0.175, -0.809 };
Packit 67cb25
   double X[] = { -0.645, -0.222 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Ap_expected[] = { 0.769716, 0.03181, -1.225025 };
Packit 67cb25
   cblas_dspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], dbleps, "dspr(case 1430)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 101;
Packit 67cb25
   int uplo = 122;
Packit 67cb25
   int N = 2;
Packit 67cb25
   double alpha = -1;
Packit 67cb25
   double Ap[] = { 0.819, 0.175, -0.809 };
Packit 67cb25
   double X[] = { -0.645, -0.222 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Ap_expected[] = { 0.769716, 0.03181, -1.225025 };
Packit 67cb25
   cblas_dspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], dbleps, "dspr(case 1431)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int uplo = 121;
Packit 67cb25
   int N = 2;
Packit 67cb25
   double alpha = -1;
Packit 67cb25
   double Ap[] = { 0.819, 0.175, -0.809 };
Packit 67cb25
   double X[] = { -0.645, -0.222 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Ap_expected[] = { 0.769716, 0.03181, -1.225025 };
Packit 67cb25
   cblas_dspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], dbleps, "dspr(case 1432)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
  {
Packit 67cb25
   int order = 102;
Packit 67cb25
   int uplo = 122;
Packit 67cb25
   int N = 2;
Packit 67cb25
   double alpha = -1;
Packit 67cb25
   double Ap[] = { 0.819, 0.175, -0.809 };
Packit 67cb25
   double X[] = { -0.645, -0.222 };
Packit 67cb25
   int incX = -1;
Packit 67cb25
   double Ap_expected[] = { 0.769716, 0.03181, -1.225025 };
Packit 67cb25
   cblas_dspr(order, uplo, N, alpha, X, incX, Ap);
Packit 67cb25
   {
Packit 67cb25
     int i;
Packit 67cb25
     for (i = 0; i < 3; i++) {
Packit 67cb25
       gsl_test_rel(Ap[i], Ap_expected[i], dbleps, "dspr(case 1433)");
Packit 67cb25
     }
Packit 67cb25
   };
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
Packit 67cb25
}