|
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_spr2 (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 = -1.0f;
|
|
Packit |
67cb25 |
float Ap[] = { 0.493f, -0.175f, -0.831f };
|
|
Packit |
67cb25 |
float X[] = { -0.163f, 0.489f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.154f, 0.769f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.259082f, -0.124959f, -0.780796f };
|
|
Packit |
67cb25 |
cblas_sspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "sspr2(case 1442)");
|
|
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 = -1.0f;
|
|
Packit |
67cb25 |
float Ap[] = { 0.493f, -0.175f, -0.831f };
|
|
Packit |
67cb25 |
float X[] = { -0.163f, 0.489f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.154f, 0.769f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.259082f, -0.124959f, -0.780796f };
|
|
Packit |
67cb25 |
cblas_sspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "sspr2(case 1443)");
|
|
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 = -1.0f;
|
|
Packit |
67cb25 |
float Ap[] = { 0.493f, -0.175f, -0.831f };
|
|
Packit |
67cb25 |
float X[] = { -0.163f, 0.489f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.154f, 0.769f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.259082f, -0.124959f, -0.780796f };
|
|
Packit |
67cb25 |
cblas_sspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "sspr2(case 1444)");
|
|
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 = -1.0f;
|
|
Packit |
67cb25 |
float Ap[] = { 0.493f, -0.175f, -0.831f };
|
|
Packit |
67cb25 |
float X[] = { -0.163f, 0.489f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.154f, 0.769f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.259082f, -0.124959f, -0.780796f };
|
|
Packit |
67cb25 |
cblas_sspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "sspr2(case 1445)");
|
|
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 = 0;
|
|
Packit |
67cb25 |
double Ap[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
double X[] = { 0.216, -0.566 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { -0.845, 0.282 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
cblas_dspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "dspr2(case 1446)");
|
|
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 = 0;
|
|
Packit |
67cb25 |
double Ap[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
double X[] = { 0.216, -0.566 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { -0.845, 0.282 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
cblas_dspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "dspr2(case 1447)");
|
|
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 = 0;
|
|
Packit |
67cb25 |
double Ap[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
double X[] = { 0.216, -0.566 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { -0.845, 0.282 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
cblas_dspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "dspr2(case 1448)");
|
|
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 = 0;
|
|
Packit |
67cb25 |
double Ap[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
double X[] = { 0.216, -0.566 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { -0.845, 0.282 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.938, 0.342, 0.74 };
|
|
Packit |
67cb25 |
cblas_dspr2(order, uplo, N, alpha, X, incX, Y, incY, 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, "dspr2(case 1449)");
|
|
Packit |
67cb25 |
}
|
|
Packit |
67cb25 |
};
|
|
Packit |
67cb25 |
};
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
}
|