blob: 5c777f6b3cbee51139aea3cd244de82a30b722f4 [file] [log] [blame]
#include <gsl/gsl_test.h>
#include <gsl/gsl_ieee_utils.h>
#include <gsl/gsl_math.h>
#include <gsl/gsl_cblas.h>
#include "tests.h"
void
test_nrm2 (void) {
const double flteps = 1e-4, dbleps = 1e-6;
{
int N = 1;
float X[] = { 0.317f };
int incX = -1;
float expected = 0.0f;
float f;
f = cblas_snrm2(N, X, incX);
gsl_test_rel(f, expected, flteps, "snrm2(case 28)");
};
{
int N = 1;
double X[] = { 0.071 };
int incX = -1;
double expected = 0;
double f;
f = cblas_dnrm2(N, X, incX);
gsl_test_rel(f, expected, dbleps, "dnrm2(case 29)");
};
{
int N = 1;
float X[] = { 0.776f, 0.983f };
int incX = -1;
float expected = 0.0f;
float f;
f = cblas_scnrm2(N, X, incX);
gsl_test_rel(f, expected, flteps, "scnrm2(case 30)");
};
{
int N = 1;
double X[] = { 0.549, -0.354 };
int incX = -1;
double expected = 0;
double f;
f = cblas_dznrm2(N, X, incX);
gsl_test_rel(f, expected, dbleps, "dznrm2(case 31)");
};
{
int N = 2;
float X[] = { 0.14f, -0.632f };
int incX = 1;
float expected = 0.647320631527f;
float f;
f = cblas_snrm2(N, X, incX);
gsl_test_rel(f, expected, flteps, "snrm2(case 32)");
};
{
int N = 2;
double X[] = { 0.696, -0.804 };
int incX = 1;
double expected = 1.06340584915;
double f;
f = cblas_dnrm2(N, X, incX);
gsl_test_rel(f, expected, dbleps, "dnrm2(case 33)");
};
{
int N = 2;
float X[] = { 0.281f, -0.063f, 0.367f, 0.232f };
int incX = 1;
float expected = 0.521001919382f;
float f;
f = cblas_scnrm2(N, X, incX);
gsl_test_rel(f, expected, flteps, "scnrm2(case 34)");
};
{
int N = 2;
double X[] = { -0.359, -0.76, -0.906, -0.108 };
int incX = 1;
double expected = 1.24055672986;
double f;
f = cblas_dznrm2(N, X, incX);
gsl_test_rel(f, expected, dbleps, "dznrm2(case 35)");
};
{
int N = 2;
float X[] = { 0.918f, -0.126f };
int incX = -1;
float expected = 0.0f;
float f;
f = cblas_snrm2(N, X, incX);
gsl_test_rel(f, expected, flteps, "snrm2(case 36)");
};
{
int N = 2;
double X[] = { 0.217, -0.588 };
int incX = -1;
double expected = 0;
double f;
f = cblas_dnrm2(N, X, incX);
gsl_test_rel(f, expected, dbleps, "dnrm2(case 37)");
};
{
int N = 2;
float X[] = { 0.31f, 0.059f, -0.442f, 0.987f };
int incX = -1;
float expected = 0.0f;
float f;
f = cblas_scnrm2(N, X, incX);
gsl_test_rel(f, expected, flteps, "scnrm2(case 38)");
};
{
int N = 2;
double X[] = { 0.609, 0.615, -0.143, -0.957 };
int incX = -1;
double expected = 0;
double f;
f = cblas_dznrm2(N, X, incX);
gsl_test_rel(f, expected, dbleps, "dznrm2(case 39)");
};
}