|
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_hpr2 (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 = 1;
|
|
Packit |
67cb25 |
float alpha[2] = {-1.0f, 0.0f};
|
|
Packit |
67cb25 |
float Ap[] = { 0.159f, -0.13f };
|
|
Packit |
67cb25 |
float X[] = { 0.854f, 0.851f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.526f, -0.267f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.284974f, 0.0f };
|
|
Packit |
67cb25 |
cblas_chpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], flteps, "chpr2(case 1458) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], flteps, "chpr2(case 1458) imag");
|
|
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 = 1;
|
|
Packit |
67cb25 |
float alpha[2] = {-1.0f, 0.0f};
|
|
Packit |
67cb25 |
float Ap[] = { 0.159f, -0.13f };
|
|
Packit |
67cb25 |
float X[] = { 0.854f, 0.851f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.526f, -0.267f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.284974f, 0.0f };
|
|
Packit |
67cb25 |
cblas_chpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], flteps, "chpr2(case 1459) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], flteps, "chpr2(case 1459) imag");
|
|
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 = 1;
|
|
Packit |
67cb25 |
float alpha[2] = {-1.0f, 0.0f};
|
|
Packit |
67cb25 |
float Ap[] = { 0.159f, -0.13f };
|
|
Packit |
67cb25 |
float X[] = { 0.854f, 0.851f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.526f, -0.267f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.284974f, 0.0f };
|
|
Packit |
67cb25 |
cblas_chpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], flteps, "chpr2(case 1460) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], flteps, "chpr2(case 1460) imag");
|
|
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 = 1;
|
|
Packit |
67cb25 |
float alpha[2] = {-1.0f, 0.0f};
|
|
Packit |
67cb25 |
float Ap[] = { 0.159f, -0.13f };
|
|
Packit |
67cb25 |
float X[] = { 0.854f, 0.851f };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
float Y[] = { 0.526f, -0.267f };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
float Ap_expected[] = { -0.284974f, 0.0f };
|
|
Packit |
67cb25 |
cblas_chpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], flteps, "chpr2(case 1461) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], flteps, "chpr2(case 1461) imag");
|
|
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 = 1;
|
|
Packit |
67cb25 |
double alpha[2] = {-0.3, 0.1};
|
|
Packit |
67cb25 |
double Ap[] = { 0.772, 0.997 };
|
|
Packit |
67cb25 |
double X[] = { -0.173, -0.839 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { 0.941, -0.422 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.829742, 0.0 };
|
|
Packit |
67cb25 |
cblas_zhpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], dbleps, "zhpr2(case 1462) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], dbleps, "zhpr2(case 1462) imag");
|
|
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 = 1;
|
|
Packit |
67cb25 |
double alpha[2] = {-0.3, 0.1};
|
|
Packit |
67cb25 |
double Ap[] = { 0.772, 0.997 };
|
|
Packit |
67cb25 |
double X[] = { -0.173, -0.839 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { 0.941, -0.422 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.829742, 0.0 };
|
|
Packit |
67cb25 |
cblas_zhpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], dbleps, "zhpr2(case 1463) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], dbleps, "zhpr2(case 1463) imag");
|
|
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 = 1;
|
|
Packit |
67cb25 |
double alpha[2] = {-0.3, 0.1};
|
|
Packit |
67cb25 |
double Ap[] = { 0.772, 0.997 };
|
|
Packit |
67cb25 |
double X[] = { -0.173, -0.839 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { 0.941, -0.422 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.829742, 0.0 };
|
|
Packit |
67cb25 |
cblas_zhpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], dbleps, "zhpr2(case 1464) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], dbleps, "zhpr2(case 1464) imag");
|
|
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 = 1;
|
|
Packit |
67cb25 |
double alpha[2] = {-0.3, 0.1};
|
|
Packit |
67cb25 |
double Ap[] = { 0.772, 0.997 };
|
|
Packit |
67cb25 |
double X[] = { -0.173, -0.839 };
|
|
Packit |
67cb25 |
int incX = -1;
|
|
Packit |
67cb25 |
double Y[] = { 0.941, -0.422 };
|
|
Packit |
67cb25 |
int incY = -1;
|
|
Packit |
67cb25 |
double Ap_expected[] = { 0.829742, 0.0 };
|
|
Packit |
67cb25 |
cblas_zhpr2(order, uplo, N, alpha, X, incX, Y, incY, Ap);
|
|
Packit |
67cb25 |
{
|
|
Packit |
67cb25 |
int i;
|
|
Packit |
67cb25 |
for (i = 0; i < 1; i++) {
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i], Ap_expected[2*i], dbleps, "zhpr2(case 1465) real");
|
|
Packit |
67cb25 |
gsl_test_rel(Ap[2*i+1], Ap_expected[2*i+1], dbleps, "zhpr2(case 1465) imag");
|
|
Packit |
67cb25 |
};
|
|
Packit |
67cb25 |
};
|
|
Packit |
67cb25 |
};
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
}
|