]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/ext/special_functions/hyperg/check_value.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / ext / special_functions / hyperg / check_value.cc
CommitLineData
196c9e7a 1// { dg-do run { target c++11 } }
d3861707
DE
2// { dg-options "-D__STDCPP_WANT_MATH_SPEC_FUNCS__ -ffp-contract=off" }
3// { dg-additional-options "-ffloat-store" { target { m68*-*-* || ia32 } } }
e7f2d0bd 4// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
b4688136 5//
99dee823 6// Copyright (C) 2016-2021 Free Software Foundation, Inc.
2be75957
ESR
7//
8// This file is part of the GNU ISO C++ Library. This library is free
9// software; you can redistribute it and/or modify it under the
10// terms of the GNU General Public License as published by the
11// Free Software Foundation; either version 3, or (at your option)
12// any later version.
13//
14// This library is distributed in the hope that it will be useful,
15// but WITHOUT ANY WARRANTY; without even the implied warranty of
16// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17// GNU General Public License for more details.
18//
19// You should have received a copy of the GNU General Public License along
20// with this library; see the file COPYING3. If not see
21// <http://www.gnu.org/licenses/>.
22
23// hyperg
24// Compare against values generated by the GNU Scientific Library.
25// The GSL can be found on the web: http://www.gnu.org/software/gsl/
26#include <limits>
27#include <cmath>
28#if defined(__TEST_DEBUG)
29# include <iostream>
30# define VERIFY(A) \
31 if (!(A)) \
32 { \
33 std::cout << "line " << __LINE__ \
34 << " max_abs_frac = " << max_abs_frac \
35 << std::endl; \
36 }
37#else
38# include <testsuite_hooks.h>
39#endif
40#include <specfun_testcase.h>
41
2be75957 42// Test data for a=0.0000000000000000, b=0.0000000000000000, c=2.0000000000000000.
b4688136 43// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 44// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
45// mean(f - f_GSL): 0.0000000000000000
46// variance(f - f_GSL): 0.0000000000000000
47// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
48const testcase_hyperg<double>
49data001[19] =
50{
51 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 52 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 53 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 54 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 55 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 56 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 57 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 58 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 59 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 60 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 61 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 62 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 63 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 64 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 65 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 66 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 67 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 68 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 69 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 70 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 71 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 72 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 73 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 74 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 75 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 76 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 77 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 78 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 79 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 80 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 81 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 82 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 83 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 84 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 85 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 86 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 87 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 88 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
89};
90const double toler001 = 2.5000000000000020e-13;
91
92// Test data for a=0.0000000000000000, b=0.0000000000000000, c=4.0000000000000000.
b4688136 93// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 94// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
95// mean(f - f_GSL): 0.0000000000000000
96// variance(f - f_GSL): 0.0000000000000000
97// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
98const testcase_hyperg<double>
99data002[19] =
100{
101 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 103 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 105 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 107 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 109 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 110 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 111 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 112 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 113 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 115 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 117 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 119 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 121 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 122 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 123 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 125 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 126 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 127 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 129 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 131 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 132 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 133 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 135 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 136 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 137 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
139};
140const double toler002 = 2.5000000000000020e-13;
141
142// Test data for a=0.0000000000000000, b=0.0000000000000000, c=6.0000000000000000.
b4688136 143// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 144// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
145// mean(f - f_GSL): 0.0000000000000000
146// variance(f - f_GSL): 0.0000000000000000
147// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
148const testcase_hyperg<double>
149data003[19] =
150{
151 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 153 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 155 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 157 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 159 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 160 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 161 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 162 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 163 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 165 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 167 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 169 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 171 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 172 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 173 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 175 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 176 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 177 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 179 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 181 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 182 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 183 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 185 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 186 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 187 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
189};
190const double toler003 = 2.5000000000000020e-13;
191
192// Test data for a=0.0000000000000000, b=0.0000000000000000, c=8.0000000000000000.
b4688136 193// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 194// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
195// mean(f - f_GSL): 0.0000000000000000
196// variance(f - f_GSL): 0.0000000000000000
197// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
198const testcase_hyperg<double>
199data004[19] =
200{
201 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 203 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 205 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 207 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 209 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 210 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 211 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 212 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 213 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 215 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 217 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 219 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 221 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 223 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 225 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 226 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 227 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 229 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 231 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 232 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 233 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 235 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 236 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 237 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
239};
240const double toler004 = 2.5000000000000020e-13;
241
242// Test data for a=0.0000000000000000, b=0.0000000000000000, c=10.000000000000000.
b4688136 243// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 244// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
245// mean(f - f_GSL): 0.0000000000000000
246// variance(f - f_GSL): 0.0000000000000000
247// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
248const testcase_hyperg<double>
249data005[19] =
250{
251 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 253 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 255 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 257 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 259 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 260 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 261 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 262 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 263 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 265 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 267 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 269 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 271 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 273 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 275 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 276 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 277 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 279 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 281 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 282 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 283 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 285 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 286 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 287 { 1.0000000000000000, 0.0000000000000000, 0.0000000000000000,
b4688136 288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
289};
290const double toler005 = 2.5000000000000020e-13;
291
292// Test data for a=0.0000000000000000, b=0.50000000000000000, c=2.0000000000000000.
b4688136 293// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 294// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
295// mean(f - f_GSL): 0.0000000000000000
296// variance(f - f_GSL): 0.0000000000000000
297// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
298const testcase_hyperg<double>
299data006[19] =
300{
301 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 303 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 305 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 307 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 309 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 310 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 311 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 312 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 313 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 315 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 317 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 319 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 321 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 322 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 323 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 325 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 326 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 327 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 329 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 331 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 332 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 333 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 335 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 336 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 337 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
339};
340const double toler006 = 2.5000000000000020e-13;
341
342// Test data for a=0.0000000000000000, b=0.50000000000000000, c=4.0000000000000000.
b4688136 343// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 344// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
345// mean(f - f_GSL): 0.0000000000000000
346// variance(f - f_GSL): 0.0000000000000000
347// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
348const testcase_hyperg<double>
349data007[19] =
350{
351 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 353 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 355 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 357 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 359 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 360 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 361 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 362 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 363 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 365 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 367 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 369 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 371 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 372 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 373 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 375 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 376 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 377 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 379 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 381 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 382 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 383 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 385 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 386 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 387 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
389};
390const double toler007 = 2.5000000000000020e-13;
391
392// Test data for a=0.0000000000000000, b=0.50000000000000000, c=6.0000000000000000.
b4688136 393// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 394// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
395// mean(f - f_GSL): 0.0000000000000000
396// variance(f - f_GSL): 0.0000000000000000
397// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
398const testcase_hyperg<double>
399data008[19] =
400{
401 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 403 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 405 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 407 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 409 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 410 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 411 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 412 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 413 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 415 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 417 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 419 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 421 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 422 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 423 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 425 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 426 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 427 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 429 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 431 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 432 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 433 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 435 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 436 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 437 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
439};
440const double toler008 = 2.5000000000000020e-13;
441
442// Test data for a=0.0000000000000000, b=0.50000000000000000, c=8.0000000000000000.
b4688136 443// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 444// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
445// mean(f - f_GSL): 0.0000000000000000
446// variance(f - f_GSL): 0.0000000000000000
447// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
448const testcase_hyperg<double>
449data009[19] =
450{
451 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 453 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 455 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 457 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 459 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 460 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 461 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 462 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 463 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 465 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 467 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 469 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 471 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 472 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 473 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 475 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 476 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 477 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 479 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 481 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 482 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 483 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 485 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 486 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 487 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
489};
490const double toler009 = 2.5000000000000020e-13;
491
492// Test data for a=0.0000000000000000, b=0.50000000000000000, c=10.000000000000000.
b4688136 493// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 494// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
495// mean(f - f_GSL): 0.0000000000000000
496// variance(f - f_GSL): 0.0000000000000000
497// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
498const testcase_hyperg<double>
499data010[19] =
500{
501 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 503 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 505 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 507 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 509 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 510 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 511 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 512 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 513 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 515 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 517 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 519 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 521 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 522 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 523 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 525 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 526 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 527 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 529 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 531 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 532 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 533 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 535 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 536 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 537 { 1.0000000000000000, 0.0000000000000000, 0.50000000000000000,
b4688136 538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
539};
540const double toler010 = 2.5000000000000020e-13;
541
542// Test data for a=0.0000000000000000, b=1.0000000000000000, c=2.0000000000000000.
b4688136 543// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 544// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
545// mean(f - f_GSL): 0.0000000000000000
546// variance(f - f_GSL): 0.0000000000000000
547// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
548const testcase_hyperg<double>
549data011[19] =
550{
551 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 553 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 555 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 557 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 559 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 560 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 561 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 562 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 563 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 565 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 567 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 569 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 571 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 572 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 573 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 575 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 576 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 577 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 579 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 581 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 582 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 583 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 585 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 586 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 587 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
589};
590const double toler011 = 2.5000000000000020e-13;
591
592// Test data for a=0.0000000000000000, b=1.0000000000000000, c=4.0000000000000000.
b4688136 593// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 594// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
595// mean(f - f_GSL): 0.0000000000000000
596// variance(f - f_GSL): 0.0000000000000000
597// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
598const testcase_hyperg<double>
599data012[19] =
600{
601 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 603 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 605 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 607 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 609 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 610 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 611 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 612 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 613 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 615 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 617 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 619 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 621 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 622 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 623 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 625 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 626 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 627 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 629 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 631 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 632 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 633 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 635 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 636 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 637 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
639};
640const double toler012 = 2.5000000000000020e-13;
641
642// Test data for a=0.0000000000000000, b=1.0000000000000000, c=6.0000000000000000.
b4688136 643// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 644// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
645// mean(f - f_GSL): 0.0000000000000000
646// variance(f - f_GSL): 0.0000000000000000
647// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
648const testcase_hyperg<double>
649data013[19] =
650{
651 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 653 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 655 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 657 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 659 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 660 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 661 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 662 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 663 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 665 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 667 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 669 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 671 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 672 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 673 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 675 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 676 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 677 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 679 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 681 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 682 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 683 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 685 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 686 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 687 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
689};
690const double toler013 = 2.5000000000000020e-13;
691
692// Test data for a=0.0000000000000000, b=1.0000000000000000, c=8.0000000000000000.
b4688136 693// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 694// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
695// mean(f - f_GSL): 0.0000000000000000
696// variance(f - f_GSL): 0.0000000000000000
697// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
698const testcase_hyperg<double>
699data014[19] =
700{
701 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 703 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 705 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 707 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 709 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 710 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 711 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 713 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 715 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 717 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 719 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 721 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 723 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 725 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 727 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 729 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 731 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 732 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 733 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 735 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 736 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 737 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
739};
740const double toler014 = 2.5000000000000020e-13;
741
742// Test data for a=0.0000000000000000, b=1.0000000000000000, c=10.000000000000000.
b4688136 743// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 744// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
745// mean(f - f_GSL): 0.0000000000000000
746// variance(f - f_GSL): 0.0000000000000000
747// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
748const testcase_hyperg<double>
749data015[19] =
750{
751 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 753 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 755 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 757 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 759 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 760 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 761 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 762 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 763 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 765 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 767 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 769 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 771 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 773 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 775 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 776 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 777 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 779 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 781 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 782 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 783 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 785 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 786 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 787 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
b4688136 788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
789};
790const double toler015 = 2.5000000000000020e-13;
791
792// Test data for a=0.0000000000000000, b=2.0000000000000000, c=2.0000000000000000.
b4688136 793// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 794// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
795// mean(f - f_GSL): 0.0000000000000000
796// variance(f - f_GSL): 0.0000000000000000
797// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
798const testcase_hyperg<double>
799data016[19] =
800{
801 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 803 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 805 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 807 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 809 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 810 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 811 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 812 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 813 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 815 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 817 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 819 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 821 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 822 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 823 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 825 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 826 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 827 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 829 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 831 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 832 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 833 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 835 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 836 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 837 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
839};
840const double toler016 = 2.5000000000000020e-13;
841
842// Test data for a=0.0000000000000000, b=2.0000000000000000, c=4.0000000000000000.
b4688136 843// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 844// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
845// mean(f - f_GSL): 0.0000000000000000
846// variance(f - f_GSL): 0.0000000000000000
847// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
848const testcase_hyperg<double>
849data017[19] =
850{
851 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 853 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 855 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 857 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 859 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 860 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 861 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 862 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 863 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 865 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 867 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 869 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 871 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 872 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 873 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 875 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 876 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 877 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 879 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 881 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 882 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 883 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 885 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 886 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 887 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
889};
890const double toler017 = 2.5000000000000020e-13;
891
892// Test data for a=0.0000000000000000, b=2.0000000000000000, c=6.0000000000000000.
b4688136 893// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 894// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
895// mean(f - f_GSL): 0.0000000000000000
896// variance(f - f_GSL): 0.0000000000000000
897// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
898const testcase_hyperg<double>
899data018[19] =
900{
901 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 903 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 905 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 907 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 909 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 910 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 911 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 912 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 913 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 915 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 917 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 919 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 921 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 922 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 923 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 925 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 926 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 927 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 929 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 931 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 932 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 933 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 935 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 936 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 937 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
939};
940const double toler018 = 2.5000000000000020e-13;
941
942// Test data for a=0.0000000000000000, b=2.0000000000000000, c=8.0000000000000000.
b4688136 943// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 944// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
945// mean(f - f_GSL): 0.0000000000000000
946// variance(f - f_GSL): 0.0000000000000000
947// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
948const testcase_hyperg<double>
949data019[19] =
950{
951 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 953 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 955 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 957 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 959 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 960 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 961 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 962 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 963 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 965 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 967 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 969 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 971 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 972 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 973 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 975 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 976 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 977 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 979 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 981 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 982 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 983 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 985 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 986 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 987 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
989};
990const double toler019 = 2.5000000000000020e-13;
991
992// Test data for a=0.0000000000000000, b=2.0000000000000000, c=10.000000000000000.
b4688136 993// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 994// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
995// mean(f - f_GSL): 0.0000000000000000
996// variance(f - f_GSL): 0.0000000000000000
997// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
998const testcase_hyperg<double>
999data020[19] =
1000{
1001 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 1003 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 1005 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 1007 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 1009 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1010 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 1011 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1012 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 1013 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 1015 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 1017 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 1019 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 1021 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1022 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 1023 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 1025 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1026 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 1027 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 1029 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 1031 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1032 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 1033 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 1035 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1036 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 1037 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
b4688136 1038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1039};
1040const double toler020 = 2.5000000000000020e-13;
1041
1042// Test data for a=0.0000000000000000, b=5.0000000000000000, c=2.0000000000000000.
b4688136 1043// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1044// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1045// mean(f - f_GSL): 0.0000000000000000
1046// variance(f - f_GSL): 0.0000000000000000
1047// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1048const testcase_hyperg<double>
1049data021[19] =
1050{
1051 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1053 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1055 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1057 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1059 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1060 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1061 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1062 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1063 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1065 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1067 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1069 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1071 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1072 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1073 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1075 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1076 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1077 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1079 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1081 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1082 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1083 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1085 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1086 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1087 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1089};
1090const double toler021 = 2.5000000000000020e-13;
1091
1092// Test data for a=0.0000000000000000, b=5.0000000000000000, c=4.0000000000000000.
b4688136 1093// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1094// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1095// mean(f - f_GSL): 0.0000000000000000
1096// variance(f - f_GSL): 0.0000000000000000
1097// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1098const testcase_hyperg<double>
1099data022[19] =
1100{
1101 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1103 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1105 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1107 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1109 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1110 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1111 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1112 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1113 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1115 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1117 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1119 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1121 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1122 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1123 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1125 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1126 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1127 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1129 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1131 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1132 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1133 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1135 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1136 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1137 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1139};
1140const double toler022 = 2.5000000000000020e-13;
1141
1142// Test data for a=0.0000000000000000, b=5.0000000000000000, c=6.0000000000000000.
b4688136 1143// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1144// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1145// mean(f - f_GSL): 0.0000000000000000
1146// variance(f - f_GSL): 0.0000000000000000
1147// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1148const testcase_hyperg<double>
1149data023[19] =
1150{
1151 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1153 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1155 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1157 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1159 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1160 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1161 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1162 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1163 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1165 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1167 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1169 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1171 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1172 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1173 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1175 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1176 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1177 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1179 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1181 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1182 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1183 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1185 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1186 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1187 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1189};
1190const double toler023 = 2.5000000000000020e-13;
1191
1192// Test data for a=0.0000000000000000, b=5.0000000000000000, c=8.0000000000000000.
b4688136 1193// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1194// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1195// mean(f - f_GSL): 0.0000000000000000
1196// variance(f - f_GSL): 0.0000000000000000
1197// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1198const testcase_hyperg<double>
1199data024[19] =
1200{
1201 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1203 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1205 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1207 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1209 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1210 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1211 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1212 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1213 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1215 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1217 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1219 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1221 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1223 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1225 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1226 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1227 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1229 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1231 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1232 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1233 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1235 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1236 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1237 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1239};
1240const double toler024 = 2.5000000000000020e-13;
1241
1242// Test data for a=0.0000000000000000, b=5.0000000000000000, c=10.000000000000000.
b4688136 1243// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1244// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1245// mean(f - f_GSL): 0.0000000000000000
1246// variance(f - f_GSL): 0.0000000000000000
1247// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1248const testcase_hyperg<double>
1249data025[19] =
1250{
1251 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 1253 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 1255 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 1257 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 1259 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1260 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 1261 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1262 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 1263 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 1265 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 1267 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 1269 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 1271 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 1273 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 1275 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1276 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 1277 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 1279 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 1281 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1282 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 1283 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 1285 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1286 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 1287 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
b4688136 1288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1289};
1290const double toler025 = 2.5000000000000020e-13;
1291
1292// Test data for a=0.0000000000000000, b=10.000000000000000, c=2.0000000000000000.
b4688136 1293// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1294// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1295// mean(f - f_GSL): 0.0000000000000000
1296// variance(f - f_GSL): 0.0000000000000000
1297// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1298const testcase_hyperg<double>
1299data026[19] =
1300{
1301 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1303 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1305 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1307 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1309 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1310 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1311 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1312 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1313 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1315 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1317 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1319 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1321 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1322 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1323 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1325 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1326 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1327 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1329 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1331 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1332 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1333 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1335 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1336 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1337 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1339};
1340const double toler026 = 2.5000000000000020e-13;
1341
1342// Test data for a=0.0000000000000000, b=10.000000000000000, c=4.0000000000000000.
b4688136 1343// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1344// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1345// mean(f - f_GSL): 0.0000000000000000
1346// variance(f - f_GSL): 0.0000000000000000
1347// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1348const testcase_hyperg<double>
1349data027[19] =
1350{
1351 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1353 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1355 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1357 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1359 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1360 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1361 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1362 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1363 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1365 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1367 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1369 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1371 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1372 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1373 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1375 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1376 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1377 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1379 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1381 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1382 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1383 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1385 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1386 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1387 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1389};
1390const double toler027 = 2.5000000000000020e-13;
1391
1392// Test data for a=0.0000000000000000, b=10.000000000000000, c=6.0000000000000000.
b4688136 1393// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1394// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1395// mean(f - f_GSL): 0.0000000000000000
1396// variance(f - f_GSL): 0.0000000000000000
1397// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1398const testcase_hyperg<double>
1399data028[19] =
1400{
1401 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1403 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1405 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1407 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1409 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1410 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1411 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1412 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1413 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1415 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1417 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1419 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1421 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1422 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1423 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1425 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1426 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1427 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1429 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1431 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1432 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1433 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1435 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1436 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1437 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1439};
1440const double toler028 = 2.5000000000000020e-13;
1441
1442// Test data for a=0.0000000000000000, b=10.000000000000000, c=8.0000000000000000.
b4688136 1443// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1444// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1445// mean(f - f_GSL): 0.0000000000000000
1446// variance(f - f_GSL): 0.0000000000000000
1447// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1448const testcase_hyperg<double>
1449data029[19] =
1450{
1451 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1453 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1455 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1457 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1459 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1460 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1461 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1462 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1463 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1465 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1467 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1469 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1471 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1472 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1473 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1475 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1476 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1477 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1479 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1481 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1482 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1483 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1485 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1486 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1487 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1489};
1490const double toler029 = 2.5000000000000020e-13;
1491
1492// Test data for a=0.0000000000000000, b=10.000000000000000, c=10.000000000000000.
b4688136 1493// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1494// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1495// mean(f - f_GSL): 0.0000000000000000
1496// variance(f - f_GSL): 0.0000000000000000
1497// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1498const testcase_hyperg<double>
1499data030[19] =
1500{
1501 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 1503 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 1505 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 1507 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 1509 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1510 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 1511 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1512 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 1513 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 1515 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 1517 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 1519 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 1521 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1522 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 1523 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 1525 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1526 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 1527 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 1529 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 1531 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1532 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 1533 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 1535 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1536 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 1537 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
b4688136 1538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1539};
1540const double toler030 = 2.5000000000000020e-13;
1541
1542// Test data for a=0.0000000000000000, b=20.000000000000000, c=2.0000000000000000.
b4688136 1543// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1544// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1545// mean(f - f_GSL): 0.0000000000000000
1546// variance(f - f_GSL): 0.0000000000000000
1547// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1548const testcase_hyperg<double>
1549data031[19] =
1550{
1551 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1553 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1555 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1557 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1559 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1560 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1561 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1562 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1563 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1565 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1567 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1569 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1571 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1572 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1573 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1575 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1576 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1577 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1579 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1581 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1582 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1583 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1585 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1586 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1587 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1589};
1590const double toler031 = 2.5000000000000020e-13;
1591
1592// Test data for a=0.0000000000000000, b=20.000000000000000, c=4.0000000000000000.
b4688136 1593// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1594// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1595// mean(f - f_GSL): 0.0000000000000000
1596// variance(f - f_GSL): 0.0000000000000000
1597// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1598const testcase_hyperg<double>
1599data032[19] =
1600{
1601 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1603 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1605 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1607 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1609 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1610 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1611 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1612 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1613 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1615 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1617 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1619 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1621 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1622 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1623 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1625 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1626 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1627 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1629 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1631 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1632 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1633 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1635 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1636 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1637 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1639};
1640const double toler032 = 2.5000000000000020e-13;
1641
1642// Test data for a=0.0000000000000000, b=20.000000000000000, c=6.0000000000000000.
b4688136 1643// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1644// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1645// mean(f - f_GSL): 0.0000000000000000
1646// variance(f - f_GSL): 0.0000000000000000
1647// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1648const testcase_hyperg<double>
1649data033[19] =
1650{
1651 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1653 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1655 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1657 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1659 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1660 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1661 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1662 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1663 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1665 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1667 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1669 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1671 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1672 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1673 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1675 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1676 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1677 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1679 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1681 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1682 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1683 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1685 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1686 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1687 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1689};
1690const double toler033 = 2.5000000000000020e-13;
1691
1692// Test data for a=0.0000000000000000, b=20.000000000000000, c=8.0000000000000000.
b4688136 1693// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1694// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1695// mean(f - f_GSL): 0.0000000000000000
1696// variance(f - f_GSL): 0.0000000000000000
1697// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1698const testcase_hyperg<double>
1699data034[19] =
1700{
1701 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1703 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1705 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1707 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1709 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1710 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1711 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1713 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1715 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1717 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1719 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1721 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1723 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1725 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1727 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1729 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1731 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1732 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1733 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1735 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1736 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1737 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1739};
1740const double toler034 = 2.5000000000000020e-13;
1741
1742// Test data for a=0.0000000000000000, b=20.000000000000000, c=10.000000000000000.
b4688136 1743// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1744// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1745// mean(f - f_GSL): 0.0000000000000000
1746// variance(f - f_GSL): 0.0000000000000000
1747// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1748const testcase_hyperg<double>
1749data035[19] =
1750{
1751 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 1753 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 1755 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 1757 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 1759 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1760 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 1761 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1762 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 1763 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 1765 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 1767 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 1769 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 1771 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 1773 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 1775 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1776 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 1777 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 1779 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 1781 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1782 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 1783 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 1785 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1786 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 1787 { 1.0000000000000000, 0.0000000000000000, 20.000000000000000,
b4688136 1788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1789};
1790const double toler035 = 2.5000000000000020e-13;
1791
1792// Test data for a=0.50000000000000000, b=0.0000000000000000, c=2.0000000000000000.
b4688136 1793// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1794// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1795// mean(f - f_GSL): 0.0000000000000000
1796// variance(f - f_GSL): 0.0000000000000000
1797// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1798const testcase_hyperg<double>
1799data036[19] =
1800{
1801 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1803 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1805 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1807 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1809 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1810 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1811 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1812 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1813 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1815 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1817 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1819 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1821 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1822 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1823 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1825 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1826 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1827 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1829 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1831 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1832 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1833 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1835 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1836 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1837 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1839};
1840const double toler036 = 2.5000000000000020e-13;
1841
1842// Test data for a=0.50000000000000000, b=0.0000000000000000, c=4.0000000000000000.
b4688136 1843// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1844// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1845// mean(f - f_GSL): 0.0000000000000000
1846// variance(f - f_GSL): 0.0000000000000000
1847// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1848const testcase_hyperg<double>
1849data037[19] =
1850{
1851 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1853 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1855 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1857 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1859 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1860 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1861 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1862 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1863 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1865 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1867 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1869 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1871 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1872 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1873 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1875 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1876 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1877 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1879 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1881 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1882 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1883 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1885 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1886 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1887 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1889};
1890const double toler037 = 2.5000000000000020e-13;
1891
1892// Test data for a=0.50000000000000000, b=0.0000000000000000, c=6.0000000000000000.
b4688136 1893// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1894// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1895// mean(f - f_GSL): 0.0000000000000000
1896// variance(f - f_GSL): 0.0000000000000000
1897// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1898const testcase_hyperg<double>
1899data038[19] =
1900{
1901 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1903 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1905 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1907 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1909 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1910 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1911 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1912 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1913 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1915 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1917 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1919 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1921 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1922 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1923 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1925 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1926 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1927 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1929 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1931 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1932 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1933 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1935 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1936 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1937 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1939};
1940const double toler038 = 2.5000000000000020e-13;
1941
1942// Test data for a=0.50000000000000000, b=0.0000000000000000, c=8.0000000000000000.
b4688136 1943// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1944// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1945// mean(f - f_GSL): 0.0000000000000000
1946// variance(f - f_GSL): 0.0000000000000000
1947// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1948const testcase_hyperg<double>
1949data039[19] =
1950{
1951 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 1953 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 1955 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 1957 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 1959 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1960 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 1961 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1962 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 1963 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 1965 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 1967 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 1969 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 1971 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1972 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 1973 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 1975 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1976 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 1977 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 1979 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 1981 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1982 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 1983 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 1985 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1986 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 1987 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 1988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
1989};
1990const double toler039 = 2.5000000000000020e-13;
1991
1992// Test data for a=0.50000000000000000, b=0.0000000000000000, c=10.000000000000000.
b4688136 1993// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 1994// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
1995// mean(f - f_GSL): 0.0000000000000000
1996// variance(f - f_GSL): 0.0000000000000000
1997// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
1998const testcase_hyperg<double>
1999data040[19] =
2000{
2001 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 2003 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 2005 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 2007 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 2009 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2010 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 2011 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2012 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 2013 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 2015 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 2017 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 2019 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 2021 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2022 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 2023 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 2025 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2026 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 2027 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 2029 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 2031 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2032 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 2033 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 2035 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2036 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 2037 { 1.0000000000000000, 0.50000000000000000, 0.0000000000000000,
b4688136 2038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2039};
2040const double toler040 = 2.5000000000000020e-13;
2041
2042// Test data for a=0.50000000000000000, b=0.50000000000000000, c=2.0000000000000000.
b4688136
ESR
2043// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
2044// max(|f - f_GSL| / |f_GSL|): 3.7062685186203797e-16
2045// mean(f - f_GSL): 1.1686558153949016e-17
2046// variance(f - f_GSL): 1.0964410526798704e-32
2047// stddev(f - f_GSL): 1.0471108120346530e-16
2be75957
ESR
2048const testcase_hyperg<double>
2049data041[19] =
2050{
2051 { 0.91383715388743736, 0.50000000000000000, 0.50000000000000000,
b4688136 2052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2053 { 0.92151232618202372, 0.50000000000000000, 0.50000000000000000,
b4688136 2054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2055 { 0.92955086110354845, 0.50000000000000000, 0.50000000000000000,
b4688136 2056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2057 { 0.93798900119104855, 0.50000000000000000, 0.50000000000000000,
b4688136 2058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2059 { 0.94686887307107392, 0.50000000000000000, 0.50000000000000000,
b4688136 2060 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 2061 { 0.95623987262143295, 0.50000000000000000, 0.50000000000000000,
b4688136
ESR
2062 2.0000000000000000, -0.39999999999999991, 0.0 },
2063 { 0.96616049387450120, 0.50000000000000000, 0.50000000000000000,
2064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2065 { 0.97670078782187519, 0.50000000000000000, 0.50000000000000000,
b4688136 2066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2067 { 0.98794573712298384, 0.50000000000000000, 0.50000000000000000,
b4688136 2068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2069 { 1.0000000000000000, 0.50000000000000000, 0.50000000000000000,
b4688136 2070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2071 { 1.0129947682256604, 0.50000000000000000, 0.50000000000000000,
b4688136 2072 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2073 { 1.0270980168168973, 0.50000000000000000, 0.50000000000000000,
b4688136 2074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2075 { 1.0425304520063581, 0.50000000000000000, 0.50000000000000000,
b4688136 2076 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2077 { 1.0595915916161471, 0.50000000000000000, 0.50000000000000000,
b4688136 2078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2079 { 1.0787052023767585, 0.50000000000000000, 0.50000000000000000,
b4688136 2080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2081 { 1.1005053642285867, 0.50000000000000000, 0.50000000000000000,
b4688136 2082 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2083 { 1.1260196351148746, 0.50000000000000000, 0.50000000000000000,
b4688136 2084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2085 { 1.1571341977338991, 0.50000000000000000, 0.50000000000000000,
b4688136
ESR
2086 2.0000000000000000, 0.80000000000000004, 0.0 },
2087 { 1.1982111053717452, 0.50000000000000000, 0.50000000000000000,
2088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2089};
2090const double toler041 = 2.5000000000000020e-13;
2091
2092// Test data for a=0.50000000000000000, b=0.50000000000000000, c=4.0000000000000000.
b4688136
ESR
2093// max(|f - f_GSL|): 3.3306690738754696e-16 at index 8
2094// max(|f - f_GSL| / |f_GSL|): 3.3511582377535958e-16
2095// mean(f - f_GSL): 4.0902953538821554e-17
2096// variance(f - f_GSL): 1.9241779613319129e-33
2097// stddev(f - f_GSL): 4.3865452936586813e-17
2be75957
ESR
2098const testcase_hyperg<double>
2099data042[19] =
2100{
2101 { 0.95255425675562699, 0.50000000000000000, 0.50000000000000000,
b4688136 2102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2103 { 0.95712841850078267, 0.50000000000000000, 0.50000000000000000,
b4688136 2104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2105 { 0.96184734120034554, 0.50000000000000000, 0.50000000000000000,
b4688136 2106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2107 { 0.96672141255196176, 0.50000000000000000, 0.50000000000000000,
b4688136 2108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2109 { 0.97176228710138646, 0.50000000000000000, 0.50000000000000000,
b4688136
ESR
2110 4.0000000000000000, -0.50000000000000000, 0.0 },
2111 { 0.97698311668286308, 0.50000000000000000, 0.50000000000000000,
2112 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 2113 { 0.98239883902556036, 0.50000000000000000, 0.50000000000000000,
b4688136 2114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2115 { 0.98802654401961032, 0.50000000000000000, 0.50000000000000000,
b4688136 2116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2117 { 0.99388594556732701, 0.50000000000000000, 0.50000000000000000,
b4688136 2118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2119 { 1.0000000000000000, 0.50000000000000000, 0.50000000000000000,
b4688136 2120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2121 { 1.0063957328951061, 0.50000000000000000, 0.50000000000000000,
b4688136 2122 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2123 { 1.0131053706824598, 0.50000000000000000, 0.50000000000000000,
b4688136 2124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2125 { 1.0201679332118803, 0.50000000000000000, 0.50000000000000000,
b4688136 2126 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2127 { 1.0276315524377497, 0.50000000000000000, 0.50000000000000000,
b4688136 2128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2129 { 1.0355569942816882, 0.50000000000000000, 0.50000000000000000,
b4688136 2130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2131 { 1.0440233080381554, 0.50000000000000000, 0.50000000000000000,
b4688136 2132 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2133 { 1.0531375808028993, 0.50000000000000000, 0.50000000000000000,
b4688136 2134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2135 { 1.0630536689840200, 0.50000000000000000, 0.50000000000000000,
b4688136 2136 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2137 { 1.0740149570414563, 0.50000000000000000, 0.50000000000000000,
b4688136 2138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2139};
2140const double toler042 = 2.5000000000000020e-13;
2141
2142// Test data for a=0.50000000000000000, b=0.50000000000000000, c=6.0000000000000000.
b4688136 2143// max(|f - f_GSL|): 5.5511151231257827e-16 at index 7
2be75957 2144// max(|f - f_GSL| / |f_GSL|): 5.5963253065363064e-16
b4688136
ESR
2145// mean(f - f_GSL): 5.8432790769745078e-18
2146// variance(f - f_GSL): 2.0022663489405960e-36
2147// stddev(f - f_GSL): 1.4150146108576393e-18
2be75957
ESR
2148const testcase_hyperg<double>
2149data043[19] =
2150{
2151 { 0.96694084713323880, 0.50000000000000000, 0.50000000000000000,
b4688136 2152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2153 { 0.97024454918852632, 0.50000000000000000, 0.50000000000000000,
b4688136 2154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2155 { 0.97362815600391439, 0.50000000000000000, 0.50000000000000000,
b4688136 2156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2157 { 0.97709622064205104, 0.50000000000000000, 0.50000000000000000,
b4688136 2158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2159 { 0.98065374770570635, 0.50000000000000000, 0.50000000000000000,
b4688136
ESR
2160 6.0000000000000000, -0.50000000000000000, 0.0 },
2161 { 0.98430626119885523, 0.50000000000000000, 0.50000000000000000,
2162 6.0000000000000000, -0.39999999999999991, 0.0 },
2163 { 0.98805988669621037, 0.50000000000000000, 0.50000000000000000,
2164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2165 { 0.99192145185739655, 0.50000000000000000, 0.50000000000000000,
b4688136 2166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2167 { 0.99589861079880937, 0.50000000000000000, 0.50000000000000000,
b4688136 2168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2169 { 1.0000000000000000, 0.50000000000000000, 0.50000000000000000,
b4688136 2170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2171 { 1.0042354366729904, 0.50000000000000000, 0.50000000000000000,
b4688136 2172 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2173 { 1.0086161755545404, 0.50000000000000000, 0.50000000000000000,
b4688136 2174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2175 { 1.0131552481403503, 0.50000000000000000, 0.50000000000000000,
b4688136 2176 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2177 { 1.0178679218284707, 0.50000000000000000, 0.50000000000000000,
b4688136 2178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2179 { 1.0227723400312978, 0.50000000000000000, 0.50000000000000000,
b4688136 2180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2181 { 1.0278904483717863, 0.50000000000000000, 0.50000000000000000,
b4688136
ESR
2182 6.0000000000000000, 0.60000000000000009, 0.0 },
2183 { 1.0332494012993474, 0.50000000000000000, 0.50000000000000000,
2184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2185 { 1.0388838453357794, 0.50000000000000000, 0.50000000000000000,
b4688136 2186 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2187 { 1.0448400142331342, 0.50000000000000000, 0.50000000000000000,
b4688136 2188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2189};
2190const double toler043 = 2.5000000000000020e-13;
2191
2192// Test data for a=0.50000000000000000, b=0.50000000000000000, c=8.0000000000000000.
b4688136 2193// max(|f - f_GSL|): 3.3306690738754696e-16 at index 7
2be75957 2194// max(|f - f_GSL| / |f_GSL|): 3.3511105824376917e-16
b4688136
ESR
2195// mean(f - f_GSL): -1.7529837230923523e-17
2196// variance(f - f_GSL): 3.3658097325691423e-33
2197// stddev(f - f_GSL): 5.8015599045163211e-17
2be75957
ESR
2198const testcase_hyperg<double>
2199data044[19] =
2200{
2201 { 0.97456073259047449, 0.50000000000000000, 0.50000000000000000,
b4688136 2202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2203 { 0.97715689327833399, 0.50000000000000000, 0.50000000000000000,
b4688136 2204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2205 { 0.97980416868943110, 0.50000000000000000, 0.50000000000000000,
b4688136 2206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2207 { 0.98250498942832487, 0.50000000000000000, 0.50000000000000000,
b4688136 2208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2209 { 0.98526199049760810, 0.50000000000000000, 0.50000000000000000,
b4688136 2210 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 2211 { 0.98807803762902791, 0.50000000000000000, 0.50000000000000000,
b4688136
ESR
2212 8.0000000000000000, -0.39999999999999991, 0.0 },
2213 { 0.99095625840920332, 0.50000000000000000, 0.50000000000000000,
2214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2215 { 0.99390007937387959, 0.50000000000000000, 0.50000000000000000,
b4688136 2216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2217 { 0.99691327061866730, 0.50000000000000000, 0.50000000000000000,
b4688136 2218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2219 { 1.0000000000000000, 0.50000000000000000, 0.50000000000000000,
b4688136 2220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2221 { 1.0031648997547440, 0.50000000000000000, 0.50000000000000000,
b4688136 2222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2223 { 1.0064131494767281, 0.50000000000000000, 0.50000000000000000,
b4688136 2224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2225 { 1.0097505810668461, 0.50000000000000000, 0.50000000000000000,
b4688136 2226 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2227 { 1.0131838138968663, 0.50000000000000000, 0.50000000000000000,
b4688136 2228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2229 { 1.0167204326938339, 0.50000000000000000, 0.50000000000000000,
b4688136 2230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2231 { 1.0203692279382193, 0.50000000000000000, 0.50000000000000000,
b4688136 2232 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2233 { 1.0241405318057402, 0.50000000000000000, 0.50000000000000000,
b4688136 2234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2235 { 1.0280467087844301, 0.50000000000000000, 0.50000000000000000,
b4688136 2236 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2237 { 1.0321029179180026, 0.50000000000000000, 0.50000000000000000,
b4688136 2238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2239};
2240const double toler044 = 2.5000000000000020e-13;
2241
2242// Test data for a=0.50000000000000000, b=0.50000000000000000, c=10.000000000000000.
b4688136
ESR
2243// max(|f - f_GSL|): 1.1102230246251565e-16 at index 7
2244// max(|f - f_GSL| / |f_GSL|): 1.1156911610791411e-16
2245// mean(f - f_GSL): 0.0000000000000000
2246// variance(f - f_GSL): 0.0000000000000000
2247// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
2248const testcase_hyperg<double>
2249data045[19] =
2250{
2251 { 0.97930223035212138, 0.50000000000000000, 0.50000000000000000,
b4688136 2252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 2253 { 0.98144406855076427, 0.50000000000000000, 0.50000000000000000,
b4688136 2254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 2255 { 0.98362155940297280, 0.50000000000000000, 0.50000000000000000,
b4688136 2256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 2257 { 0.98583616201745783, 0.50000000000000000, 0.50000000000000000,
b4688136 2258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 2259 { 0.98808944235385032, 0.50000000000000000, 0.50000000000000000,
b4688136 2260 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 2261 { 0.99038308530635433, 0.50000000000000000, 0.50000000000000000,
b4688136
ESR
2262 10.000000000000000, -0.39999999999999991, 0.0 },
2263 { 0.99271890872975732, 0.50000000000000000, 0.50000000000000000,
2264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 2265 { 0.99509887982916734, 0.50000000000000000, 0.50000000000000000,
b4688136 2266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 2267 { 0.99752513445413604, 0.50000000000000000, 0.50000000000000000,
b4688136 2268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 2269 { 1.0000000000000000, 0.50000000000000000, 0.50000000000000000,
b4688136 2270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 2271 { 1.0025260228440118, 0.50000000000000000, 0.50000000000000000,
b4688136 2272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 2273 { 1.0051060015613384, 0.50000000000000000, 0.50000000000000000,
b4688136 2274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 2275 { 1.0077430276253163, 0.50000000000000000, 0.50000000000000000,
b4688136 2276 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 2277 { 1.0104405359789990, 0.50000000000000000, 0.50000000000000000,
b4688136 2278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 2279 { 1.0132023689128868, 0.50000000000000000, 0.50000000000000000,
b4688136 2280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 2281 { 1.0160328583559475, 0.50000000000000000, 0.50000000000000000,
b4688136 2282 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 2283 { 1.0189369344885053, 0.50000000000000000, 0.50000000000000000,
b4688136 2284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 2285 { 1.0219202735809589, 0.50000000000000000, 0.50000000000000000,
b4688136 2286 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 2287 { 1.0249895076611382, 0.50000000000000000, 0.50000000000000000,
b4688136 2288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2289};
2290const double toler045 = 2.5000000000000020e-13;
2291
2292// Test data for a=0.50000000000000000, b=1.0000000000000000, c=2.0000000000000000.
b4688136
ESR
2293// max(|f - f_GSL|): 8.8817841970012523e-16 at index 18
2294// max(|f - f_GSL| / |f_GSL|): 5.8452254859313207e-16
2295// mean(f - f_GSL): 8.1805907077643109e-17
2296// variance(f - f_GSL): 3.8131160349224712e-32
2297// stddev(f - f_GSL): 1.9527201629835421e-16
2be75957
ESR
2298const testcase_hyperg<double>
2299data046[19] =
2300{
2301 { 0.84089972268671531, 0.50000000000000000, 1.0000000000000000,
b4688136 2302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2303 { 0.85410196624968460, 0.50000000000000000, 1.0000000000000000,
b4688136 2304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2305 { 0.86811566011579955, 0.50000000000000000, 1.0000000000000000,
b4688136 2306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2307 { 0.88303688022450522, 0.50000000000000000, 1.0000000000000000,
b4688136 2308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2309 { 0.89897948556635621, 0.50000000000000000, 1.0000000000000000,
b4688136 2310 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 2311 { 0.91607978309961580, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2312 2.0000000000000000, -0.39999999999999991, 0.0 },
2313 { 0.93450283399425327, 0.50000000000000000, 1.0000000000000000,
2314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2315 { 0.95445115010332193, 0.50000000000000000, 1.0000000000000000,
b4688136 2316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2317 { 0.97617696340303095, 0.50000000000000000, 1.0000000000000000,
b4688136 2318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2319 { 1.0000000000000000, 0.50000000000000000, 1.0000000000000000,
b4688136 2320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2321 { 1.0263340389897240, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2322 2.0000000000000000, 0.10000000000000009, 0.0 },
2323 { 1.0557280900008412, 0.50000000000000000, 1.0000000000000000,
2324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2325 { 1.0889331564394962, 0.50000000000000000, 1.0000000000000000,
b4688136 2326 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2327 { 1.1270166537925830, 0.50000000000000000, 1.0000000000000000,
b4688136 2328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2329 { 1.1715728752538095, 0.50000000000000000, 1.0000000000000000,
b4688136 2330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2331 { 1.2251482265544145, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2332 2.0000000000000000, 0.60000000000000009, 0.0 },
2333 { 1.2922212642709543, 0.50000000000000000, 1.0000000000000000,
2334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2335 { 1.3819660112501042, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2336 2.0000000000000000, 0.80000000000000004, 0.0 },
2337 { 1.5194938532959121, 0.50000000000000000, 1.0000000000000000,
2338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2339};
2340const double toler046 = 2.5000000000000020e-13;
2341
2342// Test data for a=0.50000000000000000, b=1.0000000000000000, c=4.0000000000000000.
b4688136
ESR
2343// max(|f - f_GSL|): 2.2204460492503131e-16 at index 17
2344// max(|f - f_GSL| / |f_GSL|): 1.9508457915403988e-16
2345// mean(f - f_GSL): 2.3373116307898031e-17
2346// variance(f - f_GSL): 2.3146198993753289e-33
2347// stddev(f - f_GSL): 4.8110496769159731e-17
2be75957
ESR
2348const testcase_hyperg<double>
2349data047[19] =
2350{
2351 { 0.90992197313391454, 0.50000000000000000, 1.0000000000000000,
b4688136 2352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2353 { 0.91822592662244484, 0.50000000000000000, 1.0000000000000000,
b4688136 2354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2355 { 0.92687104566419554, 0.50000000000000000, 1.0000000000000000,
b4688136 2356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2357 { 0.93588628166548848, 0.50000000000000000, 1.0000000000000000,
b4688136 2358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2359 { 0.94530459215552909, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2360 4.0000000000000000, -0.50000000000000000, 0.0 },
2361 { 0.95516374875247434, 0.50000000000000000, 1.0000000000000000,
2362 4.0000000000000000, -0.39999999999999991, 0.0 },
2363 { 0.96550736800511816, 0.50000000000000000, 1.0000000000000000,
2364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2365 { 0.97638624595136270, 0.50000000000000000, 1.0000000000000000,
b4688136 2366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2367 { 0.98786011482678993, 0.50000000000000000, 1.0000000000000000,
b4688136 2368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2369 { 1.0000000000000000, 0.50000000000000000, 1.0000000000000000,
b4688136 2370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2371 { 1.0128914530682316, 0.50000000000000000, 1.0000000000000000,
b4688136 2372 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2373 { 1.0266391040215350, 0.50000000000000000, 1.0000000000000000,
b4688136 2374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2375 { 1.0413732738729464, 0.50000000000000000, 1.0000000000000000,
b4688136 2376 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2377 { 1.0572599536532992, 0.50000000000000000, 1.0000000000000000,
b4688136 2378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2379 { 1.0745166004060953, 0.50000000000000000, 1.0000000000000000,
b4688136 2380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2381 { 1.0934387388831386, 0.50000000000000000, 1.0000000000000000,
b4688136 2382 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2383 { 1.1144486980714641, 0.50000000000000000, 1.0000000000000000,
b4688136 2384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2385 { 1.1381966011250106, 0.50000000000000000, 1.0000000000000000,
b4688136 2386 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2387 { 1.1658171625342397, 0.50000000000000000, 1.0000000000000000,
b4688136 2388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2389};
2390const double toler047 = 2.5000000000000020e-13;
2391
2392// Test data for a=0.50000000000000000, b=1.0000000000000000, c=6.0000000000000000.
b4688136 2393// max(|f - f_GSL|): 4.4408920985006262e-16 at index 7
2be75957 2394// max(|f - f_GSL| / |f_GSL|): 4.5130734546221216e-16
b4688136
ESR
2395// mean(f - f_GSL): 4.6746232615796062e-17
2396// variance(f - f_GSL): 1.2814504633219814e-34
2397// stddev(f - f_GSL): 1.1320116886861114e-17
2be75957
ESR
2398const testcase_hyperg<double>
2399data048[19] =
2400{
2401 { 0.93641908369732896, 0.50000000000000000, 1.0000000000000000,
b4688136 2402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2403 { 0.94256349654111271, 0.50000000000000000, 1.0000000000000000,
b4688136 2404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2405 { 0.94890138508461319, 0.50000000000000000, 1.0000000000000000,
b4688136 2406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2407 { 0.95544578858430029, 0.50000000000000000, 1.0000000000000000,
b4688136 2408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2409 { 0.96221121193620762, 0.50000000000000000, 1.0000000000000000,
b4688136 2410 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 2411 { 0.96921386948293542, 0.50000000000000000, 1.0000000000000000,
b4688136 2412 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 2413 { 0.97647198488394704, 0.50000000000000000, 1.0000000000000000,
b4688136 2414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2415 { 0.98400616412578656, 0.50000000000000000, 1.0000000000000000,
b4688136 2416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2417 { 0.99183986544963032, 0.50000000000000000, 1.0000000000000000,
b4688136 2418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2419 { 1.0000000000000000, 0.50000000000000000, 1.0000000000000000,
b4688136 2420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2421 { 1.0085177124149158, 0.50000000000000000, 1.0000000000000000,
b4688136 2422 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2423 { 1.0174294150407122, 0.50000000000000000, 1.0000000000000000,
b4688136 2424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2425 { 1.0267781897388850, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2426 6.0000000000000000, 0.30000000000000004, 0.0 },
2427 { 1.0366157405967287, 0.50000000000000000, 1.0000000000000000,
2428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2429 { 1.0470052068648839, 0.50000000000000000, 1.0000000000000000,
b4688136 2430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2431 { 1.0580253905513313, 0.50000000000000000, 1.0000000000000000,
b4688136 2432 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2433 { 1.0697774741209765, 0.50000000000000000, 1.0000000000000000,
b4688136 2434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2435 { 1.0823965556448414, 0.50000000000000000, 1.0000000000000000,
b4688136 2436 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2437 { 1.0960739512057103, 0.50000000000000000, 1.0000000000000000,
b4688136 2438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2439};
2440const double toler048 = 2.5000000000000020e-13;
2441
2442// Test data for a=0.50000000000000000, b=1.0000000000000000, c=8.0000000000000000.
b4688136
ESR
2443// max(|f - f_GSL|): 2.2204460492503131e-16 at index 7
2444// max(|f - f_GSL| / |f_GSL|): 2.2476491960642283e-16
2445// mean(f - f_GSL): -5.8432790769745078e-18
2446// variance(f - f_GSL): 2.0022663489405960e-36
2447// stddev(f - f_GSL): 1.4150146108576393e-18
2be75957
ESR
2448const testcase_hyperg<double>
2449data049[19] =
2450{
2451 { 0.95069883346936235, 0.50000000000000000, 1.0000000000000000,
b4688136 2452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2453 { 0.95559618047704131, 0.50000000000000000, 1.0000000000000000,
b4688136 2454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2455 { 0.96061938755931664, 0.50000000000000000, 1.0000000000000000,
b4688136 2456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2457 { 0.96577553912851333, 0.50000000000000000, 1.0000000000000000,
b4688136 2458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2459 { 0.97107239473807716, 0.50000000000000000, 1.0000000000000000,
b4688136 2460 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 2461 { 0.97651848528588481, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2462 8.0000000000000000, -0.39999999999999991, 0.0 },
2463 { 0.98212322830227128, 0.50000000000000000, 1.0000000000000000,
2464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2465 { 0.98789706736195781, 0.50000000000000000, 1.0000000000000000,
b4688136 2466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2467 { 0.99385164237825074, 0.50000000000000000, 1.0000000000000000,
b4688136 2468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2469 { 1.0000000000000000, 0.50000000000000000, 1.0000000000000000,
b4688136 2470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2471 { 1.0063568569383123, 0.50000000000000000, 1.0000000000000000,
b4688136 2472 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2473 { 1.0129389344715818, 0.50000000000000000, 1.0000000000000000,
b4688136 2474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2475 { 1.0197653907773940, 0.50000000000000000, 1.0000000000000000,
b4688136 2476 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2477 { 1.0268583912277143, 0.50000000000000000, 1.0000000000000000,
b4688136 2478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2479 { 1.0342438793937092, 0.50000000000000000, 1.0000000000000000,
b4688136 2480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2481 { 1.0419526514766855, 0.50000000000000000, 1.0000000000000000,
b4688136 2482 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2483 { 1.0500219124976327, 0.50000000000000000, 1.0000000000000000,
b4688136 2484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2485 { 1.0584976491907043, 0.50000000000000000, 1.0000000000000000,
b4688136 2486 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2487 { 1.0674385240268101, 0.50000000000000000, 1.0000000000000000,
b4688136 2488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2489};
2490const double toler049 = 2.5000000000000020e-13;
2491
2492// Test data for a=0.50000000000000000, b=1.0000000000000000, c=10.000000000000000.
b4688136
ESR
2493// max(|f - f_GSL|): 0.0000000000000000 at index 0
2494// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
2495// mean(f - f_GSL): 0.0000000000000000
2496// variance(f - f_GSL): 0.0000000000000000
2497// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
2498const testcase_hyperg<double>
2499data050[19] =
2500{
2501 { 0.95968319138913905, 0.50000000000000000, 1.0000000000000000,
b4688136 2502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 2503 { 0.96376169072755802, 0.50000000000000000, 1.0000000000000000,
b4688136 2504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 2505 { 0.96792900082729372, 0.50000000000000000, 1.0000000000000000,
b4688136 2506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 2507 { 0.97218942798115737, 0.50000000000000000, 1.0000000000000000,
b4688136 2508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 2509 { 0.97654763592586835, 0.50000000000000000, 1.0000000000000000,
b4688136
ESR
2510 10.000000000000000, -0.50000000000000000, 0.0 },
2511 { 0.98100869054353890, 0.50000000000000000, 1.0000000000000000,
2512 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 2513 { 0.98557811238699278, 0.50000000000000000, 1.0000000000000000,
b4688136 2514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 2515 { 0.99026193885795544, 0.50000000000000000, 1.0000000000000000,
b4688136 2516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 2517 { 0.99506679842072221, 0.50000000000000000, 1.0000000000000000,
b4688136 2518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 2519 { 1.0000000000000000, 0.50000000000000000, 1.0000000000000000,
b4688136 2520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 2521 { 1.0050696417919618, 0.50000000000000000, 1.0000000000000000,
b4688136 2522 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 2523 { 1.0102847452747090, 0.50000000000000000, 1.0000000000000000,
b4688136 2524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 2525 { 1.0156554225057022, 0.50000000000000000, 1.0000000000000000,
b4688136 2526 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 2527 { 1.0211930882963096, 0.50000000000000000, 1.0000000000000000,
b4688136 2528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 2529 { 1.0269107343740711, 0.50000000000000000, 1.0000000000000000,
b4688136 2530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 2531 { 1.0328232917216298, 0.50000000000000000, 1.0000000000000000,
b4688136 2532 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 2533 { 1.0389481230247195, 0.50000000000000000, 1.0000000000000000,
b4688136 2534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 2535 { 1.0453057164134614, 0.50000000000000000, 1.0000000000000000,
b4688136 2536 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 2537 { 1.0519207114461246, 0.50000000000000000, 1.0000000000000000,
b4688136 2538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2539};
2540const double toler050 = 2.5000000000000020e-13;
2541
2542// Test data for a=0.50000000000000000, b=2.0000000000000000, c=2.0000000000000000.
b4688136
ESR
2543// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
2544// max(|f - f_GSL| / |f_GSL|): 1.8577584504832499e-16
2545// mean(f - f_GSL): 5.8432790769745078e-18
2546// variance(f - f_GSL): 1.1262748212790853e-32
2547// stddev(f - f_GSL): 1.0612609581432294e-16
2be75957
ESR
2548const testcase_hyperg<double>
2549data051[19] =
2550{
b4688136
ESR
2551 { 0.72547625011001160, 0.50000000000000000, 2.0000000000000000,
2552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2553 { 0.74535599249992990, 0.50000000000000000, 2.0000000000000000,
b4688136 2554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2555 { 0.76696498884737041, 0.50000000000000000, 2.0000000000000000,
b4688136 2556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2557 { 0.79056941504209477, 0.50000000000000000, 2.0000000000000000,
b4688136 2558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2559 { 0.81649658092772603, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2560 2.0000000000000000, -0.50000000000000000, 0.0 },
2561 { 0.84515425472851669, 0.50000000000000000, 2.0000000000000000,
2562 2.0000000000000000, -0.39999999999999991, 0.0 },
2563 { 0.87705801930702931, 0.50000000000000000, 2.0000000000000000,
2564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2565 { 0.91287092917527690, 0.50000000000000000, 2.0000000000000000,
b4688136 2566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2567 { 0.95346258924559224, 0.50000000000000000, 2.0000000000000000,
b4688136 2568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2569 { 1.0000000000000000, 0.50000000000000000, 2.0000000000000000,
b4688136 2570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2571 { 1.0540925533894598, 0.50000000000000000, 2.0000000000000000,
b4688136 2572 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2573 { 1.1180339887498949, 0.50000000000000000, 2.0000000000000000,
b4688136 2574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2575 { 1.1952286093343938, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2576 2.0000000000000000, 0.30000000000000004, 0.0 },
2577 { 1.2909944487358058, 0.50000000000000000, 2.0000000000000000,
2578 2.0000000000000000, 0.40000000000000013, 0.0 },
2579 { 1.4142135623730951, 0.50000000000000000, 2.0000000000000000,
2580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2581 { 1.5811388300841900, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2582 2.0000000000000000, 0.60000000000000009, 0.0 },
2583 { 1.8257418583505542, 0.50000000000000000, 2.0000000000000000,
2584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2585 { 2.2360679774997898, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2586 2.0000000000000000, 0.80000000000000004, 0.0 },
2587 { 3.1622776601683809, 0.50000000000000000, 2.0000000000000000,
2588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2589};
2590const double toler051 = 2.5000000000000020e-13;
2591
2592// Test data for a=0.50000000000000000, b=2.0000000000000000, c=4.0000000000000000.
b4688136
ESR
2593// max(|f - f_GSL|): 6.6613381477509392e-16 at index 18
2594// max(|f - f_GSL| / |f_GSL|): 4.6340403913587147e-16
2595// mean(f - f_GSL): 7.5962628000668607e-17
2596// variance(f - f_GSL): 2.0425119025543020e-32
2597// stddev(f - f_GSL): 1.4291647569662155e-16
2be75957
ESR
2598const testcase_hyperg<double>
2599data052[19] =
2600{
2601 { 0.83664260086443765, 0.50000000000000000, 2.0000000000000000,
b4688136 2602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2603 { 0.85046584300227079, 0.50000000000000000, 2.0000000000000000,
b4688136 2604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2605 { 0.86509574979651649, 0.50000000000000000, 2.0000000000000000,
b4688136 2606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2607 { 0.88062082573041911, 0.50000000000000000, 2.0000000000000000,
b4688136 2608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2609 { 0.89714464248521597, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2610 4.0000000000000000, -0.50000000000000000, 0.0 },
2611 { 0.91478946588967569, 0.50000000000000000, 2.0000000000000000,
2612 4.0000000000000000, -0.39999999999999991, 0.0 },
2613 { 0.93370105322348607, 0.50000000000000000, 2.0000000000000000,
2614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2615 { 0.95405511057700887, 0.50000000000000000, 2.0000000000000000,
b4688136 2616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2617 { 0.97606616007978142, 0.50000000000000000, 2.0000000000000000,
b4688136 2618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2619 { 1.0000000000000000, 0.50000000000000000, 2.0000000000000000,
b4688136 2620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2621 { 1.0261916902334731, 0.50000000000000000, 2.0000000000000000,
b4688136 2622 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2623 { 1.0550723519434702, 0.50000000000000000, 2.0000000000000000,
b4688136 2624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2625 { 1.0872106588188091, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2626 4.0000000000000000, 0.30000000000000004, 0.0 },
2627 { 1.1233801699379022, 0.50000000000000000, 2.0000000000000000,
2628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2629 { 1.1646752981725688, 0.50000000000000000, 2.0000000000000000,
b4688136 2630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2631 { 1.2127272514219511, 0.50000000000000000, 2.0000000000000000,
b4688136 2632 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2633 { 1.2701518651068637, 0.50000000000000000, 2.0000000000000000,
b4688136 2634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2635 { 1.3416407864998725, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2636 4.0000000000000000, 0.80000000000000004, 0.0 },
2637 { 1.4374795179111106, 0.50000000000000000, 2.0000000000000000,
2638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2639};
2640const double toler052 = 2.5000000000000020e-13;
2641
2642// Test data for a=0.50000000000000000, b=2.0000000000000000, c=6.0000000000000000.
b4688136 2643// max(|f - f_GSL|): 3.3306690738754696e-16 at index 8
2be75957 2644// max(|f - f_GSL| / |f_GSL|): 3.3853500746952663e-16
b4688136
ESR
2645// mean(f - f_GSL): 1.1686558153949016e-17
2646// variance(f - f_GSL): 2.5949371882270124e-33
2647// stddev(f - f_GSL): 5.0940525990875012e-17
2be75957
ESR
2648const testcase_hyperg<double>
2649data053[19] =
2650{
2651 { 0.88195381730235822, 0.50000000000000000, 2.0000000000000000,
b4688136 2652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2653 { 0.89265078469555081, 0.50000000000000000, 2.0000000000000000,
b4688136 2654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2655 { 0.90382937908303673, 0.50000000000000000, 2.0000000000000000,
b4688136 2656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2657 { 0.91553161389880600, 0.50000000000000000, 2.0000000000000000,
b4688136 2658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2659 { 0.92780530349281509, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2660 6.0000000000000000, -0.50000000000000000, 0.0 },
2661 { 0.94070521140346020, 0.50000000000000000, 2.0000000000000000,
2662 6.0000000000000000, -0.39999999999999991, 0.0 },
2663 { 0.95429450630523349, 0.50000000000000000, 2.0000000000000000,
2664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2665 { 0.96864663325785849, 0.50000000000000000, 2.0000000000000000,
b4688136 2666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2667 { 0.98384775588541795, 0.50000000000000000, 2.0000000000000000,
b4688136 2668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2669 { 1.0000000000000000, 0.50000000000000000, 2.0000000000000000,
b4688136 2670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2671 { 1.0172258496884334, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2672 6.0000000000000000, 0.10000000000000009, 0.0 },
2673 { 1.0356742479163461, 0.50000000000000000, 2.0000000000000000,
2674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2675 { 1.0555293036908924, 0.50000000000000000, 2.0000000000000000,
b4688136 2676 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2677 { 1.0770231491562379, 0.50000000000000000, 2.0000000000000000,
b4688136 2678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2679 { 1.1004557416484888, 0.50000000000000000, 2.0000000000000000,
b4688136 2680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2681 { 1.1262270515731978, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2682 6.0000000000000000, 0.60000000000000009, 0.0 },
2683 { 1.1548932919125088, 0.50000000000000000, 2.0000000000000000,
2684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2685 { 1.1872757758134724, 0.50000000000000000, 2.0000000000000000,
b4688136 2686 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2687 { 1.2247091713458949, 0.50000000000000000, 2.0000000000000000,
b4688136 2688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2689};
2690const double toler053 = 2.5000000000000020e-13;
2691
2692// Test data for a=0.50000000000000000, b=2.0000000000000000, c=8.0000000000000000.
b4688136
ESR
2693// max(|f - f_GSL|): 2.2204460492503131e-16 at index 17
2694// max(|f - f_GSL| / |f_GSL|): 1.9683492716399738e-16
2695// mean(f - f_GSL): 1.7529837230923523e-17
2696// variance(f - f_GSL): 2.4527762774522302e-33
2697// stddev(f - f_GSL): 4.9525511380017369e-17
2be75957
ESR
2698const testcase_hyperg<double>
2699data054[19] =
2700{
2701 { 0.90716919697107279, 0.50000000000000000, 2.0000000000000000,
b4688136 2702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2703 { 0.91592299407142508, 0.50000000000000000, 2.0000000000000000,
b4688136 2704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2705 { 0.92500027075874192, 0.50000000000000000, 2.0000000000000000,
b4688136 2706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2707 { 0.93442464185467122, 0.50000000000000000, 2.0000000000000000,
b4688136 2708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2709 { 0.94422248683737076, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2710 8.0000000000000000, -0.50000000000000000, 0.0 },
2711 { 0.95442341810133347, 0.50000000000000000, 2.0000000000000000,
2712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 2713 { 0.96506085725516355, 0.50000000000000000, 2.0000000000000000,
b4688136 2714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2715 { 0.97617275213704069, 0.50000000000000000, 2.0000000000000000,
b4688136 2716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2717 { 0.98780247986309799, 0.50000000000000000, 2.0000000000000000,
b4688136 2718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2719 { 1.0000000000000000, 0.50000000000000000, 2.0000000000000000,
b4688136 2720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2721 { 1.0128233505813447, 0.50000000000000000, 2.0000000000000000,
b4688136 2722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2723 { 1.0263406246541855, 0.50000000000000000, 2.0000000000000000,
b4688136 2724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2725 { 1.0406326381700366, 0.50000000000000000, 2.0000000000000000,
b4688136 2726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2727 { 1.0557966239802845, 0.50000000000000000, 2.0000000000000000,
b4688136 2728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2729 { 1.0719515075786321, 0.50000000000000000, 2.0000000000000000,
b4688136 2730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2731 { 1.0892457392422055, 0.50000000000000000, 2.0000000000000000,
b4688136 2732 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2733 { 1.1078695188000958, 0.50000000000000000, 2.0000000000000000,
b4688136 2734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2735 { 1.1280752258974340, 0.50000000000000000, 2.0000000000000000,
b4688136 2736 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2737 { 1.1502152002706476, 0.50000000000000000, 2.0000000000000000,
b4688136 2738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2739};
2740const double toler054 = 2.5000000000000020e-13;
2741
2742// Test data for a=0.50000000000000000, b=2.0000000000000000, c=10.000000000000000.
b4688136
ESR
2743// max(|f - f_GSL|): 3.3306690738754696e-16 at index 8
2744// max(|f - f_GSL| / |f_GSL|): 3.3636359087105992e-16
2745// mean(f - f_GSL): 2.9216395384872539e-17
2746// variance(f - f_GSL): 2.1804680539963092e-33
2747// stddev(f - f_GSL): 4.6695482158302094e-17
2be75957
ESR
2748const testcase_hyperg<double>
2749data055[19] =
2750{
2751 { 0.92336416053263082, 0.50000000000000000, 2.0000000000000000,
b4688136 2752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 2753 { 0.93078397248364542, 0.50000000000000000, 2.0000000000000000,
b4688136 2754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 2755 { 0.93843714333600259, 0.50000000000000000, 2.0000000000000000,
b4688136 2756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 2757 { 0.94633837784068098, 0.50000000000000000, 2.0000000000000000,
b4688136 2758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 2759 { 0.95450388104967876, 0.50000000000000000, 2.0000000000000000,
b4688136 2760 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 2761 { 0.96295158125742752, 0.50000000000000000, 2.0000000000000000,
b4688136
ESR
2762 10.000000000000000, -0.39999999999999991, 0.0 },
2763 { 0.97170139827854329, 0.50000000000000000, 2.0000000000000000,
2764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 2765 { 0.98077556918512687, 0.50000000000000000, 2.0000000000000000,
b4688136 2766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 2767 { 0.99019904777750845, 0.50000000000000000, 2.0000000000000000,
b4688136 2768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 2769 { 1.0000000000000000, 0.50000000000000000, 2.0000000000000000,
b4688136 2770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 2771 { 1.0102104261941198, 0.50000000000000000, 2.0000000000000000,
b4688136 2772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 2773 { 1.0208669540935695, 0.50000000000000000, 2.0000000000000000,
b4688136 2774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 2775 { 1.0320118665407505, 0.50000000000000000, 2.0000000000000000,
b4688136 2776 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 2777 { 1.0436944599504387, 0.50000000000000000, 2.0000000000000000,
b4688136 2778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 2779 { 1.0559728828278145, 0.50000000000000000, 2.0000000000000000,
b4688136 2780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 2781 { 1.0689166967761712, 0.50000000000000000, 2.0000000000000000,
b4688136 2782 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 2783 { 1.0826105758119842, 0.50000000000000000, 2.0000000000000000,
b4688136 2784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 2785 { 1.0971599106346146, 0.50000000000000000, 2.0000000000000000,
b4688136 2786 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 2787 { 1.1126998828023964, 0.50000000000000000, 2.0000000000000000,
b4688136 2788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2789};
2790const double toler055 = 2.5000000000000020e-13;
2791
2792// Test data for a=0.50000000000000000, b=5.0000000000000000, c=2.0000000000000000.
b4688136
ESR
2793// max(|f - f_GSL|): 4.5474735088646412e-13 at index 18
2794// max(|f - f_GSL| / |f_GSL|): 1.5124797514980592e-15
2795// mean(f - f_GSL): 2.5336458077761468e-14
2796// variance(f - f_GSL): 1.0813211674051158e-26
2797// stddev(f - f_GSL): 1.0398659372270619e-13
2be75957
ESR
2798const testcase_hyperg<double>
2799data056[19] =
2800{
2801 { 0.52275983209457544, 0.50000000000000000, 5.0000000000000000,
b4688136 2802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2803 { 0.54700336898143009, 0.50000000000000000, 5.0000000000000000,
b4688136 2804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2805 { 0.57468955512602038, 0.50000000000000000, 5.0000000000000000,
b4688136 2806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2807 { 0.60665490543315048, 0.50000000000000000, 5.0000000000000000,
b4688136 2808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2809 { 0.64403057859056190, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2810 2.0000000000000000, -0.50000000000000000, 0.0 },
2811 { 0.68838183648623719, 0.50000000000000000, 5.0000000000000000,
2812 2.0000000000000000, -0.39999999999999991, 0.0 },
2813 { 0.74193265039311118, 0.50000000000000000, 5.0000000000000000,
2814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2815 { 0.80794095908995300, 0.50000000000000000, 5.0000000000000000,
b4688136 2816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2817 { 0.89135275749639320, 0.50000000000000000, 5.0000000000000000,
b4688136 2818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2819 { 1.0000000000000000, 0.50000000000000000, 5.0000000000000000,
b4688136 2820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2821 { 1.1469266219310688, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2822 2.0000000000000000, 0.10000000000000009, 0.0 },
2823 { 1.3552340708357493, 0.50000000000000000, 5.0000000000000000,
2824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2825 { 1.6690840478838305, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2826 2.0000000000000000, 0.30000000000000004, 0.0 },
2827 { 2.1815415453174500, 0.50000000000000000, 5.0000000000000000,
2828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2829 { 3.1156892546032235, 0.50000000000000000, 5.0000000000000000,
b4688136 2830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2831 { 5.1109077417760416, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2832 2.0000000000000000, 0.60000000000000009, 0.0 },
2833 { 10.560352936466318, 0.50000000000000000, 5.0000000000000000,
2834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2835 { 33.541019662496815, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2836 2.0000000000000000, 0.80000000000000004, 0.0 },
2837 { 300.66343065819723, 0.50000000000000000, 5.0000000000000000,
2838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2839};
2840const double toler056 = 2.5000000000000020e-13;
2841
2842// Test data for a=0.50000000000000000, b=5.0000000000000000, c=4.0000000000000000.
b4688136
ESR
2843// max(|f - f_GSL|): 8.8817841970012523e-15 at index 18
2844// max(|f - f_GSL| / |f_GSL|): 1.3217255411112292e-15
2845// mean(f - f_GSL): 6.8950693108299193e-16
2846// variance(f - f_GSL): 3.9356627445430313e-30
2847// stddev(f - f_GSL): 1.9838504844224102e-15
2be75957
ESR
2848const testcase_hyperg<double>
2849data057[19] =
2850{
2851 { 0.68252041951139286, 0.50000000000000000, 5.0000000000000000,
b4688136 2852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2853 { 0.70394732624993395, 0.50000000000000000, 5.0000000000000000,
b4688136 2854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2855 { 0.72748884971552052, 0.50000000000000000, 5.0000000000000000,
b4688136 2856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2857 { 0.75351147371199667, 0.50000000000000000, 5.0000000000000000,
b4688136 2858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2859 { 0.78247589005573737, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2860 4.0000000000000000, -0.50000000000000000, 0.0 },
2861 { 0.81497017420249795, 0.50000000000000000, 5.0000000000000000,
2862 4.0000000000000000, -0.39999999999999991, 0.0 },
2863 { 0.85175826875009608, 0.50000000000000000, 5.0000000000000000,
2864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2865 { 0.89385278481745867, 0.50000000000000000, 5.0000000000000000,
b4688136 2866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2867 { 0.94262778709507411, 0.50000000000000000, 5.0000000000000000,
b4688136 2868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2869 { 1.0000000000000000, 0.50000000000000000, 5.0000000000000000,
b4688136 2870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2871 { 1.0687327277420910, 0.50000000000000000, 5.0000000000000000,
b4688136 2872 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2873 { 1.1529725508983291, 0.50000000000000000, 5.0000000000000000,
b4688136 2874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2875 { 1.2592587134058799, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2876 4.0000000000000000, 0.30000000000000004, 0.0 },
2877 { 1.3985773194637896, 0.50000000000000000, 5.0000000000000000,
2878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2879 { 1.5909902576697317, 0.50000000000000000, 5.0000000000000000,
b4688136 2880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2881 { 1.8776023607249752, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2882 4.0000000000000000, 0.60000000000000009, 0.0 },
2883 { 2.3582499003694664, 0.50000000000000000, 5.0000000000000000,
2884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2885 { 3.3541019662496838, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2886 4.0000000000000000, 0.80000000000000004, 0.0 },
2887 { 6.7198400278578028, 0.50000000000000000, 5.0000000000000000,
2888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2889};
2890const double toler057 = 2.5000000000000020e-13;
2891
2892// Test data for a=0.50000000000000000, b=5.0000000000000000, c=6.0000000000000000.
b4688136 2893// max(|f - f_GSL|): 2.6645352591003757e-15 at index 18
2be75957 2894// max(|f - f_GSL| / |f_GSL|): 1.2228264607471081e-15
b4688136
ESR
2895// mean(f - f_GSL): 2.2788788400200583e-16
2896// variance(f - f_GSL): 3.4817209315093131e-31
2897// stddev(f - f_GSL): 5.9006109272763554e-16
2be75957
ESR
2898const testcase_hyperg<double>
2899data058[19] =
2900{
2901 { 0.75755211927082600, 0.50000000000000000, 5.0000000000000000,
b4688136 2902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2903 { 0.77603550233010965, 0.50000000000000000, 5.0000000000000000,
b4688136 2904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2905 { 0.79596241913438504, 0.50000000000000000, 5.0000000000000000,
b4688136 2906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2907 { 0.81753360792105212, 0.50000000000000000, 5.0000000000000000,
b4688136 2908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2909 { 0.84099165409805532, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2910 6.0000000000000000, -0.50000000000000000, 0.0 },
2911 { 0.86663303852180906, 0.50000000000000000, 5.0000000000000000,
2912 6.0000000000000000, -0.39999999999999991, 0.0 },
2913 { 0.89482475828629915, 0.50000000000000000, 5.0000000000000000,
2914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2915 { 0.92602774279590350, 0.50000000000000000, 5.0000000000000000,
b4688136 2916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2917 { 0.96083064727087386, 0.50000000000000000, 5.0000000000000000,
b4688136 2918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2919 { 1.0000000000000000, 0.50000000000000000, 5.0000000000000000,
b4688136 2920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2921 { 1.0445570841313008, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2922 6.0000000000000000, 0.10000000000000009, 0.0 },
2923 { 1.0959004638926033, 0.50000000000000000, 5.0000000000000000,
2924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2925 { 1.1560106261370562, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2926 6.0000000000000000, 0.30000000000000004, 0.0 },
2927 { 1.2278121770678148, 0.50000000000000000, 5.0000000000000000,
2928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2929 { 1.3158640214709998, 0.50000000000000000, 5.0000000000000000,
b4688136 2930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2931 { 1.4278095344155000, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2932 6.0000000000000000, 0.60000000000000009, 0.0 },
2933 { 1.5778700502946617, 0.50000000000000000, 5.0000000000000000,
2934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2935 { 1.7972173289196469, 0.50000000000000000, 5.0000000000000000,
b4688136 2936 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 2937 { 2.1789970569269732, 0.50000000000000000, 5.0000000000000000,
b4688136 2938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2939};
2940const double toler058 = 2.5000000000000020e-13;
2941
2942// Test data for a=0.50000000000000000, b=5.0000000000000000, c=8.0000000000000000.
b4688136
ESR
2943// max(|f - f_GSL|): 8.8817841970012523e-16 at index 18
2944// max(|f - f_GSL| / |f_GSL|): 5.6109827053892650e-16
2945// mean(f - f_GSL): 7.5962628000668607e-17
2946// variance(f - f_GSL): 3.8685788127881258e-32
2947// stddev(f - f_GSL): 1.9668703090921186e-16
2be75957
ESR
2948const testcase_hyperg<double>
2949data059[19] =
2950{
2951 { 0.80270093579329460, 0.50000000000000000, 5.0000000000000000,
b4688136 2952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 2953 { 0.81884974572462765, 0.50000000000000000, 5.0000000000000000,
b4688136 2954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 2955 { 0.83605266330015260, 0.50000000000000000, 5.0000000000000000,
b4688136 2956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 2957 { 0.85443340762796027, 0.50000000000000000, 5.0000000000000000,
b4688136 2958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 2959 { 0.87413762182790711, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2960 8.0000000000000000, -0.50000000000000000, 0.0 },
2961 { 0.89533826626907298, 0.50000000000000000, 5.0000000000000000,
2962 8.0000000000000000, -0.39999999999999991, 0.0 },
2963 { 0.91824276674115313, 0.50000000000000000, 5.0000000000000000,
2964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 2965 { 0.94310265050720576, 0.50000000000000000, 5.0000000000000000,
b4688136 2966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 2967 { 0.97022678857609712, 0.50000000000000000, 5.0000000000000000,
b4688136 2968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 2969 { 1.0000000000000000, 0.50000000000000000, 5.0000000000000000,
b4688136 2970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 2971 { 1.0329098673199812, 0.50000000000000000, 5.0000000000000000,
b4688136 2972 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 2973 { 1.0695865684573389, 0.50000000000000000, 5.0000000000000000,
b4688136 2974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 2975 { 1.1108642103944570, 0.50000000000000000, 5.0000000000000000,
b4688136 2976 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 2977 { 1.1578795055970506, 0.50000000000000000, 5.0000000000000000,
b4688136 2978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 2979 { 1.2122394794169442, 0.50000000000000000, 5.0000000000000000,
b4688136 2980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 2981 { 1.2763274721556934, 0.50000000000000000, 5.0000000000000000,
b4688136 2982 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 2983 { 1.3539179650251021, 0.50000000000000000, 5.0000000000000000,
b4688136 2984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 2985 { 1.4515986118197148, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
2986 8.0000000000000000, 0.80000000000000004, 0.0 },
2987 { 1.5829284571614224, 0.50000000000000000, 5.0000000000000000,
2988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
2989};
2990const double toler059 = 2.5000000000000020e-13;
2991
2992// Test data for a=0.50000000000000000, b=5.0000000000000000, c=10.000000000000000.
b4688136
ESR
2993// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
2994// max(|f - f_GSL| / |f_GSL|): 3.2099086385883890e-16
2995// mean(f - f_GSL): 5.8432790769745078e-17
2996// variance(f - f_GSL): 8.7218722159852367e-33
2997// stddev(f - f_GSL): 9.3390964316604188e-17
2be75957
ESR
2998const testcase_hyperg<double>
2999data060[19] =
3000{
3001 { 0.83322694172301981, 0.50000000000000000, 5.0000000000000000,
b4688136 3002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 3003 { 0.84753931604765675, 0.50000000000000000, 5.0000000000000000,
b4688136 3004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 3005 { 0.86265784532195022, 0.50000000000000000, 5.0000000000000000,
b4688136 3006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 3007 { 0.87866479300707090, 0.50000000000000000, 5.0000000000000000,
b4688136 3008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 3009 { 0.89565516540263501, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
3010 10.000000000000000, -0.50000000000000000, 0.0 },
3011 { 0.91373946207610557, 0.50000000000000000, 5.0000000000000000,
3012 10.000000000000000, -0.39999999999999991, 0.0 },
3013 { 0.93304721345881914, 0.50000000000000000, 5.0000000000000000,
3014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 3015 { 0.95373159512905148, 0.50000000000000000, 5.0000000000000000,
b4688136 3016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 3017 { 0.97597554238828121, 0.50000000000000000, 5.0000000000000000,
b4688136 3018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 3019 { 1.0000000000000000, 0.50000000000000000, 5.0000000000000000,
b4688136 3020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 3021 { 1.0260752851887982, 0.50000000000000000, 5.0000000000000000,
b4688136 3022 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 3023 { 1.0545371197996178, 0.50000000000000000, 5.0000000000000000,
b4688136 3024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 3025 { 1.0858099017045830, 0.50000000000000000, 5.0000000000000000,
b4688136 3026 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 3027 { 1.1204416568688709, 0.50000000000000000, 5.0000000000000000,
b4688136 3028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 3029 { 1.1591587835964847, 0.50000000000000000, 5.0000000000000000,
b4688136 3030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 3031 { 1.2029564720303347, 0.50000000000000000, 5.0000000000000000,
b4688136 3032 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 3033 { 1.2532588722007874, 0.50000000000000000, 5.0000000000000000,
b4688136 3034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 3035 { 1.3122319926925459, 0.50000000000000000, 5.0000000000000000,
b4688136
ESR
3036 10.000000000000000, 0.80000000000000004, 0.0 },
3037 { 1.3834948587364102, 0.50000000000000000, 5.0000000000000000,
3038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3039};
3040const double toler060 = 2.5000000000000020e-13;
3041
3042// Test data for a=0.50000000000000000, b=10.000000000000000, c=2.0000000000000000.
b4688136
ESR
3043// max(|f - f_GSL|): 1.4901161193847656e-08 at index 18
3044// max(|f - f_GSL| / |f_GSL|): 1.8229127098647768e-15
3045// mean(f - f_GSL): 7.8543415046726153e-10
3046// variance(f - f_GSL): 1.1684633485497506e-17
3047// stddev(f - f_GSL): 3.4182793164832956e-09
2be75957
ESR
3048const testcase_hyperg<double>
3049data061[19] =
3050{
3051 { 0.37727530159464628, 0.50000000000000000, 10.000000000000000,
b4688136 3052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3053 { 0.39816010922169059, 0.50000000000000000, 10.000000000000000,
b4688136 3054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3055 { 0.42283703041362447, 0.50000000000000000, 10.000000000000000,
b4688136 3056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3057 { 0.45255640448730527, 0.50000000000000000, 10.000000000000000,
b4688136 3058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3059 { 0.48919507154431119, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3060 2.0000000000000000, -0.50000000000000000, 0.0 },
3061 { 0.53569358917731902, 0.50000000000000000, 10.000000000000000,
3062 2.0000000000000000, -0.39999999999999991, 0.0 },
3063 { 0.59689778897029577, 0.50000000000000000, 10.000000000000000,
3064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3065 { 0.68128587569875765, 0.50000000000000000, 10.000000000000000,
b4688136 3066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3067 { 0.80478739308790359, 0.50000000000000000, 10.000000000000000,
b4688136 3068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3069 { 1.0000000000000000, 0.50000000000000000, 10.000000000000000,
b4688136 3070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3071 { 1.3408664196153621, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3072 2.0000000000000000, 0.10000000000000009, 0.0 },
3073 { 2.0175364359923882, 0.50000000000000000, 10.000000000000000,
3074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3075 { 3.6011214553736646, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3076 2.0000000000000000, 0.30000000000000004, 0.0 },
3077 { 8.1799429939495489, 0.50000000000000000, 10.000000000000000,
3078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3079 { 25.644834637536000, 0.50000000000000000, 10.000000000000000,
b4688136 3080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3081 { 123.13738891597615, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3082 2.0000000000000000, 0.60000000000000009, 0.0 },
3083 { 1088.7122410321385, 0.50000000000000000, 10.000000000000000,
3084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3085 { 27358.291704709951, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3086 2.0000000000000000, 0.80000000000000004, 0.0 },
3087 { 8174369.0266732639, 0.50000000000000000, 10.000000000000000,
3088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3089};
3090const double toler061 = 2.5000000000000020e-13;
3091
3092// Test data for a=0.50000000000000000, b=10.000000000000000, c=4.0000000000000000.
b4688136
ESR
3093// max(|f - f_GSL|): 2.0008883439004421e-11 at index 18
3094// max(|f - f_GSL| / |f_GSL|): 1.5684473872214445e-15
3095// mean(f - f_GSL): 1.0626587329385841e-12
3096// variance(f - f_GSL): 2.1050090066796454e-23
3097// stddev(f - f_GSL): 4.5880377141863658e-12
2be75957
ESR
3098const testcase_hyperg<double>
3099data062[19] =
3100{
3101 { 0.53905528308450823, 0.50000000000000000, 10.000000000000000,
b4688136 3102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3103 { 0.56235533974376162, 0.50000000000000000, 10.000000000000000,
b4688136 3104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3105 { 0.58887657983263575, 0.50000000000000000, 10.000000000000000,
b4688136 3106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3107 { 0.61941227047262937, 0.50000000000000000, 10.000000000000000,
b4688136 3108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3109 { 0.65504896640793864, 0.50000000000000000, 10.000000000000000,
b4688136 3110 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3111 { 0.69731666644529977, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3112 4.0000000000000000, -0.39999999999999991, 0.0 },
3113 { 0.74844073299399116, 0.50000000000000000, 10.000000000000000,
3114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3115 { 0.81178446800105830, 0.50000000000000000, 10.000000000000000,
b4688136 3116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3117 { 0.89266981277598045, 0.50000000000000000, 10.000000000000000,
b4688136 3118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3119 { 1.0000000000000000, 0.50000000000000000, 10.000000000000000,
b4688136 3120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3121 { 1.1497248473106778, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3122 4.0000000000000000, 0.10000000000000009, 0.0 },
3123 { 1.3729717112654578, 0.50000000000000000, 10.000000000000000,
3124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3125 { 1.7374982340374392, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3126 4.0000000000000000, 0.30000000000000004, 0.0 },
3127 { 2.4134479340960602, 0.50000000000000000, 10.000000000000000,
3128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3129 { 3.9191255240471192, 0.50000000000000000, 10.000000000000000,
b4688136 3130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3131 { 8.3316373077761270, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3132 4.0000000000000000, 0.60000000000000009, 0.0 },
3133 { 28.323020339843417, 0.50000000000000000, 10.000000000000000,
3134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3135 { 225.84286572747891, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3136 4.0000000000000000, 0.80000000000000004, 0.0 },
3137 { 12757.127591286826, 0.50000000000000000, 10.000000000000000,
3138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3139};
3140const double toler062 = 2.5000000000000020e-13;
3141
3142// Test data for a=0.50000000000000000, b=10.000000000000000, c=6.0000000000000000.
b4688136
ESR
3143// max(|f - f_GSL|): 1.9895196601282805e-13 at index 18
3144// max(|f - f_GSL| / |f_GSL|): 1.4567107859209851e-15
3145// mean(f - f_GSL): 1.1043797455481820e-14
3146// variance(f - f_GSL): 2.0706176432127926e-27
3147// stddev(f - f_GSL): 4.5504039855959963e-14
2be75957
ESR
3148const testcase_hyperg<double>
3149data063[19] =
3150{
3151 { 0.62672622092226027, 0.50000000000000000, 10.000000000000000,
b4688136 3152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3153 { 0.64931010269769840, 0.50000000000000000, 10.000000000000000,
b4688136 3154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3155 { 0.67448067519076293, 0.50000000000000000, 10.000000000000000,
b4688136 3156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3157 { 0.70276306239803643, 0.50000000000000000, 10.000000000000000,
b4688136 3158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3159 { 0.73484179773087521, 0.50000000000000000, 10.000000000000000,
b4688136 3160 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3161 { 0.77162761412743874, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3162 6.0000000000000000, -0.39999999999999991, 0.0 },
3163 { 0.81436116844816553, 0.50000000000000000, 10.000000000000000,
3164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3165 { 0.86477994787944579, 0.50000000000000000, 10.000000000000000,
b4688136 3166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3167 { 0.92539820516603888, 0.50000000000000000, 10.000000000000000,
b4688136 3168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3169 { 1.0000000000000000, 0.50000000000000000, 10.000000000000000,
b4688136 3170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3171 { 1.0945599448210315, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3172 6.0000000000000000, 0.10000000000000009, 0.0 },
3173 { 1.2190897395597269, 0.50000000000000000, 10.000000000000000,
3174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3175 { 1.3916844336856475, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3176 6.0000000000000000, 0.30000000000000004, 0.0 },
3177 { 1.6484497630432020, 0.50000000000000000, 10.000000000000000,
3178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3179 { 2.0717772717131155, 0.50000000000000000, 10.000000000000000,
b4688136 3180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3181 { 2.8893613630810924, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3182 6.0000000000000000, 0.60000000000000009, 0.0 },
3183 { 4.9459404075413573, 0.50000000000000000, 10.000000000000000,
3184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3185 { 13.487394149998716, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3186 6.0000000000000000, 0.80000000000000004, 0.0 },
3187 { 136.57616044014080, 0.50000000000000000, 10.000000000000000,
3188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3189};
3190const double toler063 = 2.5000000000000020e-13;
3191
3192// Test data for a=0.50000000000000000, b=10.000000000000000, c=8.0000000000000000.
b4688136
ESR
3193// max(|f - f_GSL|): 1.2434497875801753e-14 at index 18
3194// max(|f - f_GSL| / |f_GSL|): 1.3245081211977792e-15
3195// mean(f - f_GSL): 8.5311874523827817e-16
3196// variance(f - f_GSL): 7.8655509529357183e-30
3197// stddev(f - f_GSL): 2.8045589587198410e-15
2be75957
ESR
3198const testcase_hyperg<double>
3199data064[19] =
3200{
3201 { 0.68421604440344319, 0.50000000000000000, 10.000000000000000,
b4688136 3202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3203 { 0.70548098055548925, 0.50000000000000000, 10.000000000000000,
b4688136 3204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3205 { 0.72884342311710337, 0.50000000000000000, 10.000000000000000,
b4688136 3206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3207 { 0.75466953437856232, 0.50000000000000000, 10.000000000000000,
b4688136 3208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3209 { 0.78342090924662589, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3210 8.0000000000000000, -0.50000000000000000, 0.0 },
3211 { 0.81568884278645115, 0.50000000000000000, 10.000000000000000,
3212 8.0000000000000000, -0.39999999999999991, 0.0 },
3213 { 0.85224480241465261, 0.50000000000000000, 10.000000000000000,
3214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3215 { 0.89411692571131685, 0.50000000000000000, 10.000000000000000,
b4688136 3216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3217 { 0.94270986892954811, 0.50000000000000000, 10.000000000000000,
b4688136 3218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3219 { 1.0000000000000000, 0.50000000000000000, 10.000000000000000,
b4688136 3220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3221 { 1.0688682849120232, 0.50000000000000000, 10.000000000000000,
b4688136 3222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3223 { 1.1537004376097553, 0.50000000000000000, 10.000000000000000,
b4688136 3224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3225 { 1.2615455028370031, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3226 8.0000000000000000, 0.30000000000000004, 0.0 },
3227 { 1.4045541456153443, 0.50000000000000000, 10.000000000000000,
3228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3229 { 1.6057216489444517, 0.50000000000000000, 10.000000000000000,
b4688136 3230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3231 { 1.9146603020550739, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3232 8.0000000000000000, 0.60000000000000009, 0.0 },
3233 { 2.4617931307620307, 0.50000000000000000, 10.000000000000000,
3234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3235 { 3.7267799624996498, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3236 8.0000000000000000, 0.80000000000000004, 0.0 },
3237 { 9.3880118036248721, 0.50000000000000000, 10.000000000000000,
3238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3239};
3240const double toler064 = 2.5000000000000020e-13;
3241
3242// Test data for a=0.50000000000000000, b=10.000000000000000, c=10.000000000000000.
b4688136
ESR
3243// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
3244// max(|f - f_GSL| / |f_GSL|): 1.8577584504832499e-16
3245// mean(f - f_GSL): 5.8432790769745078e-18
3246// variance(f - f_GSL): 1.1262748212790853e-32
3247// stddev(f - f_GSL): 1.0612609581432294e-16
2be75957
ESR
3248const testcase_hyperg<double>
3249data065[19] =
3250{
b4688136
ESR
3251 { 0.72547625011001160, 0.50000000000000000, 10.000000000000000,
3252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 3253 { 0.74535599249992990, 0.50000000000000000, 10.000000000000000,
b4688136 3254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 3255 { 0.76696498884737041, 0.50000000000000000, 10.000000000000000,
b4688136 3256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 3257 { 0.79056941504209477, 0.50000000000000000, 10.000000000000000,
b4688136 3258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 3259 { 0.81649658092772603, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3260 10.000000000000000, -0.50000000000000000, 0.0 },
3261 { 0.84515425472851669, 0.50000000000000000, 10.000000000000000,
3262 10.000000000000000, -0.39999999999999991, 0.0 },
3263 { 0.87705801930702931, 0.50000000000000000, 10.000000000000000,
3264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 3265 { 0.91287092917527690, 0.50000000000000000, 10.000000000000000,
b4688136 3266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 3267 { 0.95346258924559224, 0.50000000000000000, 10.000000000000000,
b4688136 3268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 3269 { 1.0000000000000000, 0.50000000000000000, 10.000000000000000,
b4688136 3270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 3271 { 1.0540925533894598, 0.50000000000000000, 10.000000000000000,
b4688136 3272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 3273 { 1.1180339887498949, 0.50000000000000000, 10.000000000000000,
b4688136 3274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 3275 { 1.1952286093343938, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3276 10.000000000000000, 0.30000000000000004, 0.0 },
3277 { 1.2909944487358058, 0.50000000000000000, 10.000000000000000,
3278 10.000000000000000, 0.40000000000000013, 0.0 },
3279 { 1.4142135623730951, 0.50000000000000000, 10.000000000000000,
3280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 3281 { 1.5811388300841900, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3282 10.000000000000000, 0.60000000000000009, 0.0 },
3283 { 1.8257418583505542, 0.50000000000000000, 10.000000000000000,
3284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 3285 { 2.2360679774997898, 0.50000000000000000, 10.000000000000000,
b4688136
ESR
3286 10.000000000000000, 0.80000000000000004, 0.0 },
3287 { 3.1622776601683809, 0.50000000000000000, 10.000000000000000,
3288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3289};
3290const double toler065 = 2.5000000000000020e-13;
3291
3292// Test data for a=0.50000000000000000, b=20.000000000000000, c=2.0000000000000000.
b4688136
ESR
3293// max(|f - f_GSL|): 48.000000000000000 at index 18
3294// max(|f - f_GSL| / |f_GSL|): 1.8556481344874416e-15
3295// mean(f - f_GSL): 2.5263190030329112
3296// variance(f - f_GSL): 121.26314075575490
3297// stddev(f - f_GSL): 11.011954447588080
2be75957
ESR
3298const testcase_hyperg<double>
3299data066[19] =
3300{
3301 { 0.26690449940521549, 0.50000000000000000, 20.000000000000000,
b4688136 3302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3303 { 0.28252302866181833, 0.50000000000000000, 20.000000000000000,
b4688136 3304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3305 { 0.30123616141153836, 0.50000000000000000, 20.000000000000000,
b4688136 3306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3307 { 0.32421384687602633, 0.50000000000000000, 20.000000000000000,
b4688136 3308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3309 { 0.35334630811776774, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3310 2.0000000000000000, -0.50000000000000000, 0.0 },
3311 { 0.39191793127466995, 0.50000000000000000, 20.000000000000000,
3312 2.0000000000000000, -0.39999999999999991, 0.0 },
3313 { 0.44620488618129212, 0.50000000000000000, 20.000000000000000,
3314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3315 { 0.52980896919265719, 0.50000000000000000, 20.000000000000000,
b4688136 3316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3317 { 0.67754711477562324, 0.50000000000000000, 20.000000000000000,
b4688136 3318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3319 { 1.0000000000000000, 0.50000000000000000, 20.000000000000000,
b4688136 3320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3321 { 1.9567557771780317, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3322 2.0000000000000000, 0.10000000000000009, 0.0 },
3323 { 6.1816042148333272, 0.50000000000000000, 20.000000000000000,
3324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3325 { 35.653088618561227, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3326 2.0000000000000000, 0.30000000000000004, 0.0 },
3327 { 377.51482843180133, 0.50000000000000000, 20.000000000000000,
3328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3329 { 7645.8816551195359, 0.50000000000000000, 20.000000000000000,
b4688136 3330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3331 { 354791.74537980522, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3332 2.0000000000000000, 0.60000000000000009, 0.0 },
3333 { 57009889.966639392, 0.50000000000000000, 20.000000000000000,
3334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3335 { 83771357024.863937, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3336 2.0000000000000000, 0.80000000000000004, 0.0 },
3337 { 25866972896377436., 0.50000000000000000, 20.000000000000000,
3338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3339};
3340const double toler066 = 2.5000000000000020e-13;
3341
3342// Test data for a=0.50000000000000000, b=20.000000000000000, c=4.0000000000000000.
b4688136
ESR
3343// max(|f - f_GSL|): 0.011718750000000000 at index 18
3344// max(|f - f_GSL| / |f_GSL|): 1.7519521419033478e-15
3345// mean(f - f_GSL): 0.00061678102606403001
3346// variance(f - f_GSL): 7.2278413174892008e-06
3347// stddev(f - f_GSL): 0.0026884644906506020
2be75957
ESR
3348const testcase_hyperg<double>
3349data067[19] =
3350{
3351 { 0.40342659436153389, 0.50000000000000000, 20.000000000000000,
b4688136 3352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3353 { 0.42420571192034318, 0.50000000000000000, 20.000000000000000,
b4688136 3354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3355 { 0.44852768286073041, 0.50000000000000000, 20.000000000000000,
b4688136 3356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3357 { 0.47751245808592863, 0.50000000000000000, 20.000000000000000,
b4688136 3358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3359 { 0.51283632632707765, 0.50000000000000000, 20.000000000000000,
b4688136 3360 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3361 { 0.55713468814894329, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3362 4.0000000000000000, -0.39999999999999991, 0.0 },
3363 { 0.61481320817757346, 0.50000000000000000, 20.000000000000000,
3364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3365 { 0.69383483410097213, 0.50000000000000000, 20.000000000000000,
b4688136 3366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3367 { 0.81012002526006044, 0.50000000000000000, 20.000000000000000,
b4688136 3368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3369 { 1.0000000000000000, 0.50000000000000000, 20.000000000000000,
b4688136 3370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3371 { 1.3622225506603911, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3372 4.0000000000000000, 0.10000000000000009, 0.0 },
3373 { 2.2349513086109027, 0.50000000000000000, 20.000000000000000,
3374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3375 { 5.1864917536761723, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3376 4.0000000000000000, 0.30000000000000004, 0.0 },
3377 { 21.020560423779497, 0.50000000000000000, 20.000000000000000,
3378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3379 { 175.19649997100612, 0.50000000000000000, 20.000000000000000,
b4688136 3380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3381 { 3467.1587803688708, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3382 4.0000000000000000, 0.60000000000000009, 0.0 },
3383 { 225003.88683446089, 0.50000000000000000, 20.000000000000000,
3384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3385 { 110837674.65652709, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3386 4.0000000000000000, 0.80000000000000004, 0.0 },
3387 { 6688966964170.9326, 0.50000000000000000, 20.000000000000000,
3388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3389};
3390const double toler067 = 2.5000000000000020e-13;
3391
3392// Test data for a=0.50000000000000000, b=20.000000000000000, c=6.0000000000000000.
b4688136
ESR
3393// max(|f - f_GSL|): 1.4305114746093750e-05 at index 18
3394// max(|f - f_GSL| / |f_GSL|): 1.9261147266353426e-15
3395// mean(f - f_GSL): 7.5292535813082699e-07
3396// variance(f - f_GSL): 1.0770292922645316e-11
3397// stddev(f - f_GSL): 3.2818124447697064e-06
2be75957
ESR
3398const testcase_hyperg<double>
3399data068[19] =
3400{
3401 { 0.48716309885816822, 0.50000000000000000, 20.000000000000000,
b4688136 3402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3403 { 0.50965859152542337, 0.50000000000000000, 20.000000000000000,
b4688136 3404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3405 { 0.53554809210658938, 0.50000000000000000, 20.000000000000000,
b4688136 3406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3407 { 0.56576689207507136, 0.50000000000000000, 20.000000000000000,
b4688136 3408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3409 { 0.60164849637133655, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3410 6.0000000000000000, -0.50000000000000000, 0.0 },
3411 { 0.64516711595404408, 0.50000000000000000, 20.000000000000000,
3412 6.0000000000000000, -0.39999999999999991, 0.0 },
3413 { 0.69938278735493553, 0.50000000000000000, 20.000000000000000,
3414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3415 { 0.76931621518401860, 0.50000000000000000, 20.000000000000000,
b4688136 3416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3417 { 0.86381808725530662, 0.50000000000000000, 20.000000000000000,
b4688136 3418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3419 { 1.0000000000000000, 0.50000000000000000, 20.000000000000000,
b4688136 3420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3421 { 1.2152051956815531, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3422 6.0000000000000000, 0.10000000000000009, 0.0 },
3423 { 1.6052546785425557, 0.50000000000000000, 20.000000000000000,
3424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3425 { 2.4765586046012635, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3426 6.0000000000000000, 0.30000000000000004, 0.0 },
3427 { 5.1564492216997611, 0.50000000000000000, 20.000000000000000,
3428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3429 { 18.446158392136365, 0.50000000000000000, 20.000000000000000,
b4688136 3430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3431 { 150.44577670123971, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3432 6.0000000000000000, 0.60000000000000009, 0.0 },
3433 { 3862.6317400116104, 0.50000000000000000, 20.000000000000000,
3434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3435 { 632428.34833625401, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3436 6.0000000000000000, 0.80000000000000004, 0.0 },
3437 { 7426927663.3810987, 0.50000000000000000, 20.000000000000000,
3438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3439};
3440const double toler068 = 2.5000000000000020e-13;
3441
3442// Test data for a=0.50000000000000000, b=20.000000000000000, c=8.0000000000000000.
b4688136
ESR
3443// max(|f - f_GSL|): 4.0978193283081055e-08 at index 18
3444// max(|f - f_GSL| / |f_GSL|): 1.7692881266931270e-15
3445// mean(f - f_GSL): 2.1571346930926438e-09
3446// variance(f - f_GSL): 8.8377830897836260e-17
3447// stddev(f - f_GSL): 9.4009484041683924e-09
2be75957
ESR
3448const testcase_hyperg<double>
3449data069[19] =
3450{
3451 { 0.54703266209548373, 0.50000000000000000, 20.000000000000000,
b4688136 3452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3453 { 0.56997321774144960, 0.50000000000000000, 20.000000000000000,
b4688136 3454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3455 { 0.59603026159654982, 0.50000000000000000, 20.000000000000000,
b4688136 3456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3457 { 0.62596978851120511, 0.50000000000000000, 20.000000000000000,
b4688136 3458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3459 { 0.66084565876898915, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3460 8.0000000000000000, -0.50000000000000000, 0.0 },
3461 { 0.70215256667232862, 0.50000000000000000, 20.000000000000000,
3462 8.0000000000000000, -0.39999999999999991, 0.0 },
3463 { 0.75208916592008568, 0.50000000000000000, 20.000000000000000,
3464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3465 { 0.81403631111658625, 0.50000000000000000, 20.000000000000000,
b4688136 3466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3467 { 0.89348608489854597, 0.50000000000000000, 20.000000000000000,
b4688136 3468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3469 { 1.0000000000000000, 0.50000000000000000, 20.000000000000000,
b4688136 3470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3471 { 1.1517793185139173, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3472 8.0000000000000000, 0.10000000000000009, 0.0 },
3473 { 1.3878110313656606, 0.50000000000000000, 20.000000000000000,
3474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3475 { 1.8061071794572381, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3476 8.0000000000000000, 0.30000000000000004, 0.0 },
3477 { 2.7148594517859612, 0.50000000000000000, 20.000000000000000,
3478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3479 { 5.4529435709049361, 0.50000000000000000, 20.000000000000000,
b4688136 3480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3481 { 19.487310275377109, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3482 8.0000000000000000, 0.60000000000000009, 0.0 },
3483 { 191.69079165937592, 0.50000000000000000, 20.000000000000000,
3484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3485 { 10218.543981792311, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3486 8.0000000000000000, 0.80000000000000004, 0.0 },
3487 { 23160836.646584522, 0.50000000000000000, 20.000000000000000,
3488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3489};
3490const double toler069 = 2.5000000000000020e-13;
3491
3492// Test data for a=0.50000000000000000, b=20.000000000000000, c=10.000000000000000.
b4688136
ESR
3493// max(|f - f_GSL|): 2.9103830456733704e-10 at index 18
3494// max(|f - f_GSL| / |f_GSL|): 1.6694673196526424e-15
3495// mean(f - f_GSL): 1.5333453804912193e-11
3496// variance(f - f_GSL): 4.4575621294589140e-21
3497// stddev(f - f_GSL): 6.6764976817631821e-11
2be75957
ESR
3498const testcase_hyperg<double>
3499data070[19] =
3500{
3501 { 0.59292067298616025, 0.50000000000000000, 20.000000000000000,
b4688136 3502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 3503 { 0.61572496720679892, 0.50000000000000000, 20.000000000000000,
b4688136 3504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 3505 { 0.64135339122875590, 0.50000000000000000, 20.000000000000000,
b4688136 3506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 3507 { 0.67043457419280461, 0.50000000000000000, 20.000000000000000,
b4688136 3508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 3509 { 0.70380956268170969, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3510 10.000000000000000, -0.50000000000000000, 0.0 },
3511 { 0.74263251901495264, 0.50000000000000000, 20.000000000000000,
3512 10.000000000000000, -0.39999999999999991, 0.0 },
3513 { 0.78853555445528289, 0.50000000000000000, 20.000000000000000,
3514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 3515 { 0.84391122775673755, 0.50000000000000000, 20.000000000000000,
b4688136 3516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 3517 { 0.91242401018807373, 0.50000000000000000, 20.000000000000000,
b4688136 3518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 3519 { 1.0000000000000000, 0.50000000000000000, 20.000000000000000,
b4688136 3520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 3521 { 1.1169059681274873, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3522 10.000000000000000, 0.10000000000000009, 0.0 },
3523 { 1.2825928301302669, 0.50000000000000000, 20.000000000000000,
3524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 3525 { 1.5385937789924939, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3526 10.000000000000000, 0.30000000000000004, 0.0 },
3527 { 1.9895771187893914, 0.50000000000000000, 20.000000000000000,
3528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 3529 { 2.9707335806970168, 0.50000000000000000, 20.000000000000000,
b4688136 3530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 3531 { 6.0299506157180467, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3532 10.000000000000000, 0.60000000000000009, 0.0 },
3533 { 24.259090336955669, 0.50000000000000000, 20.000000000000000,
3534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 3535 { 406.27267173257223, 0.50000000000000000, 20.000000000000000,
b4688136
ESR
3536 10.000000000000000, 0.80000000000000004, 0.0 },
3537 { 174330.03997220617, 0.50000000000000000, 20.000000000000000,
3538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3539};
3540const double toler070 = 2.5000000000000020e-13;
3541
3542// Test data for a=1.0000000000000000, b=0.0000000000000000, c=2.0000000000000000.
b4688136 3543// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 3544// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
3545// mean(f - f_GSL): 0.0000000000000000
3546// variance(f - f_GSL): 0.0000000000000000
3547// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
3548const testcase_hyperg<double>
3549data071[19] =
3550{
3551 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3553 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3555 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3557 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3559 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3560 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3561 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3562 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 3563 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3565 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3567 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3569 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3571 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3572 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3573 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3575 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3576 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 3577 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3579 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3581 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3582 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 3583 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3585 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3586 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 3587 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3589};
3590const double toler071 = 2.5000000000000020e-13;
3591
3592// Test data for a=1.0000000000000000, b=0.0000000000000000, c=4.0000000000000000.
b4688136 3593// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 3594// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
3595// mean(f - f_GSL): 0.0000000000000000
3596// variance(f - f_GSL): 0.0000000000000000
3597// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
3598const testcase_hyperg<double>
3599data072[19] =
3600{
3601 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3603 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3605 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3607 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3609 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3610 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3611 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3612 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 3613 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3615 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3617 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3619 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3621 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3622 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3623 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3625 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3626 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 3627 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3629 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3631 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3632 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 3633 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3635 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3636 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 3637 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3639};
3640const double toler072 = 2.5000000000000020e-13;
3641
3642// Test data for a=1.0000000000000000, b=0.0000000000000000, c=6.0000000000000000.
b4688136 3643// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 3644// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
3645// mean(f - f_GSL): 0.0000000000000000
3646// variance(f - f_GSL): 0.0000000000000000
3647// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
3648const testcase_hyperg<double>
3649data073[19] =
3650{
3651 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3653 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3655 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3657 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3659 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3660 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3661 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3662 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 3663 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3665 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3667 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3669 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3671 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3672 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3673 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3675 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3676 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 3677 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3679 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3681 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3682 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 3683 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3685 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3686 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 3687 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3689};
3690const double toler073 = 2.5000000000000020e-13;
3691
3692// Test data for a=1.0000000000000000, b=0.0000000000000000, c=8.0000000000000000.
b4688136 3693// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 3694// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
3695// mean(f - f_GSL): 0.0000000000000000
3696// variance(f - f_GSL): 0.0000000000000000
3697// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
3698const testcase_hyperg<double>
3699data074[19] =
3700{
3701 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3703 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3705 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3707 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3709 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3710 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3711 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 3713 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3715 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3717 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3719 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3721 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3723 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3725 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 3727 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3729 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3731 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3732 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 3733 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3735 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3736 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 3737 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3739};
3740const double toler074 = 2.5000000000000020e-13;
3741
3742// Test data for a=1.0000000000000000, b=0.0000000000000000, c=10.000000000000000.
b4688136 3743// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 3744// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
3745// mean(f - f_GSL): 0.0000000000000000
3746// variance(f - f_GSL): 0.0000000000000000
3747// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
3748const testcase_hyperg<double>
3749data075[19] =
3750{
3751 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 3753 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 3755 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 3757 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 3759 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3760 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 3761 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3762 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 3763 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 3765 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 3767 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 3769 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 3771 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 3773 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 3775 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3776 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 3777 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 3779 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 3781 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3782 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 3783 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 3785 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3786 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 3787 { 1.0000000000000000, 1.0000000000000000, 0.0000000000000000,
b4688136 3788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3789};
3790const double toler075 = 2.5000000000000020e-13;
3791
3792// Test data for a=1.0000000000000000, b=0.50000000000000000, c=2.0000000000000000.
b4688136
ESR
3793// max(|f - f_GSL|): 8.8817841970012523e-16 at index 18
3794// max(|f - f_GSL| / |f_GSL|): 5.8452254859313207e-16
3795// mean(f - f_GSL): 8.1805907077643109e-17
3796// variance(f - f_GSL): 3.8131160349224712e-32
3797// stddev(f - f_GSL): 1.9527201629835421e-16
2be75957
ESR
3798const testcase_hyperg<double>
3799data076[19] =
3800{
3801 { 0.84089972268671531, 1.0000000000000000, 0.50000000000000000,
b4688136 3802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3803 { 0.85410196624968460, 1.0000000000000000, 0.50000000000000000,
b4688136 3804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3805 { 0.86811566011579955, 1.0000000000000000, 0.50000000000000000,
b4688136 3806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3807 { 0.88303688022450522, 1.0000000000000000, 0.50000000000000000,
b4688136 3808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3809 { 0.89897948556635621, 1.0000000000000000, 0.50000000000000000,
b4688136 3810 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3811 { 0.91607978309961580, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
3812 2.0000000000000000, -0.39999999999999991, 0.0 },
3813 { 0.93450283399425327, 1.0000000000000000, 0.50000000000000000,
3814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3815 { 0.95445115010332193, 1.0000000000000000, 0.50000000000000000,
b4688136 3816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3817 { 0.97617696340303095, 1.0000000000000000, 0.50000000000000000,
b4688136 3818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3819 { 1.0000000000000000, 1.0000000000000000, 0.50000000000000000,
b4688136 3820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3821 { 1.0263340389897240, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
3822 2.0000000000000000, 0.10000000000000009, 0.0 },
3823 { 1.0557280900008412, 1.0000000000000000, 0.50000000000000000,
3824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3825 { 1.0889331564394962, 1.0000000000000000, 0.50000000000000000,
b4688136 3826 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 3827 { 1.1270166537925830, 1.0000000000000000, 0.50000000000000000,
b4688136 3828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3829 { 1.1715728752538095, 1.0000000000000000, 0.50000000000000000,
b4688136 3830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3831 { 1.2251482265544145, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
3832 2.0000000000000000, 0.60000000000000009, 0.0 },
3833 { 1.2922212642709543, 1.0000000000000000, 0.50000000000000000,
3834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3835 { 1.3819660112501042, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
3836 2.0000000000000000, 0.80000000000000004, 0.0 },
3837 { 1.5194938532959121, 1.0000000000000000, 0.50000000000000000,
3838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3839};
3840const double toler076 = 2.5000000000000020e-13;
3841
3842// Test data for a=1.0000000000000000, b=0.50000000000000000, c=4.0000000000000000.
b4688136
ESR
3843// max(|f - f_GSL|): 2.2204460492503131e-16 at index 17
3844// max(|f - f_GSL| / |f_GSL|): 1.9508457915403988e-16
3845// mean(f - f_GSL): 2.3373116307898031e-17
3846// variance(f - f_GSL): 2.3146198993753289e-33
3847// stddev(f - f_GSL): 4.8110496769159731e-17
2be75957
ESR
3848const testcase_hyperg<double>
3849data077[19] =
3850{
3851 { 0.90992197313391454, 1.0000000000000000, 0.50000000000000000,
b4688136 3852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3853 { 0.91822592662244484, 1.0000000000000000, 0.50000000000000000,
b4688136 3854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3855 { 0.92687104566419554, 1.0000000000000000, 0.50000000000000000,
b4688136 3856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3857 { 0.93588628166548848, 1.0000000000000000, 0.50000000000000000,
b4688136 3858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3859 { 0.94530459215552909, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
3860 4.0000000000000000, -0.50000000000000000, 0.0 },
3861 { 0.95516374875247434, 1.0000000000000000, 0.50000000000000000,
3862 4.0000000000000000, -0.39999999999999991, 0.0 },
3863 { 0.96550736800511816, 1.0000000000000000, 0.50000000000000000,
3864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3865 { 0.97638624595136270, 1.0000000000000000, 0.50000000000000000,
b4688136 3866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3867 { 0.98786011482678993, 1.0000000000000000, 0.50000000000000000,
b4688136 3868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3869 { 1.0000000000000000, 1.0000000000000000, 0.50000000000000000,
b4688136 3870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3871 { 1.0128914530682316, 1.0000000000000000, 0.50000000000000000,
b4688136 3872 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3873 { 1.0266391040215350, 1.0000000000000000, 0.50000000000000000,
b4688136 3874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3875 { 1.0413732738729464, 1.0000000000000000, 0.50000000000000000,
b4688136 3876 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 3877 { 1.0572599536532992, 1.0000000000000000, 0.50000000000000000,
b4688136 3878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3879 { 1.0745166004060953, 1.0000000000000000, 0.50000000000000000,
b4688136 3880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3881 { 1.0934387388831386, 1.0000000000000000, 0.50000000000000000,
b4688136 3882 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 3883 { 1.1144486980714641, 1.0000000000000000, 0.50000000000000000,
b4688136 3884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3885 { 1.1381966011250106, 1.0000000000000000, 0.50000000000000000,
b4688136 3886 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 3887 { 1.1658171625342397, 1.0000000000000000, 0.50000000000000000,
b4688136 3888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3889};
3890const double toler077 = 2.5000000000000020e-13;
3891
3892// Test data for a=1.0000000000000000, b=0.50000000000000000, c=6.0000000000000000.
b4688136 3893// max(|f - f_GSL|): 4.4408920985006262e-16 at index 7
2be75957 3894// max(|f - f_GSL| / |f_GSL|): 4.5130734546221216e-16
b4688136
ESR
3895// mean(f - f_GSL): 4.6746232615796062e-17
3896// variance(f - f_GSL): 1.2814504633219814e-34
3897// stddev(f - f_GSL): 1.1320116886861114e-17
2be75957
ESR
3898const testcase_hyperg<double>
3899data078[19] =
3900{
3901 { 0.93641908369732896, 1.0000000000000000, 0.50000000000000000,
b4688136 3902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3903 { 0.94256349654111271, 1.0000000000000000, 0.50000000000000000,
b4688136 3904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3905 { 0.94890138508461319, 1.0000000000000000, 0.50000000000000000,
b4688136 3906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3907 { 0.95544578858430029, 1.0000000000000000, 0.50000000000000000,
b4688136 3908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3909 { 0.96221121193620762, 1.0000000000000000, 0.50000000000000000,
b4688136 3910 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3911 { 0.96921386948293542, 1.0000000000000000, 0.50000000000000000,
b4688136 3912 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 3913 { 0.97647198488394704, 1.0000000000000000, 0.50000000000000000,
b4688136 3914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3915 { 0.98400616412578656, 1.0000000000000000, 0.50000000000000000,
b4688136 3916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3917 { 0.99183986544963032, 1.0000000000000000, 0.50000000000000000,
b4688136 3918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3919 { 1.0000000000000000, 1.0000000000000000, 0.50000000000000000,
b4688136 3920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3921 { 1.0085177124149158, 1.0000000000000000, 0.50000000000000000,
b4688136 3922 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3923 { 1.0174294150407122, 1.0000000000000000, 0.50000000000000000,
b4688136 3924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3925 { 1.0267781897388850, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
3926 6.0000000000000000, 0.30000000000000004, 0.0 },
3927 { 1.0366157405967287, 1.0000000000000000, 0.50000000000000000,
3928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3929 { 1.0470052068648839, 1.0000000000000000, 0.50000000000000000,
b4688136 3930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3931 { 1.0580253905513313, 1.0000000000000000, 0.50000000000000000,
b4688136 3932 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 3933 { 1.0697774741209765, 1.0000000000000000, 0.50000000000000000,
b4688136 3934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3935 { 1.0823965556448414, 1.0000000000000000, 0.50000000000000000,
b4688136 3936 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 3937 { 1.0960739512057103, 1.0000000000000000, 0.50000000000000000,
b4688136 3938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3939};
3940const double toler078 = 2.5000000000000020e-13;
3941
3942// Test data for a=1.0000000000000000, b=0.50000000000000000, c=8.0000000000000000.
b4688136
ESR
3943// max(|f - f_GSL|): 2.2204460492503131e-16 at index 7
3944// max(|f - f_GSL| / |f_GSL|): 2.2476491960642283e-16
3945// mean(f - f_GSL): -5.8432790769745078e-18
3946// variance(f - f_GSL): 2.0022663489405960e-36
3947// stddev(f - f_GSL): 1.4150146108576393e-18
2be75957
ESR
3948const testcase_hyperg<double>
3949data079[19] =
3950{
3951 { 0.95069883346936235, 1.0000000000000000, 0.50000000000000000,
b4688136 3952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 3953 { 0.95559618047704131, 1.0000000000000000, 0.50000000000000000,
b4688136 3954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 3955 { 0.96061938755931664, 1.0000000000000000, 0.50000000000000000,
b4688136 3956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 3957 { 0.96577553912851333, 1.0000000000000000, 0.50000000000000000,
b4688136 3958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 3959 { 0.97107239473807716, 1.0000000000000000, 0.50000000000000000,
b4688136 3960 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 3961 { 0.97651848528588481, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
3962 8.0000000000000000, -0.39999999999999991, 0.0 },
3963 { 0.98212322830227128, 1.0000000000000000, 0.50000000000000000,
3964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 3965 { 0.98789706736195781, 1.0000000000000000, 0.50000000000000000,
b4688136 3966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 3967 { 0.99385164237825074, 1.0000000000000000, 0.50000000000000000,
b4688136 3968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 3969 { 1.0000000000000000, 1.0000000000000000, 0.50000000000000000,
b4688136 3970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 3971 { 1.0063568569383123, 1.0000000000000000, 0.50000000000000000,
b4688136 3972 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 3973 { 1.0129389344715818, 1.0000000000000000, 0.50000000000000000,
b4688136 3974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 3975 { 1.0197653907773940, 1.0000000000000000, 0.50000000000000000,
b4688136 3976 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 3977 { 1.0268583912277143, 1.0000000000000000, 0.50000000000000000,
b4688136 3978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 3979 { 1.0342438793937092, 1.0000000000000000, 0.50000000000000000,
b4688136 3980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 3981 { 1.0419526514766855, 1.0000000000000000, 0.50000000000000000,
b4688136 3982 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 3983 { 1.0500219124976327, 1.0000000000000000, 0.50000000000000000,
b4688136 3984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 3985 { 1.0584976491907043, 1.0000000000000000, 0.50000000000000000,
b4688136 3986 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 3987 { 1.0674385240268101, 1.0000000000000000, 0.50000000000000000,
b4688136 3988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
3989};
3990const double toler079 = 2.5000000000000020e-13;
3991
3992// Test data for a=1.0000000000000000, b=0.50000000000000000, c=10.000000000000000.
b4688136
ESR
3993// max(|f - f_GSL|): 0.0000000000000000 at index 0
3994// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
3995// mean(f - f_GSL): 0.0000000000000000
3996// variance(f - f_GSL): 0.0000000000000000
3997// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
3998const testcase_hyperg<double>
3999data080[19] =
4000{
4001 { 0.95968319138913905, 1.0000000000000000, 0.50000000000000000,
b4688136 4002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 4003 { 0.96376169072755802, 1.0000000000000000, 0.50000000000000000,
b4688136 4004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 4005 { 0.96792900082729372, 1.0000000000000000, 0.50000000000000000,
b4688136 4006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 4007 { 0.97218942798115737, 1.0000000000000000, 0.50000000000000000,
b4688136 4008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 4009 { 0.97654763592586835, 1.0000000000000000, 0.50000000000000000,
b4688136
ESR
4010 10.000000000000000, -0.50000000000000000, 0.0 },
4011 { 0.98100869054353890, 1.0000000000000000, 0.50000000000000000,
4012 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 4013 { 0.98557811238699278, 1.0000000000000000, 0.50000000000000000,
b4688136 4014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 4015 { 0.99026193885795544, 1.0000000000000000, 0.50000000000000000,
b4688136 4016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 4017 { 0.99506679842072221, 1.0000000000000000, 0.50000000000000000,
b4688136 4018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 4019 { 1.0000000000000000, 1.0000000000000000, 0.50000000000000000,
b4688136 4020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 4021 { 1.0050696417919618, 1.0000000000000000, 0.50000000000000000,
b4688136 4022 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 4023 { 1.0102847452747090, 1.0000000000000000, 0.50000000000000000,
b4688136 4024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 4025 { 1.0156554225057022, 1.0000000000000000, 0.50000000000000000,
b4688136 4026 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 4027 { 1.0211930882963096, 1.0000000000000000, 0.50000000000000000,
b4688136 4028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 4029 { 1.0269107343740711, 1.0000000000000000, 0.50000000000000000,
b4688136 4030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 4031 { 1.0328232917216298, 1.0000000000000000, 0.50000000000000000,
b4688136 4032 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 4033 { 1.0389481230247195, 1.0000000000000000, 0.50000000000000000,
b4688136 4034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 4035 { 1.0453057164134614, 1.0000000000000000, 0.50000000000000000,
b4688136 4036 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 4037 { 1.0519207114461246, 1.0000000000000000, 0.50000000000000000,
b4688136 4038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4039};
4040const double toler080 = 2.5000000000000020e-13;
4041
4042// Test data for a=1.0000000000000000, b=1.0000000000000000, c=2.0000000000000000.
b4688136
ESR
4043// max(|f - f_GSL|): 3.5527136788005009e-15 at index 18
4044// max(|f - f_GSL| / |f_GSL|): 1.3886315518367350e-15
4045// mean(f - f_GSL): 2.6879083754082737e-16
4046// variance(f - f_GSL): 6.3240381271479359e-31
4047// stddev(f - f_GSL): 7.9523821130199324e-16
2be75957
ESR
4048const testcase_hyperg<double>
4049data081[19] =
4050{
4051 { 0.71317098463599415, 1.0000000000000000, 1.0000000000000000,
b4688136 4052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4053 { 0.73473333112764883, 1.0000000000000000, 1.0000000000000000,
b4688136 4054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4055 { 0.75804035866024344, 1.0000000000000000, 1.0000000000000000,
b4688136 4056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4057 { 0.78333938207622589, 1.0000000000000000, 1.0000000000000000,
b4688136 4058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4059 { 0.81093021621632866, 1.0000000000000000, 1.0000000000000000,
b4688136
ESR
4060 2.0000000000000000, -0.50000000000000000, 0.0 },
4061 { 0.84118059155303215, 1.0000000000000000, 1.0000000000000000,
4062 2.0000000000000000, -0.39999999999999991, 0.0 },
4063 { 0.87454754822497005, 1.0000000000000000, 1.0000000000000000,
4064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4065 { 0.91160778396977304, 1.0000000000000000, 1.0000000000000000,
b4688136 4066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4067 { 0.95310179804324857, 1.0000000000000000, 1.0000000000000000,
b4688136 4068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4069 { 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
b4688136 4070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4071 { 1.0536051565782629, 1.0000000000000000, 1.0000000000000000,
b4688136 4072 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 4073 { 1.1157177565710485, 1.0000000000000000, 1.0000000000000000,
b4688136 4074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4075 { 1.1889164797957747, 1.0000000000000000, 1.0000000000000000,
b4688136
ESR
4076 2.0000000000000000, 0.30000000000000004, 0.0 },
4077 { 1.2770640594149769, 1.0000000000000000, 1.0000000000000000,
4078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4079 { 1.3862943611198899, 1.0000000000000000, 1.0000000000000000,
b4688136 4080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4081 { 1.5271512197902593, 1.0000000000000000, 1.0000000000000000,
b4688136 4082 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 4083 { 1.7199611490370503, 1.0000000000000000, 1.0000000000000000,
b4688136 4084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4085 { 2.0117973905426232, 1.0000000000000000, 1.0000000000000000,
b4688136
ESR
4086 2.0000000000000000, 0.80000000000000004, 0.0 },
4087 { 2.5584278811044925, 1.0000000000000000, 1.0000000000000000,
4088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4089};
4090const double toler081 = 2.5000000000000020e-13;
4091
4092// Test data for a=1.0000000000000000, b=1.0000000000000000, c=4.0000000000000000.
b4688136
ESR
4093// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
4094// max(|f - f_GSL| / |f_GSL|): 3.1924682001889760e-16
4095// mean(f - f_GSL): 6.4276069846719592e-17
4096// variance(f - f_GSL): 8.4595753242740185e-33
4097// stddev(f - f_GSL): 9.1975949705746545e-17
2be75957
ESR
4098const testcase_hyperg<double>
4099data082[19] =
4100{
4101 { 0.83165649828125487, 1.0000000000000000, 1.0000000000000000,
b4688136 4102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4103 { 0.84626246650116621, 1.0000000000000000, 1.0000000000000000,
b4688136 4104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4105 { 0.86165287670267476, 1.0000000000000000, 1.0000000000000000,
b4688136 4106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4107 { 0.87790681762615264, 1.0000000000000000, 1.0000000000000000,
b4688136 4108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4109 { 0.89511583784087634, 1.0000000000000000, 1.0000000000000000,
b4688136
ESR
4110 4.0000000000000000, -0.50000000000000000, 0.0 },
4111 { 0.91338673957393823, 1.0000000000000000, 1.0000000000000000,
4112 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 4113 { 0.93284521667332010, 1.0000000000000000, 1.0000000000000000,
b4688136 4114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4115 { 0.95364066873549813, 1.0000000000000000, 1.0000000000000000,
b4688136 4116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4117 { 0.97595268969924187, 1.0000000000000000, 1.0000000000000000,
b4688136 4118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4119 { 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
b4688136 4120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4121 { 1.0260530485179122, 1.0000000000000000, 1.0000000000000000,
b4688136 4122 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 4123 { 1.0544523154103413, 1.0000000000000000, 1.0000000000000000,
b4688136 4124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4125 { 1.0856358366643180, 1.0000000000000000, 1.0000000000000000,
b4688136 4126 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 4127 { 1.1201824010510930, 1.0000000000000000, 1.0000000000000000,
b4688136 4128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4129 { 1.1588830833596719, 1.0000000000000000, 1.0000000000000000,
b4688136 4130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4131 { 1.2028682930536780, 1.0000000000000000, 1.0000000000000000,
b4688136 4132 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 4133 { 1.2538561433469468, 1.0000000000000000, 1.0000000000000000,
b4688136 4134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4135 { 1.3147120107267418, 1.0000000000000000, 1.0000000000000000,
b4688136 4136 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 4137 { 1.3910528844853491, 1.0000000000000000, 1.0000000000000000,
b4688136 4138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4139};
4140const double toler082 = 2.5000000000000020e-13;
4141
4142// Test data for a=1.0000000000000000, b=1.0000000000000000, c=6.0000000000000000.
b4688136 4143// max(|f - f_GSL|): 4.4408920985006262e-16 at index 7
2be75957 4144// max(|f - f_GSL| / |f_GSL|): 4.5856134910670077e-16
b4688136
ESR
4145// mean(f - f_GSL): 5.2589511692770570e-17
4146// variance(f - f_GSL): 8.9881736403943358e-33
4147// stddev(f - f_GSL): 9.4805978927461832e-17
2be75957
ESR
4148const testcase_hyperg<double>
4149data083[19] =
4150{
4151 { 0.87917686994924560, 1.0000000000000000, 1.0000000000000000,
b4688136 4152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4153 { 0.89033956110358403, 1.0000000000000000, 1.0000000000000000,
b4688136 4154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4155 { 0.90196195126098355, 1.0000000000000000, 1.0000000000000000,
b4688136 4156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4157 { 0.91408080149514681, 1.0000000000000000, 1.0000000000000000,
b4688136 4158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4159 { 0.92673756761314952, 1.0000000000000000, 1.0000000000000000,
b4688136 4160 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 4161 { 0.93997926630123430, 1.0000000000000000, 1.0000000000000000,
b4688136 4162 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 4163 { 0.95385955885019325, 1.0000000000000000, 1.0000000000000000,
b4688136 4164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4165 { 0.96844012412988900, 1.0000000000000000, 1.0000000000000000,
b4688136 4166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4167 { 0.98379242268046208, 1.0000000000000000, 1.0000000000000000,
b4688136 4168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4169 { 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
b4688136 4170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4171 { 1.0171615499181177, 1.0000000000000000, 1.0000000000000000,
b4688136
ESR
4172 6.0000000000000000, 0.10000000000000009, 0.0 },
4173 { 1.0353950776091039, 1.0000000000000000, 1.0000000000000000,
4174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4175 { 1.0548437030651112, 1.0000000000000000, 1.0000000000000000,
b4688136 4176 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 4177 { 1.0756840039415978, 1.0000000000000000, 1.0000000000000000,
b4688136 4178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4179 { 1.0981384722661196, 1.0000000000000000, 1.0000000000000000,
b4688136 4180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4181 { 1.1224950318916129, 1.0000000000000000, 1.0000000000000000,
b4688136 4182 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 4183 { 1.1491396357184527, 1.0000000000000000, 1.0000000000000000,
b4688136 4184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4185 { 1.1786158344507012, 1.0000000000000000, 1.0000000000000000,
b4688136 4186 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 4187 { 1.2117500593515478, 1.0000000000000000, 1.0000000000000000,
b4688136 4188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4189};
4190const double toler083 = 2.5000000000000020e-13;
4191
4192// Test data for a=1.0000000000000000, b=1.0000000000000000, c=8.0000000000000000.
b4688136
ESR
4193// max(|f - f_GSL|): 2.2204460492503131e-16 at index 17
4194// max(|f - f_GSL| / |f_GSL|): 1.9755522134245812e-16
4195// mean(f - f_GSL): 1.7529837230923523e-17
4196// variance(f - f_GSL): 1.8020397140465364e-35
4197// stddev(f - f_GSL): 4.2450438325729174e-18
2be75957
ESR
4198const testcase_hyperg<double>
4199data084[19] =
4200{
4201 { 0.90538259348578420, 1.0000000000000000, 1.0000000000000000,
b4688136 4202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4203 { 0.91444830598832061, 1.0000000000000000, 1.0000000000000000,
b4688136 4204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4205 { 0.92381915945973991, 1.0000000000000000, 1.0000000000000000,
b4688136 4206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4207 { 0.93351553488501793, 1.0000000000000000, 1.0000000000000000,
b4688136 4208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4209 { 0.94356001859234861, 1.0000000000000000, 1.0000000000000000,
b4688136
ESR
4210 8.0000000000000000, -0.50000000000000000, 0.0 },
4211 { 0.95397775039949628, 1.0000000000000000, 1.0000000000000000,
4212 8.0000000000000000, -0.39999999999999991, 0.0 },
4213 { 0.96479684710618008, 1.0000000000000000, 1.0000000000000000,
4214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4215 { 0.97604892281308531, 1.0000000000000000, 1.0000000000000000,
b4688136 4216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4217 { 0.98776973540356938, 1.0000000000000000, 1.0000000000000000,
b4688136 4218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4219 { 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
b4688136 4220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4221 { 1.0127864273812119, 1.0000000000000000, 1.0000000000000000,
b4688136 4222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 4223 { 1.0261830717772533, 1.0000000000000000, 1.0000000000000000,
b4688136 4224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4225 { 1.0402531144740719, 1.0000000000000000, 1.0000000000000000,
b4688136 4226 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 4227 { 1.0550712790827002, 1.0000000000000000, 1.0000000000000000,
b4688136 4228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4229 { 1.0707271945059007, 1.0000000000000000, 1.0000000000000000,
b4688136 4230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4231 { 1.0873302420658923, 1.0000000000000000, 1.0000000000000000,
b4688136 4232 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 4233 { 1.1050168587085545, 1.0000000000000000, 1.0000000000000000,
b4688136 4234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4235 { 1.1239622188477687, 1.0000000000000000, 1.0000000000000000,
b4688136 4236 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 4237 { 1.1444006183097781, 1.0000000000000000, 1.0000000000000000,
b4688136 4238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4239};
4240const double toler084 = 2.5000000000000020e-13;
4241
4242// Test data for a=1.0000000000000000, b=1.0000000000000000, c=10.000000000000000.
b4688136
ESR
4243// max(|f - f_GSL|): 2.2204460492503131e-16 at index 18
4244// max(|f - f_GSL| / |f_GSL|): 2.0014207127505480e-16
4245// mean(f - f_GSL): 0.0000000000000000
4246// variance(f - f_GSL): 2.8912726078702206e-33
4247// stddev(f - f_GSL): 5.3770555212590287e-17
2be75957
ESR
4248const testcase_hyperg<double>
4249data085[19] =
4250{
4251 { 0.92211295632330392, 1.0000000000000000, 1.0000000000000000,
b4688136 4252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 4253 { 0.92975727737040625, 1.0000000000000000, 1.0000000000000000,
b4688136 4254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 4255 { 0.93761992348333489, 1.0000000000000000, 1.0000000000000000,
b4688136 4256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 4257 { 0.94571346180587790, 1.0000000000000000, 1.0000000000000000,
b4688136 4258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 4259 { 0.95405164371146900, 1.0000000000000000, 1.0000000000000000,
b4688136
ESR
4260 10.000000000000000, -0.50000000000000000, 0.0 },
4261 { 0.96264956879205987, 1.0000000000000000, 1.0000000000000000,
4262 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 4263 { 0.97152388013493107, 1.0000000000000000, 1.0000000000000000,
b4688136 4264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 4265 { 0.98069299877709348, 1.0000000000000000, 1.0000000000000000,
b4688136 4266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 4267 { 0.99017740778385854, 1.0000000000000000, 1.0000000000000000,
b4688136 4268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 4269 { 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
b4688136 4270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 4271 { 1.0101865087004833, 1.0000000000000000, 1.0000000000000000,
b4688136 4272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 4273 { 1.0207660479892111, 1.0000000000000000, 1.0000000000000000,
b4688136 4274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 4275 { 1.0317718013185031, 1.0000000000000000, 1.0000000000000000,
b4688136 4276 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 4277 { 1.0432419144892398, 1.0000000000000000, 1.0000000000000000,
b4688136 4278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 4279 { 1.0552206786504446, 1.0000000000000000, 1.0000000000000000,
b4688136 4280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 4281 { 1.0677601383233675, 1.0000000000000000, 1.0000000000000000,
b4688136 4282 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 4283 { 1.0809223485579968, 1.0000000000000000, 1.0000000000000000,
b4688136 4284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 4285 { 1.0947826783002668, 1.0000000000000000, 1.0000000000000000,
b4688136 4286 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 4287 { 1.1094349304493603, 1.0000000000000000, 1.0000000000000000,
b4688136 4288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4289};
4290const double toler085 = 2.5000000000000020e-13;
4291
4292// Test data for a=1.0000000000000000, b=2.0000000000000000, c=2.0000000000000000.
b4688136
ESR
4293// max(|f - f_GSL|): 1.7763568394002505e-15 at index 18
4294// max(|f - f_GSL| / |f_GSL|): 1.9984014443252816e-16
4295// mean(f - f_GSL): 7.5962628000668607e-17
4296// variance(f - f_GSL): 1.6955391669463862e-31
4297// stddev(f - f_GSL): 4.1176925175957300e-16
2be75957
ESR
4298const testcase_hyperg<double>
4299data086[19] =
4300{
4301 { 0.52631578947368429, 1.0000000000000000, 2.0000000000000000,
b4688136 4302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4303 { 0.55555555555555558, 1.0000000000000000, 2.0000000000000000,
b4688136 4304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4305 { 0.58823529411764708, 1.0000000000000000, 2.0000000000000000,
b4688136 4306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4307 { 0.62500000000000000, 1.0000000000000000, 2.0000000000000000,
b4688136 4308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4309 { 0.66666666666666663, 1.0000000000000000, 2.0000000000000000,
b4688136 4310 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 4311 { 0.71428571428571430, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4312 2.0000000000000000, -0.39999999999999991, 0.0 },
4313 { 0.76923076923076938, 1.0000000000000000, 2.0000000000000000,
4314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4315 { 0.83333333333333337, 1.0000000000000000, 2.0000000000000000,
b4688136 4316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4317 { 0.90909090909090906, 1.0000000000000000, 2.0000000000000000,
b4688136 4318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4319 { 1.0000000000000000, 1.0000000000000000, 2.0000000000000000,
b4688136 4320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4321 { 1.1111111111111112, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4322 2.0000000000000000, 0.10000000000000009, 0.0 },
4323 { 1.2500000000000002, 1.0000000000000000, 2.0000000000000000,
4324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4325 { 1.4285714285714286, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4326 2.0000000000000000, 0.30000000000000004, 0.0 },
4327 { 1.6666666666666670, 1.0000000000000000, 2.0000000000000000,
4328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4329 { 2.0000000000000000, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4330 2.0000000000000000, 0.50000000000000000, 0.0 },
4331 { 2.5000000000000009, 1.0000000000000000, 2.0000000000000000,
4332 2.0000000000000000, 0.60000000000000009, 0.0 },
4333 { 3.3333333333333348, 1.0000000000000000, 2.0000000000000000,
4334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4335 { 5.0000000000000009, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4336 2.0000000000000000, 0.80000000000000004, 0.0 },
4337 { 10.000000000000011, 1.0000000000000000, 2.0000000000000000,
4338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4339};
4340const double toler086 = 2.5000000000000020e-13;
4341
4342// Test data for a=1.0000000000000000, b=2.0000000000000000, c=4.0000000000000000.
b4688136
ESR
4343// max(|f - f_GSL|): 2.6645352591003757e-15 at index 18
4344// max(|f - f_GSL| / |f_GSL|): 1.2228571846595245e-15
4345// mean(f - f_GSL): 1.9282820954015878e-16
4346// variance(f - f_GSL): 3.5826351554959189e-31
4347// stddev(f - f_GSL): 5.9855118039278136e-16
2be75957
ESR
4348const testcase_hyperg<double>
4349data087[19] =
4350{
4351 { 0.70351947549341554, 1.0000000000000000, 2.0000000000000000,
b4688136 4352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4353 { 0.72637503722092756, 1.0000000000000000, 2.0000000000000000,
b4688136 4354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4355 { 0.75099661564391240, 1.0000000000000000, 2.0000000000000000,
b4688136 4356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4357 { 0.77761647796730871, 1.0000000000000000, 2.0000000000000000,
b4688136 4358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4359 { 0.80651221621216473, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4360 4.0000000000000000, -0.50000000000000000, 0.0 },
4361 { 0.83801894346580275, 1.0000000000000000, 2.0000000000000000,
4362 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 4363 { 0.87254582050258456, 1.0000000000000000, 2.0000000000000000,
b4688136 4364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4365 { 0.91059888544083678, 1.0000000000000000, 2.0000000000000000,
b4688136 4366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4367 { 0.95281329145592386, 1.0000000000000000, 2.0000000000000000,
b4688136 4368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4369 { 1.0000000000000000, 1.0000000000000000, 2.0000000000000000,
b4688136 4370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4371 { 1.0532154477379738, 1.0000000000000000, 2.0000000000000000,
b4688136 4372 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 4373 { 1.1138692114741471, 1.0000000000000000, 2.0000000000000000,
b4688136 4374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4375 { 1.1838976095305187, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4376 4.0000000000000000, 0.30000000000000004, 0.0 },
4377 { 1.2660586631630240, 1.0000000000000000, 2.0000000000000000,
4378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4379 { 1.3644676665613118, 1.0000000000000000, 2.0000000000000000,
b4688136 4380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4381 { 1.4856585347316102, 1.0000000000000000, 2.0000000000000000,
b4688136 4382 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 4383 { 1.6409590443536872, 1.0000000000000000, 2.0000000000000000,
b4688136 4384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4385 { 1.8528798927325769, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4386 4.0000000000000000, 0.80000000000000004, 0.0 },
4387 { 2.1789423102929653, 1.0000000000000000, 2.0000000000000000,
4388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4389};
4390const double toler087 = 2.5000000000000020e-13;
4391
4392// Test data for a=1.0000000000000000, b=2.0000000000000000, c=6.0000000000000000.
b4688136
ESR
4393// max(|f - f_GSL|): 8.8817841970012523e-16 at index 18
4394// max(|f - f_GSL| / |f_GSL|): 5.8050967180790176e-16
4395// mean(f - f_GSL): 5.8432790769745078e-17
4396// variance(f - f_GSL): 4.0373698660038179e-32
4397// stddev(f - f_GSL): 2.0093207474178476e-16
2be75957
ESR
4398const testcase_hyperg<double>
4399data088[19] =
4400{
4401 { 0.78068027379106275, 1.0000000000000000, 2.0000000000000000,
b4688136 4402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4403 { 0.79924541976981278, 1.0000000000000000, 2.0000000000000000,
b4688136 4404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4405 { 0.81891305585650975, 1.0000000000000000, 2.0000000000000000,
b4688136 4406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4407 { 0.83979799626213247, 1.0000000000000000, 2.0000000000000000,
b4688136 4408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4409 { 0.86203315303160111, 1.0000000000000000, 2.0000000000000000,
b4688136 4410 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 4411 { 0.88577352485361693, 1.0000000000000000, 2.0000000000000000,
b4688136 4412 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 4413 { 0.91120135738402230, 1.0000000000000000, 2.0000000000000000,
b4688136 4414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4415 { 0.93853291956703588, 1.0000000000000000, 2.0000000000000000,
b4688136 4416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4417 { 0.96802755388922956, 1.0000000000000000, 2.0000000000000000,
b4688136 4418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4419 { 1.0000000000000000, 1.0000000000000000, 2.0000000000000000,
b4688136 4420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4421 { 1.0348375559194773, 1.0000000000000000, 2.0000000000000000,
b4688136 4422 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 4423 { 1.0730246119544820, 1.0000000000000000, 2.0000000000000000,
b4688136 4424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4425 { 1.1151788396279341, 1.0000000000000000, 2.0000000000000000,
b4688136 4426 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 4427 { 1.1621066403893472, 1.0000000000000000, 2.0000000000000000,
b4688136 4428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4429 { 1.2148922218710421, 1.0000000000000000, 2.0000000000000000,
b4688136 4430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4431 { 1.2750496810838674, 1.0000000000000000, 2.0000000000000000,
b4688136 4432 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 4433 { 1.3448048570872917, 1.0000000000000000, 2.0000000000000000,
b4688136 4434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4435 { 1.4276833109859521, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4436 6.0000000000000000, 0.80000000000000004, 0.0 },
4437 { 1.5299976259379793, 1.0000000000000000, 2.0000000000000000,
4438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4439};
4440const double toler088 = 2.5000000000000020e-13;
4441
4442// Test data for a=1.0000000000000000, b=2.0000000000000000, c=8.0000000000000000.
b4688136
ESR
4443// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
4444// max(|f - f_GSL| / |f_GSL|): 3.4946054932156233e-16
4445// mean(f - f_GSL): 3.5059674461847047e-17
4446// variance(f - f_GSL): 9.8111051098089209e-33
4447// stddev(f - f_GSL): 9.9051022760034738e-17
2be75957
ESR
4448const testcase_hyperg<double>
4449data089[19] =
4450{
4451 { 0.82510759951857615, 1.0000000000000000, 2.0000000000000000,
b4688136 4452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4453 { 0.84072786892782070, 1.0000000000000000, 2.0000000000000000,
b4688136 4454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4455 { 0.85710884896562356, 1.0000000000000000, 2.0000000000000000,
b4688136 4456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4457 { 0.87431674418118244, 1.0000000000000000, 2.0000000000000000,
b4688136 4458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4459 { 0.89242659229726995, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4460 8.0000000000000000, -0.50000000000000000, 0.0 },
4461 { 0.91152392685930339, 1.0000000000000000, 2.0000000000000000,
4462 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 4463 { 0.93170685950993570, 1.0000000000000000, 2.0000000000000000,
b4688136 4464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4465 { 0.95308871926790661, 1.0000000000000000, 2.0000000000000000,
b4688136 4466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4467 { 0.97580144325325802, 1.0000000000000000, 2.0000000000000000,
b4688136 4468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4469 { 1.0000000000000000, 1.0000000000000000, 2.0000000000000000,
b4688136 4470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4471 { 1.0258682619030324, 1.0000000000000000, 2.0000000000000000,
b4688136 4472 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 4473 { 1.0536269616706000, 1.0000000000000000, 2.0000000000000000,
b4688136 4474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4475 { 1.0835447330793833, 1.0000000000000000, 2.0000000000000000,
b4688136 4476 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 4477 { 1.1159538758396654, 1.0000000000000000, 2.0000000000000000,
b4688136 4478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4479 { 1.1512736659291880, 1.0000000000000000, 2.0000000000000000,
b4688136 4480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4481 { 1.1900463690116090, 1.0000000000000000, 2.0000000000000000,
b4688136 4482 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 4483 { 1.2329961591622411, 1.0000000000000000, 2.0000000000000000,
b4688136 4484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4485 { 1.2811334345669059, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4486 8.0000000000000000, 0.80000000000000004, 0.0 },
4487 { 1.3359629014132053, 1.0000000000000000, 2.0000000000000000,
4488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4489};
4490const double toler089 = 2.5000000000000020e-13;
4491
4492// Test data for a=1.0000000000000000, b=2.0000000000000000, c=10.000000000000000.
b4688136 4493// max(|f - f_GSL|): 4.4408920985006262e-16 at index 7
2be75957 4494// max(|f - f_GSL| / |f_GSL|): 4.6160879869309861e-16
b4688136
ESR
4495// mean(f - f_GSL): -2.9216395384872539e-17
4496// variance(f - f_GSL): 3.7021904791911625e-33
4497// stddev(f - f_GSL): 6.0845628266878486e-17
2be75957
ESR
4498const testcase_hyperg<double>
4499data090[19] =
4500{
4501 { 0.85426123653345876, 1.0000000000000000, 2.0000000000000000,
b4688136 4502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 4503 { 0.86774543390930414, 1.0000000000000000, 2.0000000000000000,
b4688136 4504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 4505 { 0.88178859537254239, 1.0000000000000000, 2.0000000000000000,
b4688136 4506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 4507 { 0.89643269097060951, 1.0000000000000000, 2.0000000000000000,
b4688136 4508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 4509 { 0.91172456687216819, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4510 10.000000000000000, -0.50000000000000000, 0.0 },
4511 { 0.92771674975966134, 1.0000000000000000, 2.0000000000000000,
4512 10.000000000000000, -0.39999999999999991, 0.0 },
4513 { 0.94446842993888669, 1.0000000000000000, 2.0000000000000000,
4514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 4515 { 0.96204667481937678, 1.0000000000000000, 2.0000000000000000,
b4688136 4516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 4517 { 0.98052794339012128, 1.0000000000000000, 2.0000000000000000,
b4688136 4518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 4519 { 1.0000000000000000, 1.0000000000000000, 2.0000000000000000,
b4688136 4520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 4521 { 1.0205643671068179, 1.0000000000000000, 2.0000000000000000,
b4688136 4522 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 4523 { 1.0423395201078882, 1.0000000000000000, 2.0000000000000000,
b4688136 4524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 4525 { 1.0654651277885334, 1.0000000000000000, 2.0000000000000000,
b4688136 4526 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 4527 { 1.0901078068101382, 1.0000000000000000, 2.0000000000000000,
b4688136 4528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 4529 { 1.1164691415928940, 1.0000000000000000, 2.0000000000000000,
b4688136 4530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 4531 { 1.1447972335326551, 1.0000000000000000, 2.0000000000000000,
b4688136
ESR
4532 10.000000000000000, 0.60000000000000009, 0.0 },
4533 { 1.1754040384534163, 1.0000000000000000, 2.0000000000000000,
4534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 4535 { 1.2086928679893112, 1.0000000000000000, 2.0000000000000000,
b4688136 4536 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 4537 { 1.2452055640510711, 1.0000000000000000, 2.0000000000000000,
b4688136 4538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4539};
4540const double toler090 = 2.5000000000000020e-13;
4541
4542// Test data for a=1.0000000000000000, b=5.0000000000000000, c=2.0000000000000000.
b4688136
ESR
4543// max(|f - f_GSL|): 4.0927261579781771e-12 at index 18
4544// max(|f - f_GSL| / |f_GSL|): 1.4735287697491136e-15
4545// mean(f - f_GSL): 2.2385017815981644e-13
4546// variance(f - f_GSL): 8.7776489381819171e-25
4547// stddev(f - f_GSL): 9.3689107895111895e-13
2be75957
ESR
4548const testcase_hyperg<double>
4549data091[19] =
4550{
4551 { 0.25646288779245086, 1.0000000000000000, 5.0000000000000000,
b4688136 4552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4553 { 0.28273129096174376, 1.0000000000000000, 5.0000000000000000,
b4688136 4554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4555 { 0.31438201170962982, 1.0000000000000000, 5.0000000000000000,
b4688136 4556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4557 { 0.35308837890625017, 1.0000000000000000, 5.0000000000000000,
b4688136 4558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4559 { 0.40123456790123452, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4560 2.0000000000000000, -0.50000000000000000, 0.0 },
4561 { 0.46230737192836352, 1.0000000000000000, 5.0000000000000000,
4562 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 4563 { 0.54156016946185348, 1.0000000000000000, 5.0000000000000000,
b4688136 4564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4565 { 0.64718364197530875, 1.0000000000000000, 5.0000000000000000,
b4688136 4566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4567 { 0.79246636158732342, 1.0000000000000000, 5.0000000000000000,
b4688136 4568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4569 { 1.0000000000000000, 1.0000000000000000, 5.0000000000000000,
b4688136 4570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4571 { 1.3103947568968148, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4572 2.0000000000000000, 0.10000000000000009, 0.0 },
4573 { 1.8017578125000016, 1.0000000000000000, 5.0000000000000000,
4574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4575 { 2.6374427321949185, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4576 2.0000000000000000, 0.30000000000000004, 0.0 },
4577 { 4.1975308641975335, 1.0000000000000000, 5.0000000000000000,
4578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4579 { 7.4999999999999964, 1.0000000000000000, 5.0000000000000000,
b4688136 4580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4581 { 15.859375000000012, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4582 2.0000000000000000, 0.60000000000000009, 0.0 },
4583 { 43.734567901234662, 1.0000000000000000, 5.0000000000000000,
4584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4585 { 194.99999999999994, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4586 2.0000000000000000, 0.80000000000000004, 0.0 },
4587 { 2777.5000000000095, 1.0000000000000000, 5.0000000000000000,
4588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4589};
4590const double toler091 = 2.5000000000000020e-13;
4591
4592// Test data for a=1.0000000000000000, b=5.0000000000000000, c=4.0000000000000000.
b4688136
ESR
4593// max(|f - f_GSL|): 4.2632564145606011e-14 at index 18
4594// max(|f - f_GSL| / |f_GSL|): 1.3117712044801870e-15
4595// mean(f - f_GSL): 2.6879083754082736e-15
4596// variance(f - f_GSL): 9.3567700516642700e-29
4597// stddev(f - f_GSL): 9.6730398798228218e-15
2be75957
ESR
4598const testcase_hyperg<double>
4599data092[19] =
4600{
4601 { 0.46398891966759009, 1.0000000000000000, 5.0000000000000000,
b4688136 4602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4603 { 0.49382716049382724, 1.0000000000000000, 5.0000000000000000,
b4688136 4604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4605 { 0.52768166089965407, 1.0000000000000000, 5.0000000000000000,
b4688136 4606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4607 { 0.56640625000000000, 1.0000000000000000, 5.0000000000000000,
b4688136 4608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4609 { 0.61111111111111094, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4610 4.0000000000000000, -0.50000000000000000, 0.0 },
4611 { 0.66326530612244916, 1.0000000000000000, 5.0000000000000000,
4612 4.0000000000000000, -0.39999999999999991, 0.0 },
4613 { 0.72485207100591709, 1.0000000000000000, 5.0000000000000000,
4614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4615 { 0.79861111111111094, 1.0000000000000000, 5.0000000000000000,
b4688136 4616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4617 { 0.88842975206611552, 1.0000000000000000, 5.0000000000000000,
b4688136 4618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4619 { 1.0000000000000000, 1.0000000000000000, 5.0000000000000000,
b4688136 4620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4621 { 1.1419753086419753, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4622 4.0000000000000000, 0.10000000000000009, 0.0 },
4623 { 1.3281250000000000, 1.0000000000000000, 5.0000000000000000,
4624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4625 { 1.5816326530612239, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4626 4.0000000000000000, 0.30000000000000004, 0.0 },
4627 { 1.9444444444444458, 1.0000000000000000, 5.0000000000000000,
4628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4629 { 2.5000000000000000, 1.0000000000000000, 5.0000000000000000,
b4688136 4630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4631 { 3.4374999999999996, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4632 4.0000000000000000, 0.60000000000000009, 0.0 },
4633 { 5.2777777777777786, 1.0000000000000000, 5.0000000000000000,
4634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4635 { 9.9999999999999947, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4636 4.0000000000000000, 0.80000000000000004, 0.0 },
4637 { 32.499999999999950, 1.0000000000000000, 5.0000000000000000,
4638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4639};
4640const double toler092 = 2.5000000000000020e-13;
4641
4642// Test data for a=1.0000000000000000, b=5.0000000000000000, c=6.0000000000000000.
b4688136
ESR
4643// max(|f - f_GSL|): 6.2172489379008766e-15 at index 18
4644// max(|f - f_GSL| / |f_GSL|): 1.2433022037532449e-15
4645// mean(f - f_GSL): 4.9083544246585873e-16
4646// variance(f - f_GSL): 1.9229766015225486e-30
4647// stddev(f - f_GSL): 1.3867143186404864e-15
2be75957
ESR
4648const testcase_hyperg<double>
4649data093[19] =
4650{
4651 { 0.57476744883397490, 1.0000000000000000, 5.0000000000000000,
b4688136 4652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4653 { 0.60302731682513966, 1.0000000000000000, 5.0000000000000000,
b4688136 4654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4655 { 0.63425708719096374, 1.0000000000000000, 5.0000000000000000,
b4688136 4656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4657 { 0.66895764182970430, 1.0000000000000000, 5.0000000000000000,
b4688136 4658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4659 { 0.70775063063963473, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4660 6.0000000000000000, -0.50000000000000000, 0.0 },
4661 { 0.75141762103495946, 1.0000000000000000, 5.0000000000000000,
4662 6.0000000000000000, -0.39999999999999991, 0.0 },
4663 { 0.80095569442603320, 1.0000000000000000, 5.0000000000000000,
4664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4665 { 0.85765823887436754, 1.0000000000000000, 5.0000000000000000,
b4688136 4666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4667 { 0.92323549576335540, 1.0000000000000000, 5.0000000000000000,
b4688136 4668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4669 { 1.0000000000000000, 1.0000000000000000, 5.0000000000000000,
b4688136 4670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4671 { 1.0911622464839472, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4672 6.0000000000000000, 0.10000000000000009, 0.0 },
4673 { 1.2013226178607672, 1.0000000000000000, 5.0000000000000000,
4674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4675 { 1.3373332072682687, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4676 6.0000000000000000, 0.30000000000000004, 0.0 },
4677 { 1.5099074378209718, 1.0000000000000000, 5.0000000000000000,
4678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4679 { 1.7368822229245819, 1.0000000000000000, 5.0000000000000000,
b4688136 4680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4681 { 2.0505871832661429, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4682 6.0000000000000000, 0.60000000000000009, 0.0 },
4683 { 2.5172389775867976, 1.0000000000000000, 5.0000000000000000,
4684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4685 { 3.3015631983556144, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4686 6.0000000000000000, 0.80000000000000004, 0.0 },
4687 { 5.0005935155044563, 1.0000000000000000, 5.0000000000000000,
4688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4689};
4690const double toler093 = 2.5000000000000020e-13;
4691
4692// Test data for a=1.0000000000000000, b=5.0000000000000000, c=8.0000000000000000.
b4688136
ESR
4693// max(|f - f_GSL|): 3.1086244689504383e-15 at index 18
4694// max(|f - f_GSL| / |f_GSL|): 1.1989697058841885e-15
4695// mean(f - f_GSL): 2.4541772123292936e-16
4696// variance(f - f_GSL): 4.8074415038063715e-31
4697// stddev(f - f_GSL): 6.9335715932024320e-16
2be75957
ESR
4698const testcase_hyperg<double>
4699data094[19] =
4700{
4701 { 0.64582752605387983, 1.0000000000000000, 5.0000000000000000,
b4688136 4702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4703 { 0.67184161997264191, 1.0000000000000000, 5.0000000000000000,
b4688136 4704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4705 { 0.70012779922368040, 1.0000000000000000, 5.0000000000000000,
b4688136 4706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4707 { 0.73100784656910278, 1.0000000000000000, 5.0000000000000000,
b4688136 4708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4709 { 0.76486919089091066, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4710 8.0000000000000000, -0.50000000000000000, 0.0 },
4711 { 0.80218301124334590, 1.0000000000000000, 5.0000000000000000,
4712 8.0000000000000000, -0.39999999999999991, 0.0 },
4713 { 0.84352883533234391, 1.0000000000000000, 5.0000000000000000,
4714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4715 { 0.88962858902212572, 1.0000000000000000, 5.0000000000000000,
b4688136 4716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4717 { 0.94139473468584123, 1.0000000000000000, 5.0000000000000000,
b4688136 4718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4719 { 1.0000000000000000, 1.0000000000000000, 5.0000000000000000,
b4688136 4720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4721 { 1.0669812691939897, 1.0000000000000000, 5.0000000000000000,
b4688136 4722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 4723 { 1.1443996012177726, 1.0000000000000000, 5.0000000000000000,
b4688136 4724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4725 { 1.2350966976721314, 1.0000000000000000, 5.0000000000000000,
b4688136 4726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 4727 { 1.3431264370409088, 1.0000000000000000, 5.0000000000000000,
b4688136 4728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4729 { 1.4745266814162399, 1.0000000000000000, 5.0000000000000000,
b4688136 4730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4731 { 1.6388137104840066, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4732 8.0000000000000000, 0.60000000000000009, 0.0 },
4733 { 1.8522074849776522, 1.0000000000000000, 5.0000000000000000,
4734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4735 { 2.1458016978417458, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4736 8.0000000000000000, 0.80000000000000004, 0.0 },
4737 { 2.5927464669826348, 1.0000000000000000, 5.0000000000000000,
4738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4739};
4740const double toler094 = 2.5000000000000020e-13;
4741
4742// Test data for a=1.0000000000000000, b=5.0000000000000000, c=10.000000000000000.
b4688136
ESR
4743// max(|f - f_GSL|): 1.3322676295501878e-15 at index 18
4744// max(|f - f_GSL| / |f_GSL|): 6.8275390424723874e-16
4745// mean(f - f_GSL): 1.0517902338554114e-16
4746// variance(f - f_GSL): 8.8299945988280290e-32
4747// stddev(f - f_GSL): 2.9715306828010425e-16
2be75957
ESR
4748const testcase_hyperg<double>
4749data095[19] =
4750{
4751 { 0.69583236336670584, 1.0000000000000000, 5.0000000000000000,
b4688136 4752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 4753 { 0.71968920666899716, 1.0000000000000000, 5.0000000000000000,
b4688136 4754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 4755 { 0.74533885416044232, 1.0000000000000000, 5.0000000000000000,
b4688136 4756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 4757 { 0.77300145361503070, 1.0000000000000000, 5.0000000000000000,
b4688136 4758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 4759 { 0.80293630810919447, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4760 10.000000000000000, -0.50000000000000000, 0.0 },
4761 { 0.83545132638592057, 1.0000000000000000, 5.0000000000000000,
4762 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 4763 { 0.87091544744412497, 1.0000000000000000, 5.0000000000000000,
b4688136 4764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 4765 { 0.90977522877919847, 1.0000000000000000, 5.0000000000000000,
b4688136 4766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 4767 { 0.95257738192069130, 1.0000000000000000, 5.0000000000000000,
b4688136 4768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 4769 { 1.0000000000000000, 1.0000000000000000, 5.0000000000000000,
b4688136 4770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 4771 { 1.0528968282789379, 1.0000000000000000, 5.0000000000000000,
b4688136 4772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 4773 { 1.1123617169062123, 1.0000000000000000, 5.0000000000000000,
b4688136 4774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 4775 { 1.1798254572896132, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4776 10.000000000000000, 0.30000000000000004, 0.0 },
4777 { 1.2572069000522701, 1.0000000000000000, 5.0000000000000000,
4778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 4779 { 1.3471600884974377, 1.0000000000000000, 5.0000000000000000,
b4688136 4780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 4781 { 1.4535032279573519, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4782 10.000000000000000, 0.60000000000000009, 0.0 },
4783 { 1.5820245752814950, 1.0000000000000000, 5.0000000000000000,
4784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 4785 { 1.7421756366906538, 1.0000000000000000, 5.0000000000000000,
b4688136
ESR
4786 10.000000000000000, 0.80000000000000004, 0.0 },
4787 { 1.9513145531098235, 1.0000000000000000, 5.0000000000000000,
4788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4789};
4790const double toler095 = 2.5000000000000020e-13;
4791
4792// Test data for a=1.0000000000000000, b=10.000000000000000, c=2.0000000000000000.
b4688136
ESR
4793// max(|f - f_GSL|): 2.0861625671386719e-07 at index 18
4794// max(|f - f_GSL| / |f_GSL|): 1.6897916810721003e-15
4795// mean(f - f_GSL): 1.0989192059253727e-08
4796// variance(f - f_GSL): 2.2903477685061008e-15
4797// stddev(f - f_GSL): 4.7857577963224392e-08
2be75957
ESR
4798const testcase_hyperg<double>
4799data096[19] =
4800{
4801 { 0.12307420104127866, 1.0000000000000000, 10.000000000000000,
b4688136 4802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4803 { 0.13818870041457434, 1.0000000000000000, 10.000000000000000,
b4688136 4804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4805 { 0.15739165631811705, 1.0000000000000000, 10.000000000000000,
b4688136 4806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4807 { 0.18249038606882081, 1.0000000000000000, 10.000000000000000,
b4688136 4808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4809 { 0.21644171225027795, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4810 2.0000000000000000, -0.50000000000000000, 0.0 },
4811 { 0.26433326159804149, 1.0000000000000000, 10.000000000000000,
4812 2.0000000000000000, -0.39999999999999991, 0.0 },
4813 { 0.33544459430654527, 1.0000000000000000, 10.000000000000000,
4814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4815 { 0.44788516696232511, 1.0000000000000000, 10.000000000000000,
b4688136 4816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4817 { 0.63989153514168373, 1.0000000000000000, 10.000000000000000,
b4688136 4818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4819 { 1.0000000000000000, 1.0000000000000000, 10.000000000000000,
b4688136 4820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4821 { 1.7568608796813312, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4822 2.0000000000000000, 0.10000000000000009, 0.0 },
4823 { 3.5836558871799102, 1.0000000000000000, 10.000000000000000,
4824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4825 { 8.8077526749963226, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4826 2.0000000000000000, 0.30000000000000004, 0.0 },
4827 { 27.285841702089265, 1.0000000000000000, 10.000000000000000,
4828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4829 { 113.55555555555557, 1.0000000000000000, 10.000000000000000,
b4688136 4830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4831 { 706.24023437500091, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4832 2.0000000000000000, 0.60000000000000009, 0.0 },
4833 { 8064.1687976652511, 1.0000000000000000, 10.000000000000000,
4834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4835 { 271267.22222222196, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4836 2.0000000000000000, 0.80000000000000004, 0.0 },
4837 { 123456790.00000113, 1.0000000000000000, 10.000000000000000,
4838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4839};
4840const double toler096 = 2.5000000000000020e-13;
4841
4842// Test data for a=1.0000000000000000, b=10.000000000000000, c=4.0000000000000000.
b4688136
ESR
4843// max(|f - f_GSL|): 2.6193447411060333e-10 at index 18
4844// max(|f - f_GSL| / |f_GSL|): 1.6039867544159698e-15
4845// mean(f - f_GSL): 1.3861192895235850e-11
4846// variance(f - f_GSL): 3.6088478524883243e-21
4847// stddev(f - f_GSL): 6.0073686856129647e-11
2be75957
ESR
4848const testcase_hyperg<double>
4849data097[19] =
4850{
4851 { 0.28363728383055781, 1.0000000000000000, 10.000000000000000,
b4688136 4852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4853 { 0.30933003169808387, 1.0000000000000000, 10.000000000000000,
b4688136 4854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4855 { 0.33998437757128797, 1.0000000000000000, 10.000000000000000,
b4688136 4856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4857 { 0.37713553224291113, 1.0000000000000000, 10.000000000000000,
b4688136 4858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4859 { 0.42299736538419669, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4860 4.0000000000000000, -0.50000000000000000, 0.0 },
4861 { 0.48086597727600089, 1.0000000000000000, 10.000000000000000,
4862 4.0000000000000000, -0.39999999999999991, 0.0 },
4863 { 0.55583495759293033, 1.0000000000000000, 10.000000000000000,
4864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4865 { 0.65612850114039678, 1.0000000000000000, 10.000000000000000,
b4688136 4866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4867 { 0.79573668772968142, 1.0000000000000000, 10.000000000000000,
b4688136 4868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4869 { 1.0000000000000000, 1.0000000000000000, 10.000000000000000,
b4688136 4870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4871 { 1.3184712058058303, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4872 4.0000000000000000, 0.10000000000000009, 0.0 },
4873 { 1.8576958065941236, 1.0000000000000000, 10.000000000000000,
4874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4875 { 2.8759509651764228, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4876 4.0000000000000000, 0.30000000000000004, 0.0 },
4877 { 5.1046225531822289, 1.0000000000000000, 10.000000000000000,
4878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4879 { 11.095238095238095, 1.0000000000000000, 10.000000000000000,
b4688136 4880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4881 { 32.797154017857174, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4882 4.0000000000000000, 0.60000000000000009, 0.0 },
4883 { 158.01935680536548, 1.0000000000000000, 10.000000000000000,
4884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4885 { 1815.9523809523814, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4886 4.0000000000000000, 0.80000000000000004, 0.0 },
4887 { 163302.14285714392, 1.0000000000000000, 10.000000000000000,
4888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4889};
4890const double toler097 = 2.5000000000000020e-13;
4891
4892// Test data for a=1.0000000000000000, b=10.000000000000000, c=6.0000000000000000.
b4688136
ESR
4893// max(|f - f_GSL|): 2.0463630789890885e-12 at index 18
4894// max(|f - f_GSL| / |f_GSL|): 1.5238873992471854e-15
4895// mean(f - f_GSL): 1.1029773585697082e-13
4896// variance(f - f_GSL): 2.1981059026132227e-25
4897// stddev(f - f_GSL): 4.6883962104468326e-13
2be75957
ESR
4898const testcase_hyperg<double>
4899data098[19] =
4900{
4901 { 0.39006633302741811, 1.0000000000000000, 10.000000000000000,
b4688136 4902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4903 { 0.41898885698103278, 1.0000000000000000, 10.000000000000000,
b4688136 4904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4905 { 0.45245557983812590, 1.0000000000000000, 10.000000000000000,
b4688136 4906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4907 { 0.49160548618861627, 1.0000000000000000, 10.000000000000000,
b4688136 4908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4909 { 0.53798419230517991, 1.0000000000000000, 10.000000000000000,
b4688136 4910 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 4911 { 0.59373881442067322, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4912 6.0000000000000000, -0.39999999999999991, 0.0 },
4913 { 0.66193391357076092, 1.0000000000000000, 10.000000000000000,
4914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4915 { 0.74708402736952118, 1.0000000000000000, 10.000000000000000,
b4688136 4916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4917 { 0.85609281019430605, 1.0000000000000000, 10.000000000000000,
b4688136 4918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4919 { 1.0000000000000000, 1.0000000000000000, 10.000000000000000,
b4688136 4920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4921 { 1.1974451135148187, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4922 6.0000000000000000, 0.10000000000000009, 0.0 },
4923 { 1.4820886036706358, 1.0000000000000000, 10.000000000000000,
4924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4925 { 1.9201183180477521, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4926 6.0000000000000000, 0.30000000000000004, 0.0 },
4927 { 2.6569338297733367, 1.0000000000000000, 10.000000000000000,
4928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4929 { 4.0634920634920650, 1.0000000000000000, 10.000000000000000,
b4688136 4930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4931 { 7.3102678571428568, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4932 6.0000000000000000, 0.60000000000000009, 0.0 },
4933 { 17.512574302697782, 1.0000000000000000, 10.000000000000000,
4934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4935 { 74.206349206349131, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4936 6.0000000000000000, 0.80000000000000004, 0.0 },
4937 { 1342.8571428571502, 1.0000000000000000, 10.000000000000000,
4938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4939};
4940const double toler098 = 2.5000000000000020e-13;
4941
4942// Test data for a=1.0000000000000000, b=10.000000000000000, c=8.0000000000000000.
b4688136
ESR
4943// max(|f - f_GSL|): 7.8159700933611020e-14 at index 18
4944// max(|f - f_GSL| / |f_GSL|): 1.4210854715201975e-15
4945// mean(f - f_GSL): 4.6629367034256575e-15
4946// variance(f - f_GSL): 3.1677071819086927e-28
4947// stddev(f - f_GSL): 1.7798053775367387e-14
2be75957
ESR
4948const testcase_hyperg<double>
4949data099[19] =
4950{
4951 { 0.46726928123633210, 1.0000000000000000, 10.000000000000000,
b4688136 4952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 4953 { 0.49687547629934464, 1.0000000000000000, 10.000000000000000,
b4688136 4954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 4955 { 0.53045208856322223, 1.0000000000000000, 10.000000000000000,
b4688136 4956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 4957 { 0.56884765624999989, 1.0000000000000000, 10.000000000000000,
b4688136 4958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 4959 { 0.61316872427983504, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4960 8.0000000000000000, -0.50000000000000000, 0.0 },
4961 { 0.66488500161969544, 1.0000000000000000, 10.000000000000000,
4962 8.0000000000000000, -0.39999999999999991, 0.0 },
4963 { 0.72598998634501621, 1.0000000000000000, 10.000000000000000,
4964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 4965 { 0.79925411522633760, 1.0000000000000000, 10.000000000000000,
b4688136 4966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 4967 { 0.88863845062192182, 1.0000000000000000, 10.000000000000000,
b4688136 4968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 4969 { 1.0000000000000000, 1.0000000000000000, 10.000000000000000,
b4688136 4970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 4971 { 1.1423563481176653, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4972 8.0000000000000000, 0.10000000000000009, 0.0 },
4973 { 1.3302951388888891, 1.0000000000000000, 10.000000000000000,
4974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 4975 { 1.5889212827988335, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4976 8.0000000000000000, 0.30000000000000004, 0.0 },
4977 { 1.9650205761316886, 1.0000000000000000, 10.000000000000000,
4978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 4979 { 2.5555555555555549, 1.0000000000000000, 10.000000000000000,
b4688136 4980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 4981 { 3.5937500000000013, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4982 8.0000000000000000, 0.60000000000000009, 0.0 },
4983 { 5.7818930041152274, 1.0000000000000000, 10.000000000000000,
4984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 4985 { 12.222222222222220, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
4986 8.0000000000000000, 0.80000000000000004, 0.0 },
4987 { 55.000000000000114, 1.0000000000000000, 10.000000000000000,
4988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
4989};
4990const double toler099 = 2.5000000000000020e-13;
4991
4992// Test data for a=1.0000000000000000, b=10.000000000000000, c=10.000000000000000.
b4688136
ESR
4993// max(|f - f_GSL|): 1.7763568394002505e-15 at index 18
4994// max(|f - f_GSL| / |f_GSL|): 1.9984014443252816e-16
4995// mean(f - f_GSL): 7.5962628000668607e-17
4996// variance(f - f_GSL): 1.6955391669463862e-31
4997// stddev(f - f_GSL): 4.1176925175957300e-16
2be75957
ESR
4998const testcase_hyperg<double>
4999data100[19] =
5000{
5001 { 0.52631578947368429, 1.0000000000000000, 10.000000000000000,
b4688136 5002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 5003 { 0.55555555555555558, 1.0000000000000000, 10.000000000000000,
b4688136 5004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 5005 { 0.58823529411764708, 1.0000000000000000, 10.000000000000000,
b4688136 5006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 5007 { 0.62500000000000000, 1.0000000000000000, 10.000000000000000,
b4688136 5008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 5009 { 0.66666666666666663, 1.0000000000000000, 10.000000000000000,
b4688136 5010 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 5011 { 0.71428571428571430, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
5012 10.000000000000000, -0.39999999999999991, 0.0 },
5013 { 0.76923076923076938, 1.0000000000000000, 10.000000000000000,
5014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 5015 { 0.83333333333333337, 1.0000000000000000, 10.000000000000000,
b4688136 5016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 5017 { 0.90909090909090906, 1.0000000000000000, 10.000000000000000,
b4688136 5018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 5019 { 1.0000000000000000, 1.0000000000000000, 10.000000000000000,
b4688136 5020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 5021 { 1.1111111111111112, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
5022 10.000000000000000, 0.10000000000000009, 0.0 },
5023 { 1.2500000000000002, 1.0000000000000000, 10.000000000000000,
5024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 5025 { 1.4285714285714286, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
5026 10.000000000000000, 0.30000000000000004, 0.0 },
5027 { 1.6666666666666670, 1.0000000000000000, 10.000000000000000,
5028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 5029 { 2.0000000000000000, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
5030 10.000000000000000, 0.50000000000000000, 0.0 },
5031 { 2.5000000000000009, 1.0000000000000000, 10.000000000000000,
5032 10.000000000000000, 0.60000000000000009, 0.0 },
5033 { 3.3333333333333348, 1.0000000000000000, 10.000000000000000,
5034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 5035 { 5.0000000000000009, 1.0000000000000000, 10.000000000000000,
b4688136
ESR
5036 10.000000000000000, 0.80000000000000004, 0.0 },
5037 { 10.000000000000011, 1.0000000000000000, 10.000000000000000,
5038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5039};
5040const double toler100 = 2.5000000000000020e-13;
5041
5042// Test data for a=1.0000000000000000, b=20.000000000000000, c=2.0000000000000000.
b4688136
ESR
5043// max(|f - f_GSL|): 1024.0000000000000 at index 18
5044// max(|f - f_GSL| / |f_GSL|): 1.7510399999999635e-15
5045// mean(f - f_GSL): 53.894788252704814
5046// variance(f - f_GSL): 55188.204676932175
5047// stddev(f - f_GSL): 234.92169903381034
2be75957
ESR
5048const testcase_hyperg<double>
5049data101[19] =
5050{
5051 { 0.058479236576646311, 1.0000000000000000, 20.000000000000000,
b4688136 5052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5053 { 0.065788544763137821, 1.0000000000000000, 20.000000000000000,
b4688136 5054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5055 { 0.075184824937824482, 1.0000000000000000, 20.000000000000000,
b4688136 5056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5057 { 0.087707688693157121, 1.0000000000000000, 20.000000000000000,
b4688136 5058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5059 { 0.10521567442213345, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5060 2.0000000000000000, -0.50000000000000000, 0.0 },
5061 { 0.13135877960541509, 1.0000000000000000, 20.000000000000000,
5062 2.0000000000000000, -0.39999999999999991, 0.0 },
5063 { 0.17423854066297137, 1.0000000000000000, 20.000000000000000,
5064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5065 { 0.25492082527223520, 1.0000000000000000, 20.000000000000000,
b4688136 5066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5067 { 0.44025895219654843, 1.0000000000000000, 20.000000000000000,
b4688136 5068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5069 { 1.0000000000000000, 1.0000000000000000, 20.000000000000000,
b4688136 5070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5071 { 3.3698615820910360, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5072 2.0000000000000000, 0.10000000000000009, 0.0 },
5073 { 17.997089220808562, 1.0000000000000000, 20.000000000000000,
5074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5075 { 153.73298291118951, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5076 2.0000000000000000, 0.30000000000000004, 0.0 },
5077 { 2159.1667587825768, 1.0000000000000000, 20.000000000000000,
5078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5079 { 55188.105263157879, 1.0000000000000000, 20.000000000000000,
b4688136 5080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5081 { 3191209.3921857267, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5082 2.0000000000000000, 0.60000000000000009, 0.0 },
5083 { 646910975.29153574, 1.0000000000000000, 20.000000000000000,
5084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5085 { 1254834626850.2659, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5086 2.0000000000000000, 0.80000000000000004, 0.0 },
5087 { 5.8479532163743910e+17, 1.0000000000000000, 20.000000000000000,
5088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5089};
5090const double toler101 = 2.5000000000000020e-13;
5091
5092// Test data for a=1.0000000000000000, b=20.000000000000000, c=4.0000000000000000.
b4688136
ESR
5093// max(|f - f_GSL|): 0.21875000000000000 at index 18
5094// max(|f - f_GSL| / |f_GSL|): 1.5452521874999694e-15
5095// mean(f - f_GSL): 0.011513220685868108
5096// variance(f - f_GSL): 0.0025185017633005862
5097// stddev(f - f_GSL): 0.050184676578618956
2be75957
ESR
5098const testcase_hyperg<double>
5099data102[19] =
5100{
5101 { 0.15519511120894958, 1.0000000000000000, 20.000000000000000,
b4688136 5102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5103 { 0.17197165701692893, 1.0000000000000000, 20.000000000000000,
b4688136 5104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5105 { 0.19276847315207329, 1.0000000000000000, 20.000000000000000,
b4688136 5106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5107 { 0.21920107206179093, 1.0000000000000000, 20.000000000000000,
b4688136 5108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5109 { 0.25386158960390576, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5110 4.0000000000000000, -0.50000000000000000, 0.0 },
5111 { 0.30115970686600663, 1.0000000000000000, 20.000000000000000,
5112 4.0000000000000000, -0.39999999999999991, 0.0 },
5113 { 0.36916408142057128, 1.0000000000000000, 20.000000000000000,
5114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5115 { 0.47406175901569547, 1.0000000000000000, 20.000000000000000,
b4688136 5116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5117 { 0.65237908266239919, 1.0000000000000000, 20.000000000000000,
b4688136 5118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5119 { 1.0000000000000000, 1.0000000000000000, 20.000000000000000,
b4688136 5120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5121 { 1.8227213362622299, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5122 4.0000000000000000, 0.10000000000000009, 0.0 },
5123 { 4.3716358339791430, 1.0000000000000000, 20.000000000000000,
5124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5125 { 15.670841312959222, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5126 4.0000000000000000, 0.30000000000000004, 0.0 },
5127 { 94.742651122760662, 1.0000000000000000, 20.000000000000000,
5128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5129 { 1081.7275541795671, 1.0000000000000000, 20.000000000000000,
b4688136 5130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5131 { 27809.787731465960, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5132 4.0000000000000000, 0.60000000000000009, 0.0 },
5133 { 2329811.1715181284, 1.0000000000000000, 20.000000000000000,
5134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5135 { 1537787532.6780224, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5136 4.0000000000000000, 0.80000000000000004, 0.0 },
5137 { 141562653507005.19, 1.0000000000000000, 20.000000000000000,
5138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5139};
5140const double toler102 = 2.5000000000000020e-13;
5141
5142// Test data for a=1.0000000000000000, b=20.000000000000000, c=6.0000000000000000.
b4688136
ESR
5143// max(|f - f_GSL|): 0.00024414062500000000 at index 18
5144// max(|f - f_GSL| / |f_GSL|): 1.6763226855512285e-15
5145// mean(f - f_GSL): 1.2849899481406474e-05
5146// variance(f - f_GSL): 3.1370759089735494e-09
5147// stddev(f - f_GSL): 5.6009605506319623e-05
2be75957
ESR
5148const testcase_hyperg<double>
5149data103[19] =
5150{
5151 { 0.23253645591196551, 1.0000000000000000, 20.000000000000000,
b4688136 5152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5153 { 0.25484220947068342, 1.0000000000000000, 20.000000000000000,
b4688136 5154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5155 { 0.28181987881113812, 1.0000000000000000, 20.000000000000000,
b4688136 5156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5157 { 0.31508211677735770, 1.0000000000000000, 20.000000000000000,
b4688136 5158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5159 { 0.35706285886959610, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5160 6.0000000000000000, -0.50000000000000000, 0.0 },
5161 { 0.41160053409238190, 1.0000000000000000, 20.000000000000000,
5162 6.0000000000000000, -0.39999999999999991, 0.0 },
5163 { 0.48508083111181938, 1.0000000000000000, 20.000000000000000,
5164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5165 { 0.58885194371375260, 1.0000000000000000, 20.000000000000000,
b4688136 5166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5167 { 0.74482241684585782, 1.0000000000000000, 20.000000000000000,
b4688136 5168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5169 { 1.0000000000000000, 1.0000000000000000, 20.000000000000000,
b4688136 5170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5171 { 1.4700356864367146, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5172 6.0000000000000000, 0.10000000000000009, 0.0 },
5173 { 2.4955144453055174, 1.0000000000000000, 20.000000000000000,
5174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5175 { 5.3506594845833471, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5176 6.0000000000000000, 0.30000000000000004, 0.0 },
5177 { 16.618413752184267, 1.0000000000000000, 20.000000000000000,
5178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5179 { 89.310629514963878, 1.0000000000000000, 20.000000000000000,
b4688136 5180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5181 { 1029.3439900542960, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5182 6.0000000000000000, 0.60000000000000009, 0.0 },
5183 { 35659.847863372670, 1.0000000000000000, 20.000000000000000,
5184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5185 { 8009309.6233230168, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5186 6.0000000000000000, 0.80000000000000004, 0.0 },
5187 { 145640590027.40201, 1.0000000000000000, 20.000000000000000,
5188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5189};
5190const double toler103 = 2.5000000000000020e-13;
5191
5192// Test data for a=1.0000000000000000, b=20.000000000000000, c=8.0000000000000000.
b4688136
ESR
5193// max(|f - f_GSL|): 7.1525573730468750e-07 at index 18
5194// max(|f - f_GSL| / |f_GSL|): 1.7237966704607975e-15
5195// mean(f - f_GSL): 3.7648905700618082e-08
5196// variance(f - f_GSL): 2.6925522674362989e-14
5197// stddev(f - f_GSL): 1.6408998346749562e-07
2be75957
ESR
5198const testcase_hyperg<double>
5199data104[19] =
5200{
5201 { 0.29614148314592509, 1.0000000000000000, 20.000000000000000,
b4688136 5202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5203 { 0.32176277356430805, 1.0000000000000000, 20.000000000000000,
b4688136 5204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5205 { 0.35217870475550511, 1.0000000000000000, 20.000000000000000,
b4688136 5206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5207 { 0.38885270445515113, 1.0000000000000000, 20.000000000000000,
b4688136 5208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5209 { 0.43389978380608418, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5210 8.0000000000000000, -0.50000000000000000, 0.0 },
5211 { 0.49048612522269414, 1.0000000000000000, 20.000000000000000,
5212 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5213 { 0.56355539635634599, 1.0000000000000000, 20.000000000000000,
b4688136 5214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5215 { 0.66123153239117671, 1.0000000000000000, 20.000000000000000,
b4688136 5216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5217 { 0.79773363961895416, 1.0000000000000000, 20.000000000000000,
b4688136 5218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5219 { 1.0000000000000000, 1.0000000000000000, 20.000000000000000,
b4688136 5220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5221 { 1.3245132157016595, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5222 8.0000000000000000, 0.10000000000000009, 0.0 },
5223 { 1.9065148749742094, 1.0000000000000000, 20.000000000000000,
5224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5225 { 3.1328798652457452, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5226 8.0000000000000000, 0.30000000000000004, 0.0 },
5227 { 6.4172532944033636, 1.0000000000000000, 20.000000000000000,
5228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5229 { 19.071683734222436, 1.0000000000000000, 20.000000000000000,
b4688136 5230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5231 { 104.41989641582512, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5232 8.0000000000000000, 0.60000000000000009, 0.0 },
5233 { 1510.5743992324351, 1.0000000000000000, 20.000000000000000,
5234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5235 { 115518.14360562043, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5236 8.0000000000000000, 0.80000000000000004, 0.0 },
5237 { 414930455.29174191, 1.0000000000000000, 20.000000000000000,
5238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5239};
5240const double toler104 = 2.5000000000000020e-13;
5241
5242// Test data for a=1.0000000000000000, b=20.000000000000000, c=10.000000000000000.
b4688136
ESR
5243// max(|f - f_GSL|): 4.6566128730773926e-09 at index 18
5244// max(|f - f_GSL| / |f_GSL|): 1.6665618165271877e-15
5245// mean(f - f_GSL): 2.4523176471958370e-10
5246// variance(f - f_GSL): 1.1411894517911952e-18
5247// stddev(f - f_GSL): 1.0682646918208967e-09
2be75957
ESR
5248const testcase_hyperg<double>
5249data105[19] =
5250{
5251 { 0.34954259539177701, 1.0000000000000000, 20.000000000000000,
b4688136 5252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 5253 { 0.37714038609235134, 1.0000000000000000, 20.000000000000000,
b4688136 5254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 5255 { 0.40942091659748781, 1.0000000000000000, 20.000000000000000,
b4688136 5256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 5257 { 0.44767109606846422, 1.0000000000000000, 20.000000000000000,
b4688136 5258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 5259 { 0.49368984777532227, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5260 10.000000000000000, -0.50000000000000000, 0.0 },
5261 { 0.55006638216982318, 1.0000000000000000, 20.000000000000000,
5262 10.000000000000000, -0.39999999999999991, 0.0 },
5263 { 0.62065830207408901, 1.0000000000000000, 20.000000000000000,
5264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 5265 { 0.71145554513583764, 1.0000000000000000, 20.000000000000000,
b4688136 5266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 5267 { 0.83223839666914623, 1.0000000000000000, 20.000000000000000,
b4688136 5268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 5269 { 1.0000000000000000, 1.0000000000000000, 20.000000000000000,
b4688136 5270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 5271 { 1.2466748028187731, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5272 10.000000000000000, 0.10000000000000009, 0.0 },
5273 { 1.6386752725021760, 1.0000000000000000, 20.000000000000000,
5274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 5275 { 2.3340068725479681, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5276 10.000000000000000, 0.30000000000000004, 0.0 },
5277 { 3.7848108613132099, 1.0000000000000000, 20.000000000000000,
5278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 5279 { 7.6754638550304133, 1.0000000000000000, 20.000000000000000,
b4688136 5280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 5281 { 23.344217312927277, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5282 10.000000000000000, 0.60000000000000009, 0.0 },
5283 { 149.83491198246998, 1.0000000000000000, 20.000000000000000,
5284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 5285 { 3936.9253501916060, 1.0000000000000000, 20.000000000000000,
b4688136
ESR
5286 10.000000000000000, 0.80000000000000004, 0.0 },
5287 { 2794143.5036480846, 1.0000000000000000, 20.000000000000000,
5288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5289};
5290const double toler105 = 2.5000000000000020e-13;
5291
5292// Test data for a=2.0000000000000000, b=0.0000000000000000, c=2.0000000000000000.
b4688136 5293// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 5294// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
5295// mean(f - f_GSL): 0.0000000000000000
5296// variance(f - f_GSL): 0.0000000000000000
5297// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
5298const testcase_hyperg<double>
5299data106[19] =
5300{
5301 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5303 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5305 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5307 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5309 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5310 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 5311 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5312 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5313 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5315 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5317 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5319 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5321 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5322 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5323 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5325 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5326 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5327 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5329 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5331 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5332 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5333 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5335 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5336 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 5337 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5339};
5340const double toler106 = 2.5000000000000020e-13;
5341
5342// Test data for a=2.0000000000000000, b=0.0000000000000000, c=4.0000000000000000.
b4688136 5343// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 5344// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
5345// mean(f - f_GSL): 0.0000000000000000
5346// variance(f - f_GSL): 0.0000000000000000
5347// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
5348const testcase_hyperg<double>
5349data107[19] =
5350{
5351 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5353 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5355 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5357 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5359 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5360 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 5361 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5362 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5363 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5365 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5367 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5369 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5371 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5372 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5373 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5375 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5376 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5377 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5379 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5381 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5382 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5383 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5385 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5386 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 5387 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5389};
5390const double toler107 = 2.5000000000000020e-13;
5391
5392// Test data for a=2.0000000000000000, b=0.0000000000000000, c=6.0000000000000000.
b4688136 5393// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 5394// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
5395// mean(f - f_GSL): 0.0000000000000000
5396// variance(f - f_GSL): 0.0000000000000000
5397// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
5398const testcase_hyperg<double>
5399data108[19] =
5400{
5401 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5403 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5405 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5407 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5409 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5410 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 5411 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5412 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5413 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5415 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5417 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5419 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5421 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5422 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5423 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5425 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5426 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5427 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5429 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5431 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5432 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5433 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5435 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5436 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 5437 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5439};
5440const double toler108 = 2.5000000000000020e-13;
5441
5442// Test data for a=2.0000000000000000, b=0.0000000000000000, c=8.0000000000000000.
b4688136 5443// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 5444// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
5445// mean(f - f_GSL): 0.0000000000000000
5446// variance(f - f_GSL): 0.0000000000000000
5447// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
5448const testcase_hyperg<double>
5449data109[19] =
5450{
5451 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5453 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5455 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5457 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5459 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5460 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 5461 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5462 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5463 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5465 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5467 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5469 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5471 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5472 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5473 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5475 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5476 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5477 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5479 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5481 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5482 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5483 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5485 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5486 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 5487 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5489};
5490const double toler109 = 2.5000000000000020e-13;
5491
5492// Test data for a=2.0000000000000000, b=0.0000000000000000, c=10.000000000000000.
b4688136 5493// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 5494// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
5495// mean(f - f_GSL): 0.0000000000000000
5496// variance(f - f_GSL): 0.0000000000000000
5497// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
5498const testcase_hyperg<double>
5499data110[19] =
5500{
5501 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 5503 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 5505 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 5507 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 5509 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5510 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 5511 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5512 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 5513 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 5515 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 5517 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 5519 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 5521 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5522 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 5523 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 5525 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5526 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 5527 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 5529 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 5531 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5532 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 5533 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 5535 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5536 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 5537 { 1.0000000000000000, 2.0000000000000000, 0.0000000000000000,
b4688136 5538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5539};
5540const double toler110 = 2.5000000000000020e-13;
5541
5542// Test data for a=2.0000000000000000, b=0.50000000000000000, c=2.0000000000000000.
b4688136
ESR
5543// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
5544// max(|f - f_GSL| / |f_GSL|): 1.8577584504832499e-16
5545// mean(f - f_GSL): 5.8432790769745078e-18
5546// variance(f - f_GSL): 1.1262748212790853e-32
5547// stddev(f - f_GSL): 1.0612609581432294e-16
2be75957
ESR
5548const testcase_hyperg<double>
5549data111[19] =
5550{
b4688136
ESR
5551 { 0.72547625011001160, 2.0000000000000000, 0.50000000000000000,
5552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5553 { 0.74535599249992990, 2.0000000000000000, 0.50000000000000000,
b4688136 5554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5555 { 0.76696498884737041, 2.0000000000000000, 0.50000000000000000,
b4688136 5556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5557 { 0.79056941504209477, 2.0000000000000000, 0.50000000000000000,
b4688136 5558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5559 { 0.81649658092772603, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5560 2.0000000000000000, -0.50000000000000000, 0.0 },
5561 { 0.84515425472851669, 2.0000000000000000, 0.50000000000000000,
5562 2.0000000000000000, -0.39999999999999991, 0.0 },
5563 { 0.87705801930702931, 2.0000000000000000, 0.50000000000000000,
5564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5565 { 0.91287092917527690, 2.0000000000000000, 0.50000000000000000,
b4688136 5566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5567 { 0.95346258924559224, 2.0000000000000000, 0.50000000000000000,
b4688136 5568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5569 { 1.0000000000000000, 2.0000000000000000, 0.50000000000000000,
b4688136 5570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5571 { 1.0540925533894598, 2.0000000000000000, 0.50000000000000000,
b4688136 5572 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5573 { 1.1180339887498949, 2.0000000000000000, 0.50000000000000000,
b4688136 5574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5575 { 1.1952286093343938, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5576 2.0000000000000000, 0.30000000000000004, 0.0 },
5577 { 1.2909944487358058, 2.0000000000000000, 0.50000000000000000,
5578 2.0000000000000000, 0.40000000000000013, 0.0 },
5579 { 1.4142135623730951, 2.0000000000000000, 0.50000000000000000,
5580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5581 { 1.5811388300841900, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5582 2.0000000000000000, 0.60000000000000009, 0.0 },
5583 { 1.8257418583505542, 2.0000000000000000, 0.50000000000000000,
5584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5585 { 2.2360679774997898, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5586 2.0000000000000000, 0.80000000000000004, 0.0 },
5587 { 3.1622776601683809, 2.0000000000000000, 0.50000000000000000,
5588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5589};
5590const double toler111 = 2.5000000000000020e-13;
5591
5592// Test data for a=2.0000000000000000, b=0.50000000000000000, c=4.0000000000000000.
b4688136
ESR
5593// max(|f - f_GSL|): 6.6613381477509392e-16 at index 18
5594// max(|f - f_GSL| / |f_GSL|): 4.6340403913587147e-16
5595// mean(f - f_GSL): 7.5962628000668607e-17
5596// variance(f - f_GSL): 2.0425119025543020e-32
5597// stddev(f - f_GSL): 1.4291647569662155e-16
2be75957
ESR
5598const testcase_hyperg<double>
5599data112[19] =
5600{
5601 { 0.83664260086443765, 2.0000000000000000, 0.50000000000000000,
b4688136 5602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5603 { 0.85046584300227079, 2.0000000000000000, 0.50000000000000000,
b4688136 5604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5605 { 0.86509574979651649, 2.0000000000000000, 0.50000000000000000,
b4688136 5606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5607 { 0.88062082573041911, 2.0000000000000000, 0.50000000000000000,
b4688136 5608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5609 { 0.89714464248521597, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5610 4.0000000000000000, -0.50000000000000000, 0.0 },
5611 { 0.91478946588967569, 2.0000000000000000, 0.50000000000000000,
5612 4.0000000000000000, -0.39999999999999991, 0.0 },
5613 { 0.93370105322348607, 2.0000000000000000, 0.50000000000000000,
5614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5615 { 0.95405511057700887, 2.0000000000000000, 0.50000000000000000,
b4688136 5616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5617 { 0.97606616007978142, 2.0000000000000000, 0.50000000000000000,
b4688136 5618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5619 { 1.0000000000000000, 2.0000000000000000, 0.50000000000000000,
b4688136 5620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5621 { 1.0261916902334731, 2.0000000000000000, 0.50000000000000000,
b4688136 5622 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5623 { 1.0550723519434702, 2.0000000000000000, 0.50000000000000000,
b4688136 5624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5625 { 1.0872106588188091, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5626 4.0000000000000000, 0.30000000000000004, 0.0 },
5627 { 1.1233801699379022, 2.0000000000000000, 0.50000000000000000,
5628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5629 { 1.1646752981725688, 2.0000000000000000, 0.50000000000000000,
b4688136 5630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5631 { 1.2127272514219511, 2.0000000000000000, 0.50000000000000000,
b4688136 5632 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5633 { 1.2701518651068637, 2.0000000000000000, 0.50000000000000000,
b4688136 5634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5635 { 1.3416407864998725, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5636 4.0000000000000000, 0.80000000000000004, 0.0 },
5637 { 1.4374795179111106, 2.0000000000000000, 0.50000000000000000,
5638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5639};
5640const double toler112 = 2.5000000000000020e-13;
5641
5642// Test data for a=2.0000000000000000, b=0.50000000000000000, c=6.0000000000000000.
b4688136 5643// max(|f - f_GSL|): 3.3306690738754696e-16 at index 8
2be75957 5644// max(|f - f_GSL| / |f_GSL|): 3.3853500746952663e-16
b4688136
ESR
5645// mean(f - f_GSL): 1.1686558153949016e-17
5646// variance(f - f_GSL): 2.5949371882270124e-33
5647// stddev(f - f_GSL): 5.0940525990875012e-17
2be75957
ESR
5648const testcase_hyperg<double>
5649data113[19] =
5650{
5651 { 0.88195381730235822, 2.0000000000000000, 0.50000000000000000,
b4688136 5652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5653 { 0.89265078469555081, 2.0000000000000000, 0.50000000000000000,
b4688136 5654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5655 { 0.90382937908303673, 2.0000000000000000, 0.50000000000000000,
b4688136 5656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5657 { 0.91553161389880600, 2.0000000000000000, 0.50000000000000000,
b4688136 5658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5659 { 0.92780530349281509, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5660 6.0000000000000000, -0.50000000000000000, 0.0 },
5661 { 0.94070521140346020, 2.0000000000000000, 0.50000000000000000,
5662 6.0000000000000000, -0.39999999999999991, 0.0 },
5663 { 0.95429450630523349, 2.0000000000000000, 0.50000000000000000,
5664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5665 { 0.96864663325785849, 2.0000000000000000, 0.50000000000000000,
b4688136 5666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5667 { 0.98384775588541795, 2.0000000000000000, 0.50000000000000000,
b4688136 5668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5669 { 1.0000000000000000, 2.0000000000000000, 0.50000000000000000,
b4688136 5670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5671 { 1.0172258496884334, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5672 6.0000000000000000, 0.10000000000000009, 0.0 },
5673 { 1.0356742479163461, 2.0000000000000000, 0.50000000000000000,
5674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5675 { 1.0555293036908924, 2.0000000000000000, 0.50000000000000000,
b4688136 5676 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5677 { 1.0770231491562379, 2.0000000000000000, 0.50000000000000000,
b4688136 5678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5679 { 1.1004557416484888, 2.0000000000000000, 0.50000000000000000,
b4688136 5680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5681 { 1.1262270515731978, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5682 6.0000000000000000, 0.60000000000000009, 0.0 },
5683 { 1.1548932919125088, 2.0000000000000000, 0.50000000000000000,
5684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5685 { 1.1872757758134724, 2.0000000000000000, 0.50000000000000000,
b4688136 5686 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 5687 { 1.2247091713458949, 2.0000000000000000, 0.50000000000000000,
b4688136 5688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5689};
5690const double toler113 = 2.5000000000000020e-13;
5691
5692// Test data for a=2.0000000000000000, b=0.50000000000000000, c=8.0000000000000000.
b4688136
ESR
5693// max(|f - f_GSL|): 2.2204460492503131e-16 at index 17
5694// max(|f - f_GSL| / |f_GSL|): 1.9683492716399738e-16
5695// mean(f - f_GSL): 1.7529837230923523e-17
5696// variance(f - f_GSL): 2.4527762774522302e-33
5697// stddev(f - f_GSL): 4.9525511380017369e-17
2be75957
ESR
5698const testcase_hyperg<double>
5699data114[19] =
5700{
5701 { 0.90716919697107279, 2.0000000000000000, 0.50000000000000000,
b4688136 5702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5703 { 0.91592299407142508, 2.0000000000000000, 0.50000000000000000,
b4688136 5704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5705 { 0.92500027075874192, 2.0000000000000000, 0.50000000000000000,
b4688136 5706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5707 { 0.93442464185467122, 2.0000000000000000, 0.50000000000000000,
b4688136 5708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5709 { 0.94422248683737076, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5710 8.0000000000000000, -0.50000000000000000, 0.0 },
5711 { 0.95442341810133347, 2.0000000000000000, 0.50000000000000000,
5712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5713 { 0.96506085725516355, 2.0000000000000000, 0.50000000000000000,
b4688136 5714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5715 { 0.97617275213704069, 2.0000000000000000, 0.50000000000000000,
b4688136 5716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5717 { 0.98780247986309799, 2.0000000000000000, 0.50000000000000000,
b4688136 5718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5719 { 1.0000000000000000, 2.0000000000000000, 0.50000000000000000,
b4688136 5720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5721 { 1.0128233505813447, 2.0000000000000000, 0.50000000000000000,
b4688136 5722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5723 { 1.0263406246541855, 2.0000000000000000, 0.50000000000000000,
b4688136 5724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5725 { 1.0406326381700366, 2.0000000000000000, 0.50000000000000000,
b4688136 5726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5727 { 1.0557966239802845, 2.0000000000000000, 0.50000000000000000,
b4688136 5728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5729 { 1.0719515075786321, 2.0000000000000000, 0.50000000000000000,
b4688136 5730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5731 { 1.0892457392422055, 2.0000000000000000, 0.50000000000000000,
b4688136 5732 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5733 { 1.1078695188000958, 2.0000000000000000, 0.50000000000000000,
b4688136 5734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5735 { 1.1280752258974340, 2.0000000000000000, 0.50000000000000000,
b4688136 5736 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 5737 { 1.1502152002706476, 2.0000000000000000, 0.50000000000000000,
b4688136 5738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5739};
5740const double toler114 = 2.5000000000000020e-13;
5741
5742// Test data for a=2.0000000000000000, b=0.50000000000000000, c=10.000000000000000.
b4688136
ESR
5743// max(|f - f_GSL|): 3.3306690738754696e-16 at index 8
5744// max(|f - f_GSL| / |f_GSL|): 3.3636359087105992e-16
5745// mean(f - f_GSL): 2.9216395384872539e-17
5746// variance(f - f_GSL): 2.1804680539963092e-33
5747// stddev(f - f_GSL): 4.6695482158302094e-17
2be75957
ESR
5748const testcase_hyperg<double>
5749data115[19] =
5750{
5751 { 0.92336416053263082, 2.0000000000000000, 0.50000000000000000,
b4688136 5752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 5753 { 0.93078397248364542, 2.0000000000000000, 0.50000000000000000,
b4688136 5754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 5755 { 0.93843714333600259, 2.0000000000000000, 0.50000000000000000,
b4688136 5756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 5757 { 0.94633837784068098, 2.0000000000000000, 0.50000000000000000,
b4688136 5758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 5759 { 0.95450388104967876, 2.0000000000000000, 0.50000000000000000,
b4688136 5760 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 5761 { 0.96295158125742752, 2.0000000000000000, 0.50000000000000000,
b4688136
ESR
5762 10.000000000000000, -0.39999999999999991, 0.0 },
5763 { 0.97170139827854329, 2.0000000000000000, 0.50000000000000000,
5764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 5765 { 0.98077556918512687, 2.0000000000000000, 0.50000000000000000,
b4688136 5766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 5767 { 0.99019904777750845, 2.0000000000000000, 0.50000000000000000,
b4688136 5768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 5769 { 1.0000000000000000, 2.0000000000000000, 0.50000000000000000,
b4688136 5770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 5771 { 1.0102104261941198, 2.0000000000000000, 0.50000000000000000,
b4688136 5772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 5773 { 1.0208669540935695, 2.0000000000000000, 0.50000000000000000,
b4688136 5774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 5775 { 1.0320118665407505, 2.0000000000000000, 0.50000000000000000,
b4688136 5776 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 5777 { 1.0436944599504387, 2.0000000000000000, 0.50000000000000000,
b4688136 5778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 5779 { 1.0559728828278145, 2.0000000000000000, 0.50000000000000000,
b4688136 5780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 5781 { 1.0689166967761712, 2.0000000000000000, 0.50000000000000000,
b4688136 5782 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 5783 { 1.0826105758119842, 2.0000000000000000, 0.50000000000000000,
b4688136 5784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 5785 { 1.0971599106346146, 2.0000000000000000, 0.50000000000000000,
b4688136 5786 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 5787 { 1.1126998828023964, 2.0000000000000000, 0.50000000000000000,
b4688136 5788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5789};
5790const double toler115 = 2.5000000000000020e-13;
5791
5792// Test data for a=2.0000000000000000, b=1.0000000000000000, c=2.0000000000000000.
b4688136
ESR
5793// max(|f - f_GSL|): 1.7763568394002505e-15 at index 18
5794// max(|f - f_GSL| / |f_GSL|): 1.9984014443252816e-16
5795// mean(f - f_GSL): 7.5962628000668607e-17
5796// variance(f - f_GSL): 1.6955391669463862e-31
5797// stddev(f - f_GSL): 4.1176925175957300e-16
2be75957
ESR
5798const testcase_hyperg<double>
5799data116[19] =
5800{
5801 { 0.52631578947368429, 2.0000000000000000, 1.0000000000000000,
b4688136 5802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5803 { 0.55555555555555558, 2.0000000000000000, 1.0000000000000000,
b4688136 5804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5805 { 0.58823529411764708, 2.0000000000000000, 1.0000000000000000,
b4688136 5806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5807 { 0.62500000000000000, 2.0000000000000000, 1.0000000000000000,
b4688136 5808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5809 { 0.66666666666666663, 2.0000000000000000, 1.0000000000000000,
b4688136 5810 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 5811 { 0.71428571428571430, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5812 2.0000000000000000, -0.39999999999999991, 0.0 },
5813 { 0.76923076923076938, 2.0000000000000000, 1.0000000000000000,
5814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5815 { 0.83333333333333337, 2.0000000000000000, 1.0000000000000000,
b4688136 5816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5817 { 0.90909090909090906, 2.0000000000000000, 1.0000000000000000,
b4688136 5818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5819 { 1.0000000000000000, 2.0000000000000000, 1.0000000000000000,
b4688136 5820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5821 { 1.1111111111111112, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5822 2.0000000000000000, 0.10000000000000009, 0.0 },
5823 { 1.2500000000000002, 2.0000000000000000, 1.0000000000000000,
5824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5825 { 1.4285714285714286, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5826 2.0000000000000000, 0.30000000000000004, 0.0 },
5827 { 1.6666666666666670, 2.0000000000000000, 1.0000000000000000,
5828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5829 { 2.0000000000000000, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5830 2.0000000000000000, 0.50000000000000000, 0.0 },
5831 { 2.5000000000000009, 2.0000000000000000, 1.0000000000000000,
5832 2.0000000000000000, 0.60000000000000009, 0.0 },
5833 { 3.3333333333333348, 2.0000000000000000, 1.0000000000000000,
5834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5835 { 5.0000000000000009, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5836 2.0000000000000000, 0.80000000000000004, 0.0 },
5837 { 10.000000000000011, 2.0000000000000000, 1.0000000000000000,
5838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5839};
5840const double toler116 = 2.5000000000000020e-13;
5841
5842// Test data for a=2.0000000000000000, b=1.0000000000000000, c=4.0000000000000000.
b4688136
ESR
5843// max(|f - f_GSL|): 2.6645352591003757e-15 at index 18
5844// max(|f - f_GSL| / |f_GSL|): 1.2228571846595245e-15
5845// mean(f - f_GSL): 1.9282820954015878e-16
5846// variance(f - f_GSL): 3.5826351554959189e-31
5847// stddev(f - f_GSL): 5.9855118039278136e-16
2be75957
ESR
5848const testcase_hyperg<double>
5849data117[19] =
5850{
5851 { 0.70351947549341554, 2.0000000000000000, 1.0000000000000000,
b4688136 5852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5853 { 0.72637503722092756, 2.0000000000000000, 1.0000000000000000,
b4688136 5854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5855 { 0.75099661564391240, 2.0000000000000000, 1.0000000000000000,
b4688136 5856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5857 { 0.77761647796730871, 2.0000000000000000, 1.0000000000000000,
b4688136 5858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5859 { 0.80651221621216473, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5860 4.0000000000000000, -0.50000000000000000, 0.0 },
5861 { 0.83801894346580275, 2.0000000000000000, 1.0000000000000000,
5862 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5863 { 0.87254582050258456, 2.0000000000000000, 1.0000000000000000,
b4688136 5864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5865 { 0.91059888544083678, 2.0000000000000000, 1.0000000000000000,
b4688136 5866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5867 { 0.95281329145592386, 2.0000000000000000, 1.0000000000000000,
b4688136 5868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5869 { 1.0000000000000000, 2.0000000000000000, 1.0000000000000000,
b4688136 5870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5871 { 1.0532154477379738, 2.0000000000000000, 1.0000000000000000,
b4688136 5872 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5873 { 1.1138692114741471, 2.0000000000000000, 1.0000000000000000,
b4688136 5874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5875 { 1.1838976095305187, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5876 4.0000000000000000, 0.30000000000000004, 0.0 },
5877 { 1.2660586631630240, 2.0000000000000000, 1.0000000000000000,
5878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5879 { 1.3644676665613118, 2.0000000000000000, 1.0000000000000000,
b4688136 5880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5881 { 1.4856585347316102, 2.0000000000000000, 1.0000000000000000,
b4688136 5882 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5883 { 1.6409590443536872, 2.0000000000000000, 1.0000000000000000,
b4688136 5884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5885 { 1.8528798927325769, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5886 4.0000000000000000, 0.80000000000000004, 0.0 },
5887 { 2.1789423102929653, 2.0000000000000000, 1.0000000000000000,
5888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5889};
5890const double toler117 = 2.5000000000000020e-13;
5891
5892// Test data for a=2.0000000000000000, b=1.0000000000000000, c=6.0000000000000000.
b4688136
ESR
5893// max(|f - f_GSL|): 8.8817841970012523e-16 at index 18
5894// max(|f - f_GSL| / |f_GSL|): 5.8050967180790176e-16
5895// mean(f - f_GSL): 5.8432790769745078e-17
5896// variance(f - f_GSL): 4.0373698660038179e-32
5897// stddev(f - f_GSL): 2.0093207474178476e-16
2be75957
ESR
5898const testcase_hyperg<double>
5899data118[19] =
5900{
5901 { 0.78068027379106275, 2.0000000000000000, 1.0000000000000000,
b4688136 5902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5903 { 0.79924541976981278, 2.0000000000000000, 1.0000000000000000,
b4688136 5904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5905 { 0.81891305585650975, 2.0000000000000000, 1.0000000000000000,
b4688136 5906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5907 { 0.83979799626213247, 2.0000000000000000, 1.0000000000000000,
b4688136 5908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5909 { 0.86203315303160111, 2.0000000000000000, 1.0000000000000000,
b4688136 5910 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 5911 { 0.88577352485361693, 2.0000000000000000, 1.0000000000000000,
b4688136 5912 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5913 { 0.91120135738402230, 2.0000000000000000, 1.0000000000000000,
b4688136 5914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5915 { 0.93853291956703588, 2.0000000000000000, 1.0000000000000000,
b4688136 5916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5917 { 0.96802755388922956, 2.0000000000000000, 1.0000000000000000,
b4688136 5918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5919 { 1.0000000000000000, 2.0000000000000000, 1.0000000000000000,
b4688136 5920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5921 { 1.0348375559194773, 2.0000000000000000, 1.0000000000000000,
b4688136 5922 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5923 { 1.0730246119544820, 2.0000000000000000, 1.0000000000000000,
b4688136 5924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5925 { 1.1151788396279341, 2.0000000000000000, 1.0000000000000000,
b4688136 5926 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5927 { 1.1621066403893472, 2.0000000000000000, 1.0000000000000000,
b4688136 5928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5929 { 1.2148922218710421, 2.0000000000000000, 1.0000000000000000,
b4688136 5930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5931 { 1.2750496810838674, 2.0000000000000000, 1.0000000000000000,
b4688136 5932 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5933 { 1.3448048570872917, 2.0000000000000000, 1.0000000000000000,
b4688136 5934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5935 { 1.4276833109859521, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5936 6.0000000000000000, 0.80000000000000004, 0.0 },
5937 { 1.5299976259379793, 2.0000000000000000, 1.0000000000000000,
5938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5939};
5940const double toler118 = 2.5000000000000020e-13;
5941
5942// Test data for a=2.0000000000000000, b=1.0000000000000000, c=8.0000000000000000.
b4688136
ESR
5943// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
5944// max(|f - f_GSL| / |f_GSL|): 3.4946054932156233e-16
5945// mean(f - f_GSL): 3.5059674461847047e-17
5946// variance(f - f_GSL): 9.8111051098089209e-33
5947// stddev(f - f_GSL): 9.9051022760034738e-17
2be75957
ESR
5948const testcase_hyperg<double>
5949data119[19] =
5950{
5951 { 0.82510759951857615, 2.0000000000000000, 1.0000000000000000,
b4688136 5952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 5953 { 0.84072786892782070, 2.0000000000000000, 1.0000000000000000,
b4688136 5954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 5955 { 0.85710884896562356, 2.0000000000000000, 1.0000000000000000,
b4688136 5956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 5957 { 0.87431674418118244, 2.0000000000000000, 1.0000000000000000,
b4688136 5958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 5959 { 0.89242659229726995, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5960 8.0000000000000000, -0.50000000000000000, 0.0 },
5961 { 0.91152392685930339, 2.0000000000000000, 1.0000000000000000,
5962 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 5963 { 0.93170685950993570, 2.0000000000000000, 1.0000000000000000,
b4688136 5964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 5965 { 0.95308871926790661, 2.0000000000000000, 1.0000000000000000,
b4688136 5966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 5967 { 0.97580144325325802, 2.0000000000000000, 1.0000000000000000,
b4688136 5968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 5969 { 1.0000000000000000, 2.0000000000000000, 1.0000000000000000,
b4688136 5970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 5971 { 1.0258682619030324, 2.0000000000000000, 1.0000000000000000,
b4688136 5972 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 5973 { 1.0536269616706000, 2.0000000000000000, 1.0000000000000000,
b4688136 5974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 5975 { 1.0835447330793833, 2.0000000000000000, 1.0000000000000000,
b4688136 5976 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 5977 { 1.1159538758396654, 2.0000000000000000, 1.0000000000000000,
b4688136 5978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 5979 { 1.1512736659291880, 2.0000000000000000, 1.0000000000000000,
b4688136 5980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 5981 { 1.1900463690116090, 2.0000000000000000, 1.0000000000000000,
b4688136 5982 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 5983 { 1.2329961591622411, 2.0000000000000000, 1.0000000000000000,
b4688136 5984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 5985 { 1.2811334345669059, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
5986 8.0000000000000000, 0.80000000000000004, 0.0 },
5987 { 1.3359629014132053, 2.0000000000000000, 1.0000000000000000,
5988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
5989};
5990const double toler119 = 2.5000000000000020e-13;
5991
5992// Test data for a=2.0000000000000000, b=1.0000000000000000, c=10.000000000000000.
b4688136 5993// max(|f - f_GSL|): 4.4408920985006262e-16 at index 7
2be75957 5994// max(|f - f_GSL| / |f_GSL|): 4.6160879869309861e-16
b4688136
ESR
5995// mean(f - f_GSL): -2.9216395384872539e-17
5996// variance(f - f_GSL): 3.7021904791911625e-33
5997// stddev(f - f_GSL): 6.0845628266878486e-17
2be75957
ESR
5998const testcase_hyperg<double>
5999data120[19] =
6000{
6001 { 0.85426123653345876, 2.0000000000000000, 1.0000000000000000,
b4688136 6002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 6003 { 0.86774543390930414, 2.0000000000000000, 1.0000000000000000,
b4688136 6004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 6005 { 0.88178859537254239, 2.0000000000000000, 1.0000000000000000,
b4688136 6006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 6007 { 0.89643269097060951, 2.0000000000000000, 1.0000000000000000,
b4688136 6008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 6009 { 0.91172456687216819, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
6010 10.000000000000000, -0.50000000000000000, 0.0 },
6011 { 0.92771674975966134, 2.0000000000000000, 1.0000000000000000,
6012 10.000000000000000, -0.39999999999999991, 0.0 },
6013 { 0.94446842993888669, 2.0000000000000000, 1.0000000000000000,
6014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 6015 { 0.96204667481937678, 2.0000000000000000, 1.0000000000000000,
b4688136 6016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 6017 { 0.98052794339012128, 2.0000000000000000, 1.0000000000000000,
b4688136 6018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 6019 { 1.0000000000000000, 2.0000000000000000, 1.0000000000000000,
b4688136 6020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 6021 { 1.0205643671068179, 2.0000000000000000, 1.0000000000000000,
b4688136 6022 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 6023 { 1.0423395201078882, 2.0000000000000000, 1.0000000000000000,
b4688136 6024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 6025 { 1.0654651277885334, 2.0000000000000000, 1.0000000000000000,
b4688136 6026 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 6027 { 1.0901078068101382, 2.0000000000000000, 1.0000000000000000,
b4688136 6028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 6029 { 1.1164691415928940, 2.0000000000000000, 1.0000000000000000,
b4688136 6030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 6031 { 1.1447972335326551, 2.0000000000000000, 1.0000000000000000,
b4688136
ESR
6032 10.000000000000000, 0.60000000000000009, 0.0 },
6033 { 1.1754040384534163, 2.0000000000000000, 1.0000000000000000,
6034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 6035 { 1.2086928679893112, 2.0000000000000000, 1.0000000000000000,
b4688136 6036 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 6037 { 1.2452055640510711, 2.0000000000000000, 1.0000000000000000,
b4688136 6038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6039};
6040const double toler120 = 2.5000000000000020e-13;
6041
6042// Test data for a=2.0000000000000000, b=2.0000000000000000, c=2.0000000000000000.
b4688136
ESR
6043// max(|f - f_GSL|): 4.2632564145606011e-14 at index 18
6044// max(|f - f_GSL| / |f_GSL|): 4.2632564145605916e-16
6045// mean(f - f_GSL): 2.3636063866361887e-15
6046// variance(f - f_GSL): 9.5093179694074762e-29
6047// stddev(f - f_GSL): 9.7515731907254209e-15
2be75957
ESR
6048const testcase_hyperg<double>
6049data121[19] =
6050{
6051 { 0.27700831024930750, 2.0000000000000000, 2.0000000000000000,
b4688136 6052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6053 { 0.30864197530864196, 2.0000000000000000, 2.0000000000000000,
b4688136 6054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6055 { 0.34602076124567477, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6056 2.0000000000000000, -0.69999999999999996, 0.0 },
6057 { 0.39062500000000000, 2.0000000000000000, 2.0000000000000000,
6058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6059 { 0.44444444444444442, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6060 2.0000000000000000, -0.50000000000000000, 0.0 },
6061 { 0.51020408163265318, 2.0000000000000000, 2.0000000000000000,
6062 2.0000000000000000, -0.39999999999999991, 0.0 },
6063 { 0.59171597633136108, 2.0000000000000000, 2.0000000000000000,
6064 2.0000000000000000, -0.29999999999999993, 0.0 },
6065 { 0.69444444444444442, 2.0000000000000000, 2.0000000000000000,
6066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6067 { 0.82644628099173545, 2.0000000000000000, 2.0000000000000000,
b4688136 6068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6069 { 1.0000000000000000, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6070 2.0000000000000000, 0.0000000000000000, 0.0 },
6071 { 1.2345679012345683, 2.0000000000000000, 2.0000000000000000,
6072 2.0000000000000000, 0.10000000000000009, 0.0 },
6073 { 1.5625000000000007, 2.0000000000000000, 2.0000000000000000,
6074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6075 { 2.0408163265306127, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6076 2.0000000000000000, 0.30000000000000004, 0.0 },
6077 { 2.7777777777777795, 2.0000000000000000, 2.0000000000000000,
6078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6079 { 4.0000000000000000, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6080 2.0000000000000000, 0.50000000000000000, 0.0 },
6081 { 6.2500000000000027, 2.0000000000000000, 2.0000000000000000,
6082 2.0000000000000000, 0.60000000000000009, 0.0 },
6083 { 11.111111111111125, 2.0000000000000000, 2.0000000000000000,
6084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6085 { 25.000000000000007, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6086 2.0000000000000000, 0.80000000000000004, 0.0 },
6087 { 100.00000000000023, 2.0000000000000000, 2.0000000000000000,
6088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6089};
6090const double toler121 = 2.5000000000000020e-13;
6091
6092// Test data for a=2.0000000000000000, b=2.0000000000000000, c=4.0000000000000000.
b4688136
ESR
6093// max(|f - f_GSL|): 7.9936057773011271e-15 at index 18
6094// max(|f - f_GSL| / |f_GSL|): 1.3252801810681345e-15
6095// mean(f - f_GSL): 6.3107414031324687e-16
6096// variance(f - f_GSL): 3.1787980555780903e-30
6097// stddev(f - f_GSL): 1.7829184096806254e-15
2be75957
ESR
6098const testcase_hyperg<double>
6099data122[19] =
6100{
6101 { 0.50515448477320835, 2.0000000000000000, 2.0000000000000000,
b4688136 6102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6103 { 0.53674994210078020, 2.0000000000000000, 2.0000000000000000,
b4688136 6104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6105 { 0.57194655162437413, 2.0000000000000000, 2.0000000000000000,
b4688136 6106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6107 { 0.61137322330312327, 2.0000000000000000, 2.0000000000000000,
b4688136 6108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6109 { 0.65581297297972585, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6110 4.0000000000000000, -0.50000000000000000, 0.0 },
6111 { 0.70625323977290955, 2.0000000000000000, 2.0000000000000000,
6112 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 6113 { 0.76395739449542666, 2.0000000000000000, 2.0000000000000000,
b4688136 6114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6115 { 0.83056871002513311, 2.0000000000000000, 2.0000000000000000,
b4688136 6116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6117 { 0.90826553449323655, 2.0000000000000000, 2.0000000000000000,
b4688136 6118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6119 { 1.0000000000000000, 2.0000000000000000, 2.0000000000000000,
b4688136 6120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6121 { 1.1098784992198341, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6122 4.0000000000000000, 0.10000000000000009, 0.0 },
6123 { 1.2437942741831702, 2.0000000000000000, 2.0000000000000000,
6124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6125 { 1.4105343768544543, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6126 4.0000000000000000, 0.30000000000000004, 0.0 },
6127 { 1.6238435648986023, 2.0000000000000000, 2.0000000000000000,
6128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6129 { 1.9065970003160624, 2.0000000000000000, 2.0000000000000000,
b4688136 6130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6131 { 2.3001951284393627, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6132 4.0000000000000000, 0.60000000000000009, 0.0 },
6133 { 2.8891774744673469, 2.0000000000000000, 2.0000000000000000,
6134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6135 { 3.8827206436045336, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6136 4.0000000000000000, 0.80000000000000004, 0.0 },
6137 { 6.0316345867773640, 2.0000000000000000, 2.0000000000000000,
6138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6139};
6140const double toler122 = 2.5000000000000020e-13;
6141
6142// Test data for a=2.0000000000000000, b=2.0000000000000000, c=6.0000000000000000.
b4688136
ESR
6143// max(|f - f_GSL|): 3.1086244689504383e-15 at index 18
6144// max(|f - f_GSL| / |f_GSL|): 1.2095468681839713e-15
6145// mean(f - f_GSL): 2.5126100030990384e-16
6146// variance(f - f_GSL): 4.7878393162502431e-31
6147// stddev(f - f_GSL): 6.9194214470938558e-16
2be75957
ESR
6148const testcase_hyperg<double>
6149data123[19] =
6150{
6151 { 0.61824560969673270, 2.0000000000000000, 2.0000000000000000,
b4688136 6152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6153 { 0.64645665839161026, 2.0000000000000000, 2.0000000000000000,
b4688136 6154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6155 { 0.67712272792612116, 2.0000000000000000, 2.0000000000000000,
b4688136 6156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6157 { 0.71058076074636822, 2.0000000000000000, 2.0000000000000000,
b4688136 6158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6159 { 0.74723387423852838, 2.0000000000000000, 2.0000000000000000,
b4688136 6160 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 6161 { 0.78756892188863170, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6162 6.0000000000000000, -0.39999999999999991, 0.0 },
6163 { 0.83218012557592669, 2.0000000000000000, 2.0000000000000000,
6164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6165 { 0.88180144818204143, 2.0000000000000000, 2.0000000000000000,
b4688136 6166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6167 { 0.93735184459468934, 2.0000000000000000, 2.0000000000000000,
b4688136 6168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6169 { 1.0000000000000000, 2.0000000000000000, 2.0000000000000000,
b4688136 6170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6171 { 1.0712594799044883, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6172 6.0000000000000000, 0.10000000000000009, 0.0 },
6173 { 1.1531330932162098, 2.0000000000000000, 2.0000000000000000,
6174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6175 { 1.2483404191094898, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6176 6.0000000000000000, 0.30000000000000004, 0.0 },
6177 { 1.3606934909972506, 2.0000000000000000, 2.0000000000000000,
6178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6179 { 1.4957544469027071, 2.0000000000000000, 2.0000000000000000,
b4688136 6180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6181 { 1.6620777107871287, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6182 6.0000000000000000, 0.60000000000000009, 0.0 },
6183 { 1.8738132387064512, 2.0000000000000000, 2.0000000000000000,
6184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6185 { 2.1570670242247409, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6186 6.0000000000000000, 0.80000000000000004, 0.0 },
6187 { 2.5700735959225507, 2.0000000000000000, 2.0000000000000000,
6188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6189};
6190const double toler123 = 2.5000000000000020e-13;
6191
6192// Test data for a=2.0000000000000000, b=2.0000000000000000, c=8.0000000000000000.
b4688136
ESR
6193// max(|f - f_GSL|): 1.3322676295501878e-15 at index 18
6194// max(|f - f_GSL| / |f_GSL|): 7.1401110547148366e-16
6195// mean(f - f_GSL): 1.0517902338554114e-16
6196// variance(f - f_GSL): 8.8299945988280290e-32
6197// stddev(f - f_GSL): 2.9715306828010425e-16
2be75957
ESR
6198const testcase_hyperg<double>
6199data124[19] =
6200{
6201 { 0.68776713859043437, 2.0000000000000000, 2.0000000000000000,
b4688136 6202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6203 { 0.71280582849489893, 2.0000000000000000, 2.0000000000000000,
b4688136 6204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6205 { 0.73962983054724896, 2.0000000000000000, 2.0000000000000000,
b4688136 6206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6207 { 0.76844343025262063, 2.0000000000000000, 2.0000000000000000,
b4688136 6208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6209 { 0.79948476671182900, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6210 8.0000000000000000, -0.50000000000000000, 0.0 },
6211 { 0.83303347721461252, 2.0000000000000000, 2.0000000000000000,
6212 8.0000000000000000, -0.39999999999999991, 0.0 },
6213 { 0.86942060391338805, 2.0000000000000000, 2.0000000000000000,
6214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6215 { 0.90904161711581655, 2.0000000000000000, 2.0000000000000000,
b4688136 6216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6217 { 0.95237381468647742, 2.0000000000000000, 2.0000000000000000,
b4688136 6218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6219 { 1.0000000000000000, 2.0000000000000000, 2.0000000000000000,
b4688136 6220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6221 { 1.0526413941912305, 2.0000000000000000, 2.0000000000000000,
b4688136 6222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 6223 { 1.1112045278881502, 2.0000000000000000, 2.0000000000000000,
b4688136 6224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6225 { 1.1768500306393046, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6226 8.0000000000000000, 0.30000000000000004, 0.0 },
6227 { 1.2510971588297890, 2.0000000000000000, 2.0000000000000000,
6228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6229 { 1.3359896747789315, 2.0000000000000000, 2.0000000000000000,
b4688136 6230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6231 { 1.4343740183432725, 2.0000000000000000, 2.0000000000000000,
b4688136 6232 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 6233 { 1.5504011881337365, 2.0000000000000000, 2.0000000000000000,
b4688136 6234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6235 { 1.6905307012604318, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6236 8.0000000000000000, 0.80000000000000004, 0.0 },
6237 { 1.8658920279264428, 2.0000000000000000, 2.0000000000000000,
6238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6239};
6240const double toler124 = 2.5000000000000020e-13;
6241
6242// Test data for a=2.0000000000000000, b=2.0000000000000000, c=10.000000000000000.
b4688136
ESR
6243// max(|f - f_GSL|): 6.6613381477509392e-16 at index 18
6244// max(|f - f_GSL| / |f_GSL|): 4.1884541027166499e-16
6245// mean(f - f_GSL): 5.8432790769745078e-17
6246// variance(f - f_GSL): 2.1656512830141486e-32
6247// stddev(f - f_GSL): 1.4716151952919448e-16
2be75957
ESR
6248const testcase_hyperg<double>
6249data125[19] =
6250{
6251 { 0.73530262886958797, 2.0000000000000000, 2.0000000000000000,
b4688136 6252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 6253 { 0.75768898977673649, 2.0000000000000000, 2.0000000000000000,
b4688136 6254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 6255 { 0.78143483544640080, 2.0000000000000000, 2.0000000000000000,
b4688136 6256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 6257 { 0.80667428603297209, 2.0000000000000000, 2.0000000000000000,
b4688136 6258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 6259 { 0.83356078772438313, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6260 10.000000000000000, -0.50000000000000000, 0.0 },
6261 { 0.86227093001346156, 2.0000000000000000, 2.0000000000000000,
6262 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 6263 { 0.89300925500556971, 2.0000000000000000, 2.0000000000000000,
b4688136 6264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 6265 { 0.92601438873425990, 2.0000000000000000, 2.0000000000000000,
b4688136 6266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 6267 { 0.96156696230910810, 2.0000000000000000, 2.0000000000000000,
b4688136 6268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 6269 { 1.0000000000000000, 2.0000000000000000, 2.0000000000000000,
b4688136 6270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 6271 { 1.0417127776179342, 2.0000000000000000, 2.0000000000000000,
b4688136 6272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 6273 { 1.0871896789480930, 2.0000000000000000, 2.0000000000000000,
b4688136 6274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 6275 { 1.1370264514689949, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6276 10.000000000000000, 0.30000000000000004, 0.0 },
6277 { 1.1919677804049158, 2.0000000000000000, 2.0000000000000000,
6278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 6279 { 1.2529628761065934, 2.0000000000000000, 2.0000000000000000,
b4688136 6280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 6281 { 1.3212511796458866, 2.0000000000000000, 2.0000000000000000,
b4688136 6282 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 6283 { 1.3985017309668506, 2.0000000000000000, 2.0000000000000000,
b4688136 6284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 6285 { 1.4870567523847895, 2.0000000000000000, 2.0000000000000000,
b4688136
ESR
6286 10.000000000000000, 0.80000000000000004, 0.0 },
6287 { 1.5904049523738044, 2.0000000000000000, 2.0000000000000000,
6288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6289};
6290const double toler125 = 2.5000000000000020e-13;
6291
6292// Test data for a=2.0000000000000000, b=5.0000000000000000, c=2.0000000000000000.
b4688136
ESR
6293// max(|f - f_GSL|): 1.0186340659856796e-10 at index 18
6294// max(|f - f_GSL| / |f_GSL|): 1.1641532182693482e-15
6295// mean(f - f_GSL): 5.5487040400966458e-12
6296// variance(f - f_GSL): 5.4399356990620132e-22
6297// stddev(f - f_GSL): 2.3323669734975269e-11
2be75957
ESR
6298const testcase_hyperg<double>
6299data126[19] =
6300{
b4688136
ESR
6301 { 0.040386107340619273, 2.0000000000000000, 5.0000000000000000,
6302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6303 { 0.052922149401344633, 2.0000000000000000, 5.0000000000000000,
b4688136 6304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6305 { 0.070429627772374270, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6306 2.0000000000000000, -0.69999999999999996, 0.0 },
6307 { 0.095367431640624986, 2.0000000000000000, 5.0000000000000000,
6308 2.0000000000000000, -0.59999999999999998, 0.0 },
6309 { 0.13168724279835389, 2.0000000000000000, 5.0000000000000000,
6310 2.0000000000000000, -0.50000000000000000, 0.0 },
6311 { 0.18593443208187072, 2.0000000000000000, 5.0000000000000000,
6312 2.0000000000000000, -0.39999999999999991, 0.0 },
6313 { 0.26932907434290460, 2.0000000000000000, 5.0000000000000000,
6314 2.0000000000000000, -0.29999999999999993, 0.0 },
6315 { 0.40187757201646102, 2.0000000000000000, 5.0000000000000000,
6316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6317 { 0.62092132305915493, 2.0000000000000000, 5.0000000000000000,
b4688136 6318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6319 { 1.0000000000000000, 2.0000000000000000, 5.0000000000000000,
b4688136 6320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6321 { 1.6935087808430296, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6322 2.0000000000000000, 0.10000000000000009, 0.0 },
6323 { 3.0517578125000036, 2.0000000000000000, 5.0000000000000000,
6324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6325 { 5.9499018266198629, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6326 2.0000000000000000, 0.30000000000000004, 0.0 },
6327 { 12.860082304526767, 2.0000000000000000, 5.0000000000000000,
6328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6329 { 32.000000000000000, 2.0000000000000000, 5.0000000000000000,
b4688136 6330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6331 { 97.656250000000114, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6332 2.0000000000000000, 0.60000000000000009, 0.0 },
6333 { 411.52263374485722, 2.0000000000000000, 5.0000000000000000,
6334 2.0000000000000000, 0.70000000000000018, 0.0 },
6335 { 3124.9999999999995, 2.0000000000000000, 5.0000000000000000,
6336 2.0000000000000000, 0.80000000000000004, 0.0 },
6337 { 100000.00000000055, 2.0000000000000000, 5.0000000000000000,
6338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6339};
6340const double toler126 = 2.5000000000000020e-13;
6341
6342// Test data for a=2.0000000000000000, b=5.0000000000000000, c=4.0000000000000000.
b4688136
ESR
6343// max(|f - f_GSL|): 6.8212102632969618e-13 at index 18
6344// max(|f - f_GSL| / |f_GSL|): 1.2402200478721734e-15
6345// mean(f - f_GSL): 3.8828589466495609e-14
6346// variance(f - f_GSL): 2.4267524775254640e-26
6347// stddev(f - f_GSL): 1.5578037352392837e-13
2be75957
ESR
6348const testcase_hyperg<double>
6349data127[19] =
6350{
6351 { 0.21140107887447138, 2.0000000000000000, 5.0000000000000000,
b4688136 6352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6353 { 0.24005486968449927, 2.0000000000000000, 5.0000000000000000,
b4688136 6354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6355 { 0.27478119275391810, 2.0000000000000000, 5.0000000000000000,
b4688136 6356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6357 { 0.31738281250000006, 2.0000000000000000, 5.0000000000000000,
b4688136 6358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6359 { 0.37037037037037024, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6360 4.0000000000000000, -0.50000000000000000, 0.0 },
6361 { 0.43731778425655982, 2.0000000000000000, 5.0000000000000000,
6362 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 6363 { 0.52344105598543467, 2.0000000000000000, 5.0000000000000000,
b4688136 6364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6365 { 0.63657407407407429, 2.0000000000000000, 5.0000000000000000,
b4688136 6366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6367 { 0.78888054094665638, 2.0000000000000000, 5.0000000000000000,
b4688136 6368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6369 { 1.0000000000000000, 2.0000000000000000, 5.0000000000000000,
b4688136 6370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6371 { 1.3031550068587108, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6372 4.0000000000000000, 0.10000000000000009, 0.0 },
6373 { 1.7578125000000011, 2.0000000000000000, 5.0000000000000000,
6374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6375 { 2.4781341107871717, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6376 4.0000000000000000, 0.30000000000000004, 0.0 },
6377 { 3.7037037037037073, 2.0000000000000000, 5.0000000000000000,
6378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6379 { 5.9999999999999982, 2.0000000000000000, 5.0000000000000000,
b4688136 6380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6381 { 10.937500000000005, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6382 4.0000000000000000, 0.60000000000000009, 0.0 },
6383 { 24.074074074074115, 2.0000000000000000, 5.0000000000000000,
6384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6385 { 74.999999999999957, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6386 4.0000000000000000, 0.80000000000000004, 0.0 },
6387 { 550.00000000000068, 2.0000000000000000, 5.0000000000000000,
6388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6389};
6390const double toler127 = 2.5000000000000020e-13;
6391
6392// Test data for a=2.0000000000000000, b=5.0000000000000000, c=6.0000000000000000.
b4688136
ESR
6393// max(|f - f_GSL|): 4.9737991503207013e-14 at index 18
6394// max(|f - f_GSL| / |f_GSL|): 1.6580642616864621e-15
6395// mean(f - f_GSL): 3.1670572597201835e-15
6396// variance(f - f_GSL): 1.2718576052442072e-28
6397// stddev(f - f_GSL): 1.1277666448535384e-14
2be75957
ESR
6398const testcase_hyperg<double>
6399data128[19] =
6400{
6401 { 0.33250915203252129, 2.0000000000000000, 5.0000000000000000,
b4688136 6402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6403 { 0.36566851047721943, 2.0000000000000000, 5.0000000000000000,
b4688136 6404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6405 { 0.40414812182437959, 2.0000000000000000, 5.0000000000000000,
b4688136 6406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6407 { 0.44916943268118498, 2.0000000000000000, 5.0000000000000000,
b4688136 6408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6409 { 0.50233081077479547, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6410 6.0000000000000000, -0.50000000000000000, 0.0 },
6411 { 0.56575808728873322, 2.0000000000000000, 5.0000000000000000,
6412 6.0000000000000000, -0.39999999999999991, 0.0 },
6413 { 0.64233106844971455, 2.0000000000000000, 5.0000000000000000,
6414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6415 { 0.73603371116919514, 2.0000000000000000, 5.0000000000000000,
b4688136 6416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6417 { 0.85251256240112439, 2.0000000000000000, 5.0000000000000000,
b4688136 6418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6419 { 1.0000000000000000, 2.0000000000000000, 5.0000000000000000,
b4688136 6420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6421 { 1.1909065696197674, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6422 6.0000000000000000, 0.10000000000000009, 0.0 },
6423 { 1.4447095285569318, 2.0000000000000000, 5.0000000000000000,
6424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6425 { 1.7935243137840653, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6426 6.0000000000000000, 0.30000000000000004, 0.0 },
6427 { 2.2937035820494467, 2.0000000000000000, 5.0000000000000000,
6428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6429 { 3.0524711083016687, 2.0000000000000000, 5.0000000000000000,
b4688136 6430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6431 { 4.2976512669354259, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6432 6.0000000000000000, 0.60000000000000009, 0.0 },
6433 { 6.5977107563194739, 2.0000000000000000, 5.0000000000000000,
6434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6435 { 11.793747206577530, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6436 6.0000000000000000, 0.80000000000000004, 0.0 },
6437 { 29.997625937982132, 2.0000000000000000, 5.0000000000000000,
6438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6439};
6440const double toler128 = 2.5000000000000020e-13;
6441
6442// Test data for a=2.0000000000000000, b=5.0000000000000000, c=8.0000000000000000.
b4688136
ESR
6443// max(|f - f_GSL|): 1.1546319456101628e-14 at index 18
6444// max(|f - f_GSL| / |f_GSL|): 1.4852319937858925e-15
6445// mean(f - f_GSL): 8.5896202431525265e-16
6446// variance(f - f_GSL): 6.6980634833963886e-30
6447// stddev(f - f_GSL): 2.5880617232586221e-15
2be75957
ESR
6448const testcase_hyperg<double>
6449data129[19] =
6450{
6451 { 0.42108197362250294, 2.0000000000000000, 5.0000000000000000,
b4688136 6452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6453 { 0.45503172013983040, 2.0000000000000000, 5.0000000000000000,
b4688136 6454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6455 { 0.49345609813624314, 2.0000000000000000, 5.0000000000000000,
b4688136 6456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6457 { 0.53720880551221295, 2.0000000000000000, 5.0000000000000000,
b4688136 6458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6459 { 0.58736431524847466, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6460 8.0000000000000000, -0.50000000000000000, 0.0 },
6461 { 0.64529222467897995, 2.0000000000000000, 5.0000000000000000,
6462 8.0000000000000000, -0.39999999999999991, 0.0 },
6463 { 0.71276337354393959, 2.0000000000000000, 5.0000000000000000,
6464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6465 { 0.79210466220795306, 2.0000000000000000, 5.0000000000000000,
b4688136 6466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6467 { 0.88643063455510596, 2.0000000000000000, 5.0000000000000000,
b4688136 6468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6469 { 1.0000000000000000, 2.0000000000000000, 5.0000000000000000,
b4688136 6470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6471 { 1.1387832139040652, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6472 8.0000000000000000, 0.10000000000000009, 0.0 },
6473 { 1.3114025920844754, 2.0000000000000000, 5.0000000000000000,
6474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6475 { 1.5307655016768162, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6476 8.0000000000000000, 0.30000000000000004, 0.0 },
6477 { 1.8170727950333352, 2.0000000000000000, 5.0000000000000000,
6478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6479 { 2.2037865486700836, 2.0000000000000000, 5.0000000000000000,
b4688136 6480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6481 { 2.7506766056439380, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6482 8.0000000000000000, 0.60000000000000009, 0.0 },
6483 { 3.5764534935716998, 2.0000000000000000, 5.0000000000000000,
6484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6485 { 4.9587762302155403, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6486 8.0000000000000000, 0.80000000000000004, 0.0 },
6487 { 7.7740847924166907, 2.0000000000000000, 5.0000000000000000,
6488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6489};
6490const double toler129 = 2.5000000000000020e-13;
6491
6492// Test data for a=2.0000000000000000, b=5.0000000000000000, c=10.000000000000000.
b4688136
ESR
6493// max(|f - f_GSL|): 4.4408920985006262e-15 at index 18
6494// max(|f - f_GSL| / |f_GSL|): 1.0721199711322765e-15
6495// mean(f - f_GSL): 3.5059674461847049e-16
6496// variance(f - f_GSL): 9.8111051098089205e-31
6497// stddev(f - f_GSL): 9.9051022760034740e-16
2be75957
ESR
6498const testcase_hyperg<double>
6499data130[19] =
6500{
6501 { 0.48860241312958436, 2.0000000000000000, 5.0000000000000000,
b4688136 6502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 6503 { 0.52193382517068487, 2.0000000000000000, 5.0000000000000000,
b4688136 6504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 6505 { 0.55902375003954219, 2.0000000000000000, 5.0000000000000000,
b4688136 6506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 6507 { 0.60049055150230324, 2.0000000000000000, 5.0000000000000000,
b4688136 6508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 6509 { 0.64709127927203469, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6510 10.000000000000000, -0.50000000000000000, 0.0 },
6511 { 0.69976233335368998, 2.0000000000000000, 5.0000000000000000,
6512 10.000000000000000, -0.39999999999999991, 0.0 },
6513 { 0.75967529501080988, 2.0000000000000000, 5.0000000000000000,
6514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 6515 { 0.82831498895254407, 2.0000000000000000, 5.0000000000000000,
b4688136 6516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 6517 { 0.90759090169653933, 2.0000000000000000, 5.0000000000000000,
b4688136 6518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 6519 { 1.0000000000000000, 2.0000000000000000, 5.0000000000000000,
b4688136 6520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 6521 { 1.1088712278667465, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6522 10.000000000000000, 0.10000000000000009, 0.0 },
6523 { 1.2387445478440855, 2.0000000000000000, 5.0000000000000000,
6524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 6525 { 1.3959812720437546, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6526 10.000000000000000, 0.30000000000000004, 0.0 },
6527 { 1.5897930661091169, 2.0000000000000000, 5.0000000000000000,
6528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 6529 { 1.8340789380307454, 2.0000000000000000, 5.0000000000000000,
b4688136 6530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 6531 { 2.1509548085970764, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6532 10.000000000000000, 0.60000000000000009, 0.0 },
6533 { 2.5782406951207526, 2.0000000000000000, 5.0000000000000000,
6534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 6535 { 3.1877847194242737, 2.0000000000000000, 5.0000000000000000,
b4688136
ESR
6536 10.000000000000000, 0.80000000000000004, 0.0 },
6537 { 4.1421596631676918, 2.0000000000000000, 5.0000000000000000,
6538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6539};
6540const double toler130 = 2.5000000000000020e-13;
6541
6542// Test data for a=2.0000000000000000, b=10.000000000000000, c=2.0000000000000000.
b4688136
ESR
6543// max(|f - f_GSL|): 2.2888183593750000e-05 at index 18
6544// max(|f - f_GSL| / |f_GSL|): 2.4795532226562509e-15
6545// mean(f - f_GSL): 1.2059140510950354e-06
6546// variance(f - f_GSL): 2.7568813079896666e-11
6547// stddev(f - f_GSL): 5.2506012112801583e-06
2be75957
ESR
6548const testcase_hyperg<double>
6549data131[19] =
6550{
6551 { 0.0016310376661280216, 2.0000000000000000, 10.000000000000000,
b4688136 6552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6553 { 0.0028007538972582421, 2.0000000000000000, 10.000000000000000,
b4688136 6554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6555 { 0.0049603324681551939, 2.0000000000000000, 10.000000000000000,
b4688136 6556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6557 { 0.0090949470177292789, 2.0000000000000000, 10.000000000000000,
b4688136 6558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6559 { 0.017341529915832606, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6560 2.0000000000000000, -0.50000000000000000, 0.0 },
6561 { 0.034571613033607791, 2.0000000000000000, 10.000000000000000,
6562 2.0000000000000000, -0.39999999999999991, 0.0 },
6563 { 0.072538150286405839, 2.0000000000000000, 10.000000000000000,
6564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6565 { 0.16150558288984579, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6566 2.0000000000000000, -0.19999999999999996, 0.0 },
6567 { 0.38554328942953142, 2.0000000000000000, 10.000000000000000,
6568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6569 { 1.0000000000000000, 2.0000000000000000, 10.000000000000000,
b4688136 6570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6571 { 2.8679719907924444, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6572 2.0000000000000000, 0.10000000000000009, 0.0 },
6573 { 9.3132257461548065, 2.0000000000000000, 10.000000000000000,
6574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6575 { 35.401331746414378, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6576 2.0000000000000000, 0.30000000000000004, 0.0 },
6577 { 165.38171687920246, 2.0000000000000000, 10.000000000000000,
6578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6579 { 1024.0000000000000, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6580 2.0000000000000000, 0.50000000000000000, 0.0 },
6581 { 9536.7431640625218, 2.0000000000000000, 10.000000000000000,
6582 2.0000000000000000, 0.60000000000000009, 0.0 },
6583 { 169350.87808430390, 2.0000000000000000, 10.000000000000000,
6584 2.0000000000000000, 0.70000000000000018, 0.0 },
6585 { 9765624.9999999963, 2.0000000000000000, 10.000000000000000,
6586 2.0000000000000000, 0.80000000000000004, 0.0 },
6587 { 10000000000.000111, 2.0000000000000000, 10.000000000000000,
6588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6589};
6590const double toler131 = 2.5000000000000020e-13;
6591
6592// Test data for a=2.0000000000000000, b=10.000000000000000, c=4.0000000000000000.
b4688136
ESR
6593// max(|f - f_GSL|): 1.4901161193847656e-08 at index 18
6594// max(|f - f_GSL| / |f_GSL|): 1.4958811384436608e-15
6595// mean(f - f_GSL): 7.8582773037277017e-10
6596// variance(f - f_GSL): 1.1683981904064149e-17
6597// stddev(f - f_GSL): 3.4181840067591665e-09
2be75957
ESR
6598const testcase_hyperg<double>
6599data132[19] =
6600{
6601 { 0.071191280690193537, 2.0000000000000000, 10.000000000000000,
b4688136 6602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6603 { 0.085646504654238384, 2.0000000000000000, 10.000000000000000,
b4688136 6604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6605 { 0.10478215656371109, 2.0000000000000000, 10.000000000000000,
b4688136 6606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6607 { 0.13074816337653578, 2.0000000000000000, 10.000000000000000,
b4688136 6608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6609 { 0.16701141666848118, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6610 4.0000000000000000, -0.50000000000000000, 0.0 },
6611 { 0.21939323375313963, 2.0000000000000000, 10.000000000000000,
6612 4.0000000000000000, -0.39999999999999991, 0.0 },
6613 { 0.29813515331786639, 2.0000000000000000, 10.000000000000000,
6614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6615 { 0.42225974638874397, 2.0000000000000000, 10.000000000000000,
b4688136 6616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6617 { 0.62942145962174878, 2.0000000000000000, 10.000000000000000,
b4688136 6618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6619 { 1.0000000000000000, 2.0000000000000000, 10.000000000000000,
b4688136 6620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6621 { 1.7218685262373197, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6622 4.0000000000000000, 0.10000000000000009, 0.0 },
6623 { 3.2855760483514738, 2.0000000000000000, 10.000000000000000,
6624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6625 { 7.1616652508907093, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6626 4.0000000000000000, 0.30000000000000004, 0.0 },
6627 { 18.612326808485950, 2.0000000000000000, 10.000000000000000,
6628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6629 { 61.476190476190474, 2.0000000000000000, 10.000000000000000,
b4688136 6630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6631 { 286.27580915178623, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6632 4.0000000000000000, 0.60000000000000009, 0.0 },
6633 { 2274.9441142102414, 2.0000000000000000, 10.000000000000000,
6634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6635 { 47229.761904761865, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6636 4.0000000000000000, 0.80000000000000004, 0.0 },
6637 { 9961460.7142858077, 2.0000000000000000, 10.000000000000000,
6638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6639};
6640const double toler132 = 2.5000000000000020e-13;
6641
6642// Test data for a=2.0000000000000000, b=10.000000000000000, c=6.0000000000000000.
b4688136
ESR
6643// max(|f - f_GSL|): 8.7311491370201111e-11 at index 18
6644// max(|f - f_GSL| / |f_GSL|): 1.5843951771650161e-15
6645// mean(f - f_GSL): 4.6467391338242840e-12
6646// variance(f - f_GSL): 4.0072766661644994e-22
6647// stddev(f - f_GSL): 2.0018183399510804e-11
2be75957
ESR
6648const testcase_hyperg<double>
6649data133[19] =
6650{
6651 { 0.14747230019381058, 2.0000000000000000, 10.000000000000000,
b4688136 6652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6653 { 0.17073600100690609, 2.0000000000000000, 10.000000000000000,
b4688136 6654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6655 { 0.19982795745135354, 2.0000000000000000, 10.000000000000000,
b4688136 6656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6657 { 0.23681776864188053, 2.0000000000000000, 10.000000000000000,
b4688136 6658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6659 { 0.28475624360398011, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6660 6.0000000000000000, -0.50000000000000000, 0.0 },
6661 { 0.34827500743063161, 2.0000000000000000, 10.000000000000000,
6662 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 6663 { 0.43464829159684687, 2.0000000000000000, 10.000000000000000,
b4688136 6664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6665 { 0.55576053438064787, 2.0000000000000000, 10.000000000000000,
b4688136 6666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6667 { 0.73195020913445530, 2.0000000000000000, 10.000000000000000,
b4688136 6668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6669 { 1.0000000000000000, 2.0000000000000000, 10.000000000000000,
b4688136 6670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6671 { 1.4310223867822929, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6672 6.0000000000000000, 0.10000000000000009, 0.0 },
6673 { 2.1742563399057566, 2.0000000000000000, 10.000000000000000,
6674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6675 { 3.5769231236256043, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6676 6.0000000000000000, 0.30000000000000004, 0.0 },
6677 { 6.5620441134844469, 2.0000000000000000, 10.000000000000000,
6678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6679 { 14.063492063492063, 2.0000000000000000, 10.000000000000000,
b4688136 6680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6681 { 38.085937500000036, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6682 6.0000000000000000, 0.60000000000000009, 0.0 },
6683 { 150.92973632068330, 2.0000000000000000, 10.000000000000000,
6684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6685 { 1212.3015873015852, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6686 6.0000000000000000, 0.80000000000000004, 0.0 },
6687 { 55107.142857143110, 2.0000000000000000, 10.000000000000000,
6688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6689};
6690const double toler133 = 2.5000000000000020e-13;
6691
6692// Test data for a=2.0000000000000000, b=10.000000000000000, c=8.0000000000000000.
b4688136
ESR
6693// max(|f - f_GSL|): 1.8189894035458565e-12 at index 18
6694// max(|f - f_GSL| / |f_GSL|): 1.4848893090170230e-15
6695// mean(f - f_GSL): 1.0027066896088256e-13
6696// variance(f - f_GSL): 1.7322804840633983e-25
6697// stddev(f - f_GSL): 4.1620673757922257e-13
2be75957
ESR
6698const testcase_hyperg<double>
6699data134[19] =
6700{
6701 { 0.21658059714090577, 2.0000000000000000, 10.000000000000000,
b4688136 6702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6703 { 0.24513539602702861, 2.0000000000000000, 10.000000000000000,
b4688136 6704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6705 { 0.27967018274845046, 2.0000000000000000, 10.000000000000000,
b4688136 6706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6707 { 0.32196044921875022, 2.0000000000000000, 10.000000000000000,
b4688136 6708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6709 { 0.37448559670781911, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6710 8.0000000000000000, -0.50000000000000000, 0.0 },
6711 { 0.44078856032208802, 2.0000000000000000, 10.000000000000000,
6712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 6713 { 0.52606701446027793, 2.0000000000000000, 10.000000000000000,
b4688136 6714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6715 { 0.63818158436213956, 2.0000000000000000, 10.000000000000000,
b4688136 6716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6717 { 0.78944971882612769, 2.0000000000000000, 10.000000000000000,
b4688136 6718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6719 { 1.0000000000000000, 2.0000000000000000, 10.000000000000000,
b4688136 6720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6721 { 1.3044251384443430, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6722 8.0000000000000000, 0.10000000000000009, 0.0 },
6723 { 1.7659505208333344, 2.0000000000000000, 10.000000000000000,
6724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6725 { 2.5093710953769270, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6726 8.0000000000000000, 0.30000000000000004, 0.0 },
6727 { 3.8065843621399202, 2.0000000000000000, 10.000000000000000,
6728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6729 { 6.3333333333333313, 2.0000000000000000, 10.000000000000000,
b4688136 6730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6731 { 12.109375000000004, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6732 8.0000000000000000, 0.60000000000000009, 0.0 },
6733 { 29.115226337448608, 2.0000000000000000, 10.000000000000000,
6734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6735 { 108.33333333333330, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6736 8.0000000000000000, 0.80000000000000004, 0.0 },
6737 { 1225.0000000000023, 2.0000000000000000, 10.000000000000000,
6738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6739};
6740const double toler134 = 2.5000000000000020e-13;
6741
6742// Test data for a=2.0000000000000000, b=10.000000000000000, c=10.000000000000000.
b4688136
ESR
6743// max(|f - f_GSL|): 4.2632564145606011e-14 at index 18
6744// max(|f - f_GSL| / |f_GSL|): 4.2632564145605916e-16
6745// mean(f - f_GSL): 2.3636063866361887e-15
6746// variance(f - f_GSL): 9.5093179694074762e-29
6747// stddev(f - f_GSL): 9.7515731907254209e-15
2be75957
ESR
6748const testcase_hyperg<double>
6749data135[19] =
6750{
6751 { 0.27700831024930750, 2.0000000000000000, 10.000000000000000,
b4688136 6752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 6753 { 0.30864197530864196, 2.0000000000000000, 10.000000000000000,
b4688136 6754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 6755 { 0.34602076124567477, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6756 10.000000000000000, -0.69999999999999996, 0.0 },
6757 { 0.39062500000000000, 2.0000000000000000, 10.000000000000000,
6758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 6759 { 0.44444444444444442, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6760 10.000000000000000, -0.50000000000000000, 0.0 },
6761 { 0.51020408163265318, 2.0000000000000000, 10.000000000000000,
6762 10.000000000000000, -0.39999999999999991, 0.0 },
6763 { 0.59171597633136108, 2.0000000000000000, 10.000000000000000,
6764 10.000000000000000, -0.29999999999999993, 0.0 },
6765 { 0.69444444444444442, 2.0000000000000000, 10.000000000000000,
6766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 6767 { 0.82644628099173545, 2.0000000000000000, 10.000000000000000,
b4688136 6768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 6769 { 1.0000000000000000, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6770 10.000000000000000, 0.0000000000000000, 0.0 },
6771 { 1.2345679012345683, 2.0000000000000000, 10.000000000000000,
6772 10.000000000000000, 0.10000000000000009, 0.0 },
6773 { 1.5625000000000007, 2.0000000000000000, 10.000000000000000,
6774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 6775 { 2.0408163265306127, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6776 10.000000000000000, 0.30000000000000004, 0.0 },
6777 { 2.7777777777777795, 2.0000000000000000, 10.000000000000000,
6778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 6779 { 4.0000000000000000, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6780 10.000000000000000, 0.50000000000000000, 0.0 },
6781 { 6.2500000000000027, 2.0000000000000000, 10.000000000000000,
6782 10.000000000000000, 0.60000000000000009, 0.0 },
6783 { 11.111111111111125, 2.0000000000000000, 10.000000000000000,
6784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 6785 { 25.000000000000007, 2.0000000000000000, 10.000000000000000,
b4688136
ESR
6786 10.000000000000000, 0.80000000000000004, 0.0 },
6787 { 100.00000000000023, 2.0000000000000000, 10.000000000000000,
6788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6789};
6790const double toler135 = 2.5000000000000020e-13;
6791
6792// Test data for a=2.0000000000000000, b=20.000000000000000, c=2.0000000000000000.
b4688136 6793// max(|f - f_GSL|): 475136.00000000000 at index 18
2be75957 6794// max(|f - f_GSL| / |f_GSL|): 5.4067200000000052e-15
b4688136
ESR
6795// mean(f - f_GSL): 25007.185032091642
6796// variance(f - f_GSL): 11881799540.814577
6797// stddev(f - f_GSL): 109003.66755671379
2be75957
ESR
6798const testcase_hyperg<double>
6799data136[19] =
6800{
6801 { 2.6602838683283435e-06, 2.0000000000000000, 20.000000000000000,
b4688136 6802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6803 { 7.8442223930072316e-06, 2.0000000000000000, 20.000000000000000,
b4688136 6804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6805 { 2.4604898194634598e-05, 2.0000000000000000, 20.000000000000000,
b4688136 6806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6807 { 8.2718061255302686e-05, 2.0000000000000000, 20.000000000000000,
b4688136 6808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6809 { 0.00030072865982171723, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6810 2.0000000000000000, -0.50000000000000000, 0.0 },
6811 { 0.0011951964277455204, 2.0000000000000000, 20.000000000000000,
6812 2.0000000000000000, -0.39999999999999991, 0.0 },
6813 { 0.0052617832469731996, 2.0000000000000000, 20.000000000000000,
6814 2.0000000000000000, -0.29999999999999993, 0.0 },
6815 { 0.026084053304588850, 2.0000000000000000, 20.000000000000000,
6816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6817 { 0.14864362802414346, 2.0000000000000000, 20.000000000000000,
b4688136 6818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6819 { 1.0000000000000000, 2.0000000000000000, 20.000000000000000,
b4688136 6820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6821 { 8.2252633399699757, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6822 2.0000000000000000, 0.10000000000000009, 0.0 },
6823 { 86.736173798840738, 2.0000000000000000, 20.000000000000000,
6824 2.0000000000000000, 0.20000000000000018, 0.0 },
6825 { 1253.2542894196868, 2.0000000000000000, 20.000000000000000,
6826 2.0000000000000000, 0.30000000000000004, 0.0 },
6827 { 27351.112277912678, 2.0000000000000000, 20.000000000000000,
6828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6829 { 1048576.0000000000, 2.0000000000000000, 20.000000000000000,
b4688136 6830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6831 { 90949470.177293226, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6832 2.0000000000000000, 0.60000000000000009, 0.0 },
6833 { 28679719907.924767, 2.0000000000000000, 20.000000000000000,
6834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6835 { 95367431640624.906, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6836 2.0000000000000000, 0.80000000000000004, 0.0 },
6837 { 1.0000000000000220e+20, 2.0000000000000000, 20.000000000000000,
6838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6839};
6840const double toler136 = 5.0000000000000039e-13;
6841
6842// Test data for a=2.0000000000000000, b=20.000000000000000, c=4.0000000000000000.
b4688136
ESR
6843// max(|f - f_GSL|): 40.000000000000000 at index 18
6844// max(|f - f_GSL| / |f_GSL|): 1.8712609271522778e-15
6845// mean(f - f_GSL): 2.1052671749403089
6846// variance(f - f_GSL): 84.210508462254538
6847// stddev(f - f_GSL): 9.1766283820504881
2be75957
ESR
6848const testcase_hyperg<double>
6849data137[19] =
6850{
6851 { 0.018828092583720632, 2.0000000000000000, 20.000000000000000,
b4688136 6852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6853 { 0.023381944060455365, 2.0000000000000000, 20.000000000000000,
b4688136 6854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6855 { 0.029789623984280887, 2.0000000000000000, 20.000000000000000,
b4688136 6856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6857 { 0.039191021482500567, 2.0000000000000000, 20.000000000000000,
b4688136 6858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6859 { 0.053727813036721528, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6860 4.0000000000000000, -0.50000000000000000, 0.0 },
6861 { 0.077762010061668857, 2.0000000000000000, 20.000000000000000,
6862 4.0000000000000000, -0.39999999999999991, 0.0 },
6863 { 0.12110505620123323, 2.0000000000000000, 20.000000000000000,
6864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6865 { 0.20870149809080582, 2.0000000000000000, 20.000000000000000,
b4688136 6866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6867 { 0.41429234328785763, 2.0000000000000000, 20.000000000000000,
b4688136 6868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6869 { 1.0000000000000000, 2.0000000000000000, 20.000000000000000,
b4688136 6870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6871 { 3.1308087404153113, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6872 4.0000000000000000, 0.10000000000000009, 0.0 },
6873 { 13.586180626453100, 2.0000000000000000, 20.000000000000000,
6874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6875 { 87.117304082784415, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6876 4.0000000000000000, 0.30000000000000004, 0.0 },
6877 { 889.26474381243384, 2.0000000000000000, 20.000000000000000,
6878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6879 { 16231.913312693494, 2.0000000000000000, 20.000000000000000,
b4688136 6880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6881 { 653537.51168945129, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6882 4.0000000000000000, 0.60000000000000009, 0.0 },
6883 { 87756230.793849647, 2.0000000000000000, 20.000000000000000,
6884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6885 { 101493977171.74945, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6886 4.0000000000000000, 0.80000000000000004, 0.0 },
6887 { 21375960679557820., 2.0000000000000000, 20.000000000000000,
6888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6889};
6890const double toler137 = 2.5000000000000020e-13;
6891
6892// Test data for a=2.0000000000000000, b=20.000000000000000, c=6.0000000000000000.
b4688136
ESR
6893// max(|f - f_GSL|): 0.031250000000000000 at index 18
6894// max(|f - f_GSL| / |f_GSL|): 1.6379336164121759e-15
6895// mean(f - f_GSL): 0.0016447556893365942
6896// variance(f - f_GSL): 5.1397960874034849e-05
6897// stddev(f - f_GSL): 0.0071692371193896806
2be75957
ESR
6898const testcase_hyperg<double>
6899data138[19] =
6900{
6901 { 0.049200410661854238, 2.0000000000000000, 20.000000000000000,
b4688136 6902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6903 { 0.059460876757152607, 2.0000000000000000, 20.000000000000000,
b4688136 6904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6905 { 0.073244762686653225, 2.0000000000000000, 20.000000000000000,
b4688136 6906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6907 { 0.092334626017932769, 2.0000000000000000, 20.000000000000000,
b4688136 6908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6909 { 0.11976760350696856, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6910 6.0000000000000000, -0.50000000000000000, 0.0 },
6911 { 0.16102414609169405, 2.0000000000000000, 20.000000000000000,
6912 6.0000000000000000, -0.39999999999999991, 0.0 },
6913 { 0.22670456785796236, 2.0000000000000000, 20.000000000000000,
6914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6915 { 0.33912903252727361, 2.0000000000000000, 20.000000000000000,
b4688136 6916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6917 { 0.55049794600858049, 2.0000000000000000, 20.000000000000000,
b4688136 6918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6919 { 1.0000000000000000, 2.0000000000000000, 20.000000000000000,
b4688136 6920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6921 { 2.1254722872032232, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6922 6.0000000000000000, 0.10000000000000009, 0.0 },
6923 { 5.6261213886736314, 2.0000000000000000, 20.000000000000000,
6924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6925 { 20.137315891130996, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6926 6.0000000000000000, 0.30000000000000004, 0.0 },
6927 { 108.04381584643900, 2.0000000000000000, 20.000000000000000,
6928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6929 { 992.41692466460245, 2.0000000000000000, 20.000000000000000,
b4688136 6930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6931 { 19055.363816004465, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6932 6.0000000000000000, 0.60000000000000009, 0.0 },
6933 { 1105471.9504312191, 2.0000000000000000, 20.000000000000000,
6934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6935 { 448521363.90608919, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6936 6.0000000000000000, 0.80000000000000004, 0.0 },
6937 { 19078917293639.652, 2.0000000000000000, 20.000000000000000,
6938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6939};
6940const double toler138 = 2.5000000000000020e-13;
6941
6942// Test data for a=2.0000000000000000, b=20.000000000000000, c=8.0000000000000000.
b4688136
ESR
6943// max(|f - f_GSL|): 8.3923339843750000e-05 at index 18
6944// max(|f - f_GSL| / |f_GSL|): 1.8221514326726564e-15
6945// mean(f - f_GSL): 4.4172143495227617e-06
6946// variance(f - f_GSL): 3.7068906120670492e-10
6947// stddev(f - f_GSL): 1.9253287023433297e-05
2be75957
ESR
6948const testcase_hyperg<double>
6949data139[19] =
6950{
6951 { 0.083753547015334884, 2.0000000000000000, 20.000000000000000,
b4688136 6952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 6953 { 0.099238444687035743, 2.0000000000000000, 20.000000000000000,
b4688136 6954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 6955 { 0.11938294012867748, 2.0000000000000000, 20.000000000000000,
b4688136 6956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 6957 { 0.14622683905023329, 2.0000000000000000, 20.000000000000000,
b4688136 6958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 6959 { 0.18303556733713028, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6960 8.0000000000000000, -0.50000000000000000, 0.0 },
6961 { 0.23527764069382415, 2.0000000000000000, 20.000000000000000,
6962 8.0000000000000000, -0.39999999999999991, 0.0 },
6963 { 0.31261681740827069, 2.0000000000000000, 20.000000000000000,
6964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 6965 { 0.43327581880538862, 2.0000000000000000, 20.000000000000000,
b4688136 6966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 6967 { 0.63445840637296680, 2.0000000000000000, 20.000000000000000,
b4688136 6968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 6969 { 1.0000000000000000, 2.0000000000000000, 20.000000000000000,
b4688136 6970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 6971 { 1.7438842395813297, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6972 8.0000000000000000, 0.10000000000000009, 0.0 },
6973 { 3.5070840938209331, 2.0000000000000000, 20.000000000000000,
6974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 6975 { 8.6573372006089713, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6976 8.0000000000000000, 0.30000000000000004, 0.0 },
6977 { 28.779342118408998, 2.0000000000000000, 20.000000000000000,
6978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 6979 { 147.50178613955714, 2.0000000000000000, 20.000000000000000,
b4688136 6980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 6981 { 1427.1686016136398, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6982 8.0000000000000000, 0.60000000000000009, 0.0 },
6983 { 36780.643714655955, 2.0000000000000000, 20.000000000000000,
6984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 6985 { 5313869.6058585485, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
6986 8.0000000000000000, 0.80000000000000004, 0.0 },
6987 { 46057280607.383286, 2.0000000000000000, 20.000000000000000,
6988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
6989};
6990const double toler139 = 2.5000000000000020e-13;
6991
6992// Test data for a=2.0000000000000000, b=20.000000000000000, c=10.000000000000000.
b4688136
ESR
6993// max(|f - f_GSL|): 5.0663948059082031e-07 at index 18
6994// max(|f - f_GSL| / |f_GSL|): 1.9925479281069681e-15
6995// mean(f - f_GSL): 2.6669880993704522e-08
6996// variance(f - f_GSL): 1.3509399735218820e-14
6997// stddev(f - f_GSL): 1.1622994336752823e-07
2be75957
ESR
6998const testcase_hyperg<double>
6999data140[19] =
7000{
7001 { 0.11920045035073676, 2.0000000000000000, 20.000000000000000,
b4688136 7002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 7003 { 0.13907946814302777, 2.0000000000000000, 20.000000000000000,
b4688136 7004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 7005 { 0.16431439792559696, 2.0000000000000000, 20.000000000000000,
b4688136 7006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 7007 { 0.19698796016986989, 2.0000000000000000, 20.000000000000000,
b4688136 7008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 7009 { 0.24028510928790547, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
7010 10.000000000000000, -0.50000000000000000, 0.0 },
7011 { 0.29926031296483130, 2.0000000000000000, 20.000000000000000,
7012 10.000000000000000, -0.39999999999999991, 0.0 },
7013 { 0.38229327814229175, 2.0000000000000000, 20.000000000000000,
7014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 7015 { 0.50402047283093132, 2.0000000000000000, 20.000000000000000,
b4688136 7016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 7017 { 0.69167261179586526, 2.0000000000000000, 20.000000000000000,
b4688136 7018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 7019 { 1.0000000000000000, 2.0000000000000000, 20.000000000000000,
b4688136 7020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 7021 { 1.5503152253394308, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
7022 10.000000000000000, 0.10000000000000009, 0.0 },
7023 { 2.6469548193635828, 2.0000000000000000, 20.000000000000000,
7024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 7025 { 5.1882631330566813, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
7026 10.000000000000000, 0.30000000000000004, 0.0 },
7027 { 12.476792759124546, 2.0000000000000000, 20.000000000000000,
7028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 7029 { 41.026391565091259, 2.0000000000000000, 20.000000000000000,
b4688136 7030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 7031 { 220.92584715988204, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
7032 10.000000000000000, 0.60000000000000009, 0.0 },
7033 { 2677.0834450236389, 2.0000000000000000, 20.000000000000000,
7034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 7035 { 141774.31260689779, 2.0000000000000000, 20.000000000000000,
b4688136
ESR
7036 10.000000000000000, 0.80000000000000004, 0.0 },
7037 { 254267148.83197621, 2.0000000000000000, 20.000000000000000,
7038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7039};
7040const double toler140 = 2.5000000000000020e-13;
7041
7042// Test data for a=5.0000000000000000, b=0.0000000000000000, c=2.0000000000000000.
b4688136 7043// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 7044// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
7045// mean(f - f_GSL): 0.0000000000000000
7046// variance(f - f_GSL): 0.0000000000000000
7047// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
7048const testcase_hyperg<double>
7049data141[19] =
7050{
7051 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7053 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7055 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7057 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7059 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7060 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 7061 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7062 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 7063 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7065 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7067 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7069 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7071 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7072 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 7073 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7075 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7076 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 7077 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7079 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7081 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7082 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 7083 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7085 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7086 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 7087 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7089};
7090const double toler141 = 2.5000000000000020e-13;
7091
7092// Test data for a=5.0000000000000000, b=0.0000000000000000, c=4.0000000000000000.
b4688136 7093// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 7094// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
7095// mean(f - f_GSL): 0.0000000000000000
7096// variance(f - f_GSL): 0.0000000000000000
7097// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
7098const testcase_hyperg<double>
7099data142[19] =
7100{
7101 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7103 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7105 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7107 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7109 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7110 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 7111 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7112 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 7113 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7115 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7117 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7119 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7121 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7122 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 7123 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7125 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7126 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 7127 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7129 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7131 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7132 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 7133 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7135 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7136 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 7137 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7139};
7140const double toler142 = 2.5000000000000020e-13;
7141
7142// Test data for a=5.0000000000000000, b=0.0000000000000000, c=6.0000000000000000.
b4688136 7143// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 7144// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
7145// mean(f - f_GSL): 0.0000000000000000
7146// variance(f - f_GSL): 0.0000000000000000
7147// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
7148const testcase_hyperg<double>
7149data143[19] =
7150{
7151 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7153 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7155 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7157 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7159 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7160 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 7161 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7162 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 7163 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7165 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7167 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7169 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7171 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7172 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 7173 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7175 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7176 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 7177 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7179 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7181 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7182 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 7183 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7185 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7186 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 7187 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7189};
7190const double toler143 = 2.5000000000000020e-13;
7191
7192// Test data for a=5.0000000000000000, b=0.0000000000000000, c=8.0000000000000000.
b4688136 7193// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 7194// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
7195// mean(f - f_GSL): 0.0000000000000000
7196// variance(f - f_GSL): 0.0000000000000000
7197// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
7198const testcase_hyperg<double>
7199data144[19] =
7200{
7201 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7203 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7205 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7207 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7209 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7210 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 7211 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7212 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 7213 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7215 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7217 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7219 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7221 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 7223 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7225 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7226 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 7227 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7229 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7231 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7232 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 7233 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7235 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7236 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 7237 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7239};
7240const double toler144 = 2.5000000000000020e-13;
7241
7242// Test data for a=5.0000000000000000, b=0.0000000000000000, c=10.000000000000000.
b4688136 7243// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 7244// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
7245// mean(f - f_GSL): 0.0000000000000000
7246// variance(f - f_GSL): 0.0000000000000000
7247// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
7248const testcase_hyperg<double>
7249data145[19] =
7250{
7251 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 7253 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 7255 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 7257 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 7259 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7260 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 7261 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7262 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 7263 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 7265 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 7267 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 7269 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 7271 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 7273 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 7275 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7276 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 7277 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 7279 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 7281 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7282 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 7283 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 7285 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7286 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 7287 { 1.0000000000000000, 5.0000000000000000, 0.0000000000000000,
b4688136 7288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7289};
7290const double toler145 = 2.5000000000000020e-13;
7291
7292// Test data for a=5.0000000000000000, b=0.50000000000000000, c=2.0000000000000000.
b4688136
ESR
7293// max(|f - f_GSL|): 4.5474735088646412e-13 at index 18
7294// max(|f - f_GSL| / |f_GSL|): 1.5124797514980592e-15
7295// mean(f - f_GSL): 2.5336458077761468e-14
7296// variance(f - f_GSL): 1.0813211674051158e-26
7297// stddev(f - f_GSL): 1.0398659372270619e-13
2be75957
ESR
7298const testcase_hyperg<double>
7299data146[19] =
7300{
7301 { 0.52275983209457544, 5.0000000000000000, 0.50000000000000000,
b4688136 7302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7303 { 0.54700336898143009, 5.0000000000000000, 0.50000000000000000,
b4688136 7304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7305 { 0.57468955512602038, 5.0000000000000000, 0.50000000000000000,
b4688136 7306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7307 { 0.60665490543315048, 5.0000000000000000, 0.50000000000000000,
b4688136 7308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7309 { 0.64403057859056190, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7310 2.0000000000000000, -0.50000000000000000, 0.0 },
7311 { 0.68838183648623719, 5.0000000000000000, 0.50000000000000000,
7312 2.0000000000000000, -0.39999999999999991, 0.0 },
7313 { 0.74193265039311118, 5.0000000000000000, 0.50000000000000000,
7314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7315 { 0.80794095908995300, 5.0000000000000000, 0.50000000000000000,
b4688136 7316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7317 { 0.89135275749639320, 5.0000000000000000, 0.50000000000000000,
b4688136 7318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7319 { 1.0000000000000000, 5.0000000000000000, 0.50000000000000000,
b4688136 7320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7321 { 1.1469266219310688, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7322 2.0000000000000000, 0.10000000000000009, 0.0 },
7323 { 1.3552340708357493, 5.0000000000000000, 0.50000000000000000,
7324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7325 { 1.6690840478838305, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7326 2.0000000000000000, 0.30000000000000004, 0.0 },
7327 { 2.1815415453174500, 5.0000000000000000, 0.50000000000000000,
7328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7329 { 3.1156892546032235, 5.0000000000000000, 0.50000000000000000,
b4688136 7330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7331 { 5.1109077417760416, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7332 2.0000000000000000, 0.60000000000000009, 0.0 },
7333 { 10.560352936466318, 5.0000000000000000, 0.50000000000000000,
7334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7335 { 33.541019662496815, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7336 2.0000000000000000, 0.80000000000000004, 0.0 },
7337 { 300.66343065819723, 5.0000000000000000, 0.50000000000000000,
7338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7339};
7340const double toler146 = 2.5000000000000020e-13;
7341
7342// Test data for a=5.0000000000000000, b=0.50000000000000000, c=4.0000000000000000.
b4688136
ESR
7343// max(|f - f_GSL|): 8.8817841970012523e-15 at index 18
7344// max(|f - f_GSL| / |f_GSL|): 1.3217255411112292e-15
7345// mean(f - f_GSL): 6.8950693108299193e-16
7346// variance(f - f_GSL): 3.9356627445430313e-30
7347// stddev(f - f_GSL): 1.9838504844224102e-15
2be75957
ESR
7348const testcase_hyperg<double>
7349data147[19] =
7350{
7351 { 0.68252041951139286, 5.0000000000000000, 0.50000000000000000,
b4688136 7352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7353 { 0.70394732624993395, 5.0000000000000000, 0.50000000000000000,
b4688136 7354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7355 { 0.72748884971552052, 5.0000000000000000, 0.50000000000000000,
b4688136 7356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7357 { 0.75351147371199667, 5.0000000000000000, 0.50000000000000000,
b4688136 7358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7359 { 0.78247589005573737, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7360 4.0000000000000000, -0.50000000000000000, 0.0 },
7361 { 0.81497017420249795, 5.0000000000000000, 0.50000000000000000,
7362 4.0000000000000000, -0.39999999999999991, 0.0 },
7363 { 0.85175826875009608, 5.0000000000000000, 0.50000000000000000,
7364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7365 { 0.89385278481745867, 5.0000000000000000, 0.50000000000000000,
b4688136 7366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7367 { 0.94262778709507411, 5.0000000000000000, 0.50000000000000000,
b4688136 7368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7369 { 1.0000000000000000, 5.0000000000000000, 0.50000000000000000,
b4688136 7370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7371 { 1.0687327277420910, 5.0000000000000000, 0.50000000000000000,
b4688136 7372 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 7373 { 1.1529725508983291, 5.0000000000000000, 0.50000000000000000,
b4688136 7374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7375 { 1.2592587134058799, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7376 4.0000000000000000, 0.30000000000000004, 0.0 },
7377 { 1.3985773194637896, 5.0000000000000000, 0.50000000000000000,
7378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7379 { 1.5909902576697317, 5.0000000000000000, 0.50000000000000000,
b4688136 7380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7381 { 1.8776023607249752, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7382 4.0000000000000000, 0.60000000000000009, 0.0 },
7383 { 2.3582499003694664, 5.0000000000000000, 0.50000000000000000,
7384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7385 { 3.3541019662496838, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7386 4.0000000000000000, 0.80000000000000004, 0.0 },
7387 { 6.7198400278578028, 5.0000000000000000, 0.50000000000000000,
7388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7389};
7390const double toler147 = 2.5000000000000020e-13;
7391
7392// Test data for a=5.0000000000000000, b=0.50000000000000000, c=6.0000000000000000.
b4688136 7393// max(|f - f_GSL|): 2.6645352591003757e-15 at index 18
2be75957 7394// max(|f - f_GSL| / |f_GSL|): 1.2228264607471081e-15
b4688136
ESR
7395// mean(f - f_GSL): 2.2788788400200583e-16
7396// variance(f - f_GSL): 3.4817209315093131e-31
7397// stddev(f - f_GSL): 5.9006109272763554e-16
2be75957
ESR
7398const testcase_hyperg<double>
7399data148[19] =
7400{
7401 { 0.75755211927082600, 5.0000000000000000, 0.50000000000000000,
b4688136 7402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7403 { 0.77603550233010965, 5.0000000000000000, 0.50000000000000000,
b4688136 7404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7405 { 0.79596241913438504, 5.0000000000000000, 0.50000000000000000,
b4688136 7406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7407 { 0.81753360792105212, 5.0000000000000000, 0.50000000000000000,
b4688136 7408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7409 { 0.84099165409805532, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7410 6.0000000000000000, -0.50000000000000000, 0.0 },
7411 { 0.86663303852180906, 5.0000000000000000, 0.50000000000000000,
7412 6.0000000000000000, -0.39999999999999991, 0.0 },
7413 { 0.89482475828629915, 5.0000000000000000, 0.50000000000000000,
7414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7415 { 0.92602774279590350, 5.0000000000000000, 0.50000000000000000,
b4688136 7416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7417 { 0.96083064727087386, 5.0000000000000000, 0.50000000000000000,
b4688136 7418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7419 { 1.0000000000000000, 5.0000000000000000, 0.50000000000000000,
b4688136 7420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7421 { 1.0445570841313008, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7422 6.0000000000000000, 0.10000000000000009, 0.0 },
7423 { 1.0959004638926033, 5.0000000000000000, 0.50000000000000000,
7424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7425 { 1.1560106261370562, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7426 6.0000000000000000, 0.30000000000000004, 0.0 },
7427 { 1.2278121770678148, 5.0000000000000000, 0.50000000000000000,
7428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7429 { 1.3158640214709998, 5.0000000000000000, 0.50000000000000000,
b4688136 7430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7431 { 1.4278095344155000, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7432 6.0000000000000000, 0.60000000000000009, 0.0 },
7433 { 1.5778700502946617, 5.0000000000000000, 0.50000000000000000,
7434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7435 { 1.7972173289196469, 5.0000000000000000, 0.50000000000000000,
b4688136 7436 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 7437 { 2.1789970569269732, 5.0000000000000000, 0.50000000000000000,
b4688136 7438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7439};
7440const double toler148 = 2.5000000000000020e-13;
7441
7442// Test data for a=5.0000000000000000, b=0.50000000000000000, c=8.0000000000000000.
b4688136
ESR
7443// max(|f - f_GSL|): 8.8817841970012523e-16 at index 18
7444// max(|f - f_GSL| / |f_GSL|): 5.6109827053892650e-16
7445// mean(f - f_GSL): 7.5962628000668607e-17
7446// variance(f - f_GSL): 3.8685788127881258e-32
7447// stddev(f - f_GSL): 1.9668703090921186e-16
2be75957
ESR
7448const testcase_hyperg<double>
7449data149[19] =
7450{
7451 { 0.80270093579329460, 5.0000000000000000, 0.50000000000000000,
b4688136 7452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7453 { 0.81884974572462765, 5.0000000000000000, 0.50000000000000000,
b4688136 7454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7455 { 0.83605266330015260, 5.0000000000000000, 0.50000000000000000,
b4688136 7456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7457 { 0.85443340762796027, 5.0000000000000000, 0.50000000000000000,
b4688136 7458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7459 { 0.87413762182790711, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7460 8.0000000000000000, -0.50000000000000000, 0.0 },
7461 { 0.89533826626907298, 5.0000000000000000, 0.50000000000000000,
7462 8.0000000000000000, -0.39999999999999991, 0.0 },
7463 { 0.91824276674115313, 5.0000000000000000, 0.50000000000000000,
7464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7465 { 0.94310265050720576, 5.0000000000000000, 0.50000000000000000,
b4688136 7466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7467 { 0.97022678857609712, 5.0000000000000000, 0.50000000000000000,
b4688136 7468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7469 { 1.0000000000000000, 5.0000000000000000, 0.50000000000000000,
b4688136 7470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7471 { 1.0329098673199812, 5.0000000000000000, 0.50000000000000000,
b4688136 7472 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 7473 { 1.0695865684573389, 5.0000000000000000, 0.50000000000000000,
b4688136 7474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7475 { 1.1108642103944570, 5.0000000000000000, 0.50000000000000000,
b4688136 7476 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 7477 { 1.1578795055970506, 5.0000000000000000, 0.50000000000000000,
b4688136 7478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7479 { 1.2122394794169442, 5.0000000000000000, 0.50000000000000000,
b4688136 7480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7481 { 1.2763274721556934, 5.0000000000000000, 0.50000000000000000,
b4688136 7482 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 7483 { 1.3539179650251021, 5.0000000000000000, 0.50000000000000000,
b4688136 7484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7485 { 1.4515986118197148, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7486 8.0000000000000000, 0.80000000000000004, 0.0 },
7487 { 1.5829284571614224, 5.0000000000000000, 0.50000000000000000,
7488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7489};
7490const double toler149 = 2.5000000000000020e-13;
7491
7492// Test data for a=5.0000000000000000, b=0.50000000000000000, c=10.000000000000000.
b4688136
ESR
7493// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
7494// max(|f - f_GSL| / |f_GSL|): 3.2099086385883890e-16
7495// mean(f - f_GSL): 5.8432790769745078e-17
7496// variance(f - f_GSL): 8.7218722159852367e-33
7497// stddev(f - f_GSL): 9.3390964316604188e-17
2be75957
ESR
7498const testcase_hyperg<double>
7499data150[19] =
7500{
7501 { 0.83322694172301981, 5.0000000000000000, 0.50000000000000000,
b4688136 7502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 7503 { 0.84753931604765675, 5.0000000000000000, 0.50000000000000000,
b4688136 7504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 7505 { 0.86265784532195022, 5.0000000000000000, 0.50000000000000000,
b4688136 7506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 7507 { 0.87866479300707090, 5.0000000000000000, 0.50000000000000000,
b4688136 7508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 7509 { 0.89565516540263501, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7510 10.000000000000000, -0.50000000000000000, 0.0 },
7511 { 0.91373946207610557, 5.0000000000000000, 0.50000000000000000,
7512 10.000000000000000, -0.39999999999999991, 0.0 },
7513 { 0.93304721345881914, 5.0000000000000000, 0.50000000000000000,
7514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 7515 { 0.95373159512905148, 5.0000000000000000, 0.50000000000000000,
b4688136 7516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 7517 { 0.97597554238828121, 5.0000000000000000, 0.50000000000000000,
b4688136 7518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 7519 { 1.0000000000000000, 5.0000000000000000, 0.50000000000000000,
b4688136 7520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 7521 { 1.0260752851887982, 5.0000000000000000, 0.50000000000000000,
b4688136 7522 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 7523 { 1.0545371197996178, 5.0000000000000000, 0.50000000000000000,
b4688136 7524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 7525 { 1.0858099017045830, 5.0000000000000000, 0.50000000000000000,
b4688136 7526 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 7527 { 1.1204416568688709, 5.0000000000000000, 0.50000000000000000,
b4688136 7528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 7529 { 1.1591587835964847, 5.0000000000000000, 0.50000000000000000,
b4688136 7530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 7531 { 1.2029564720303347, 5.0000000000000000, 0.50000000000000000,
b4688136 7532 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 7533 { 1.2532588722007874, 5.0000000000000000, 0.50000000000000000,
b4688136 7534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 7535 { 1.3122319926925459, 5.0000000000000000, 0.50000000000000000,
b4688136
ESR
7536 10.000000000000000, 0.80000000000000004, 0.0 },
7537 { 1.3834948587364102, 5.0000000000000000, 0.50000000000000000,
7538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7539};
7540const double toler150 = 2.5000000000000020e-13;
7541
7542// Test data for a=5.0000000000000000, b=1.0000000000000000, c=2.0000000000000000.
b4688136
ESR
7543// max(|f - f_GSL|): 4.0927261579781771e-12 at index 18
7544// max(|f - f_GSL| / |f_GSL|): 1.4735287697491136e-15
7545// mean(f - f_GSL): 2.2385017815981644e-13
7546// variance(f - f_GSL): 8.7776489381819171e-25
7547// stddev(f - f_GSL): 9.3689107895111895e-13
2be75957
ESR
7548const testcase_hyperg<double>
7549data151[19] =
7550{
7551 { 0.25646288779245086, 5.0000000000000000, 1.0000000000000000,
b4688136 7552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7553 { 0.28273129096174376, 5.0000000000000000, 1.0000000000000000,
b4688136 7554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7555 { 0.31438201170962982, 5.0000000000000000, 1.0000000000000000,
b4688136 7556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7557 { 0.35308837890625017, 5.0000000000000000, 1.0000000000000000,
b4688136 7558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7559 { 0.40123456790123452, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7560 2.0000000000000000, -0.50000000000000000, 0.0 },
7561 { 0.46230737192836352, 5.0000000000000000, 1.0000000000000000,
7562 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 7563 { 0.54156016946185348, 5.0000000000000000, 1.0000000000000000,
b4688136 7564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7565 { 0.64718364197530875, 5.0000000000000000, 1.0000000000000000,
b4688136 7566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7567 { 0.79246636158732342, 5.0000000000000000, 1.0000000000000000,
b4688136 7568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7569 { 1.0000000000000000, 5.0000000000000000, 1.0000000000000000,
b4688136 7570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7571 { 1.3103947568968148, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7572 2.0000000000000000, 0.10000000000000009, 0.0 },
7573 { 1.8017578125000016, 5.0000000000000000, 1.0000000000000000,
7574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7575 { 2.6374427321949185, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7576 2.0000000000000000, 0.30000000000000004, 0.0 },
7577 { 4.1975308641975335, 5.0000000000000000, 1.0000000000000000,
7578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7579 { 7.4999999999999964, 5.0000000000000000, 1.0000000000000000,
b4688136 7580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7581 { 15.859375000000012, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7582 2.0000000000000000, 0.60000000000000009, 0.0 },
7583 { 43.734567901234662, 5.0000000000000000, 1.0000000000000000,
7584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7585 { 194.99999999999994, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7586 2.0000000000000000, 0.80000000000000004, 0.0 },
7587 { 2777.5000000000095, 5.0000000000000000, 1.0000000000000000,
7588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7589};
7590const double toler151 = 2.5000000000000020e-13;
7591
7592// Test data for a=5.0000000000000000, b=1.0000000000000000, c=4.0000000000000000.
b4688136
ESR
7593// max(|f - f_GSL|): 4.2632564145606011e-14 at index 18
7594// max(|f - f_GSL| / |f_GSL|): 1.3117712044801870e-15
7595// mean(f - f_GSL): 2.6879083754082736e-15
7596// variance(f - f_GSL): 9.3567700516642700e-29
7597// stddev(f - f_GSL): 9.6730398798228218e-15
2be75957
ESR
7598const testcase_hyperg<double>
7599data152[19] =
7600{
7601 { 0.46398891966759009, 5.0000000000000000, 1.0000000000000000,
b4688136 7602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7603 { 0.49382716049382724, 5.0000000000000000, 1.0000000000000000,
b4688136 7604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7605 { 0.52768166089965407, 5.0000000000000000, 1.0000000000000000,
b4688136 7606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7607 { 0.56640625000000000, 5.0000000000000000, 1.0000000000000000,
b4688136 7608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7609 { 0.61111111111111094, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7610 4.0000000000000000, -0.50000000000000000, 0.0 },
7611 { 0.66326530612244916, 5.0000000000000000, 1.0000000000000000,
7612 4.0000000000000000, -0.39999999999999991, 0.0 },
7613 { 0.72485207100591709, 5.0000000000000000, 1.0000000000000000,
7614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7615 { 0.79861111111111094, 5.0000000000000000, 1.0000000000000000,
b4688136 7616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7617 { 0.88842975206611552, 5.0000000000000000, 1.0000000000000000,
b4688136 7618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7619 { 1.0000000000000000, 5.0000000000000000, 1.0000000000000000,
b4688136 7620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7621 { 1.1419753086419753, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7622 4.0000000000000000, 0.10000000000000009, 0.0 },
7623 { 1.3281250000000000, 5.0000000000000000, 1.0000000000000000,
7624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7625 { 1.5816326530612239, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7626 4.0000000000000000, 0.30000000000000004, 0.0 },
7627 { 1.9444444444444458, 5.0000000000000000, 1.0000000000000000,
7628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7629 { 2.5000000000000000, 5.0000000000000000, 1.0000000000000000,
b4688136 7630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7631 { 3.4374999999999996, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7632 4.0000000000000000, 0.60000000000000009, 0.0 },
7633 { 5.2777777777777786, 5.0000000000000000, 1.0000000000000000,
7634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7635 { 9.9999999999999947, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7636 4.0000000000000000, 0.80000000000000004, 0.0 },
7637 { 32.499999999999950, 5.0000000000000000, 1.0000000000000000,
7638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7639};
7640const double toler152 = 2.5000000000000020e-13;
7641
7642// Test data for a=5.0000000000000000, b=1.0000000000000000, c=6.0000000000000000.
b4688136
ESR
7643// max(|f - f_GSL|): 6.2172489379008766e-15 at index 18
7644// max(|f - f_GSL| / |f_GSL|): 1.2433022037532449e-15
7645// mean(f - f_GSL): 4.9083544246585873e-16
7646// variance(f - f_GSL): 1.9229766015225486e-30
7647// stddev(f - f_GSL): 1.3867143186404864e-15
2be75957
ESR
7648const testcase_hyperg<double>
7649data153[19] =
7650{
7651 { 0.57476744883397490, 5.0000000000000000, 1.0000000000000000,
b4688136 7652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7653 { 0.60302731682513966, 5.0000000000000000, 1.0000000000000000,
b4688136 7654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7655 { 0.63425708719096374, 5.0000000000000000, 1.0000000000000000,
b4688136 7656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7657 { 0.66895764182970430, 5.0000000000000000, 1.0000000000000000,
b4688136 7658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7659 { 0.70775063063963473, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7660 6.0000000000000000, -0.50000000000000000, 0.0 },
7661 { 0.75141762103495946, 5.0000000000000000, 1.0000000000000000,
7662 6.0000000000000000, -0.39999999999999991, 0.0 },
7663 { 0.80095569442603320, 5.0000000000000000, 1.0000000000000000,
7664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7665 { 0.85765823887436754, 5.0000000000000000, 1.0000000000000000,
b4688136 7666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7667 { 0.92323549576335540, 5.0000000000000000, 1.0000000000000000,
b4688136 7668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7669 { 1.0000000000000000, 5.0000000000000000, 1.0000000000000000,
b4688136 7670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7671 { 1.0911622464839472, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7672 6.0000000000000000, 0.10000000000000009, 0.0 },
7673 { 1.2013226178607672, 5.0000000000000000, 1.0000000000000000,
7674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7675 { 1.3373332072682687, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7676 6.0000000000000000, 0.30000000000000004, 0.0 },
7677 { 1.5099074378209718, 5.0000000000000000, 1.0000000000000000,
7678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7679 { 1.7368822229245819, 5.0000000000000000, 1.0000000000000000,
b4688136 7680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7681 { 2.0505871832661429, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7682 6.0000000000000000, 0.60000000000000009, 0.0 },
7683 { 2.5172389775867976, 5.0000000000000000, 1.0000000000000000,
7684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7685 { 3.3015631983556144, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7686 6.0000000000000000, 0.80000000000000004, 0.0 },
7687 { 5.0005935155044563, 5.0000000000000000, 1.0000000000000000,
7688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7689};
7690const double toler153 = 2.5000000000000020e-13;
7691
7692// Test data for a=5.0000000000000000, b=1.0000000000000000, c=8.0000000000000000.
b4688136
ESR
7693// max(|f - f_GSL|): 3.1086244689504383e-15 at index 18
7694// max(|f - f_GSL| / |f_GSL|): 1.1989697058841885e-15
7695// mean(f - f_GSL): 2.4541772123292936e-16
7696// variance(f - f_GSL): 4.8074415038063715e-31
7697// stddev(f - f_GSL): 6.9335715932024320e-16
2be75957
ESR
7698const testcase_hyperg<double>
7699data154[19] =
7700{
7701 { 0.64582752605387983, 5.0000000000000000, 1.0000000000000000,
b4688136 7702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7703 { 0.67184161997264191, 5.0000000000000000, 1.0000000000000000,
b4688136 7704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7705 { 0.70012779922368040, 5.0000000000000000, 1.0000000000000000,
b4688136 7706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7707 { 0.73100784656910278, 5.0000000000000000, 1.0000000000000000,
b4688136 7708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7709 { 0.76486919089091066, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7710 8.0000000000000000, -0.50000000000000000, 0.0 },
7711 { 0.80218301124334590, 5.0000000000000000, 1.0000000000000000,
7712 8.0000000000000000, -0.39999999999999991, 0.0 },
7713 { 0.84352883533234391, 5.0000000000000000, 1.0000000000000000,
7714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7715 { 0.88962858902212572, 5.0000000000000000, 1.0000000000000000,
b4688136 7716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7717 { 0.94139473468584123, 5.0000000000000000, 1.0000000000000000,
b4688136 7718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7719 { 1.0000000000000000, 5.0000000000000000, 1.0000000000000000,
b4688136 7720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7721 { 1.0669812691939897, 5.0000000000000000, 1.0000000000000000,
b4688136 7722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 7723 { 1.1443996012177726, 5.0000000000000000, 1.0000000000000000,
b4688136 7724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7725 { 1.2350966976721314, 5.0000000000000000, 1.0000000000000000,
b4688136 7726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 7727 { 1.3431264370409088, 5.0000000000000000, 1.0000000000000000,
b4688136 7728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7729 { 1.4745266814162399, 5.0000000000000000, 1.0000000000000000,
b4688136 7730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7731 { 1.6388137104840066, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7732 8.0000000000000000, 0.60000000000000009, 0.0 },
7733 { 1.8522074849776522, 5.0000000000000000, 1.0000000000000000,
7734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7735 { 2.1458016978417458, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7736 8.0000000000000000, 0.80000000000000004, 0.0 },
7737 { 2.5927464669826348, 5.0000000000000000, 1.0000000000000000,
7738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7739};
7740const double toler154 = 2.5000000000000020e-13;
7741
7742// Test data for a=5.0000000000000000, b=1.0000000000000000, c=10.000000000000000.
b4688136
ESR
7743// max(|f - f_GSL|): 1.3322676295501878e-15 at index 18
7744// max(|f - f_GSL| / |f_GSL|): 6.8275390424723874e-16
7745// mean(f - f_GSL): 1.0517902338554114e-16
7746// variance(f - f_GSL): 8.8299945988280290e-32
7747// stddev(f - f_GSL): 2.9715306828010425e-16
2be75957
ESR
7748const testcase_hyperg<double>
7749data155[19] =
7750{
7751 { 0.69583236336670584, 5.0000000000000000, 1.0000000000000000,
b4688136 7752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 7753 { 0.71968920666899716, 5.0000000000000000, 1.0000000000000000,
b4688136 7754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 7755 { 0.74533885416044232, 5.0000000000000000, 1.0000000000000000,
b4688136 7756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 7757 { 0.77300145361503070, 5.0000000000000000, 1.0000000000000000,
b4688136 7758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 7759 { 0.80293630810919447, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7760 10.000000000000000, -0.50000000000000000, 0.0 },
7761 { 0.83545132638592057, 5.0000000000000000, 1.0000000000000000,
7762 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 7763 { 0.87091544744412497, 5.0000000000000000, 1.0000000000000000,
b4688136 7764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 7765 { 0.90977522877919847, 5.0000000000000000, 1.0000000000000000,
b4688136 7766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 7767 { 0.95257738192069130, 5.0000000000000000, 1.0000000000000000,
b4688136 7768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 7769 { 1.0000000000000000, 5.0000000000000000, 1.0000000000000000,
b4688136 7770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 7771 { 1.0528968282789379, 5.0000000000000000, 1.0000000000000000,
b4688136 7772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 7773 { 1.1123617169062123, 5.0000000000000000, 1.0000000000000000,
b4688136 7774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 7775 { 1.1798254572896132, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7776 10.000000000000000, 0.30000000000000004, 0.0 },
7777 { 1.2572069000522701, 5.0000000000000000, 1.0000000000000000,
7778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 7779 { 1.3471600884974377, 5.0000000000000000, 1.0000000000000000,
b4688136 7780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 7781 { 1.4535032279573519, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7782 10.000000000000000, 0.60000000000000009, 0.0 },
7783 { 1.5820245752814950, 5.0000000000000000, 1.0000000000000000,
7784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 7785 { 1.7421756366906538, 5.0000000000000000, 1.0000000000000000,
b4688136
ESR
7786 10.000000000000000, 0.80000000000000004, 0.0 },
7787 { 1.9513145531098235, 5.0000000000000000, 1.0000000000000000,
7788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7789};
7790const double toler155 = 2.5000000000000020e-13;
7791
7792// Test data for a=5.0000000000000000, b=2.0000000000000000, c=2.0000000000000000.
b4688136
ESR
7793// max(|f - f_GSL|): 1.0186340659856796e-10 at index 18
7794// max(|f - f_GSL| / |f_GSL|): 1.1641532182693482e-15
7795// mean(f - f_GSL): 5.5487040400966458e-12
7796// variance(f - f_GSL): 5.4399356990620132e-22
7797// stddev(f - f_GSL): 2.3323669734975269e-11
2be75957
ESR
7798const testcase_hyperg<double>
7799data156[19] =
7800{
b4688136
ESR
7801 { 0.040386107340619273, 5.0000000000000000, 2.0000000000000000,
7802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7803 { 0.052922149401344633, 5.0000000000000000, 2.0000000000000000,
b4688136 7804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7805 { 0.070429627772374270, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7806 2.0000000000000000, -0.69999999999999996, 0.0 },
7807 { 0.095367431640624986, 5.0000000000000000, 2.0000000000000000,
7808 2.0000000000000000, -0.59999999999999998, 0.0 },
7809 { 0.13168724279835389, 5.0000000000000000, 2.0000000000000000,
7810 2.0000000000000000, -0.50000000000000000, 0.0 },
7811 { 0.18593443208187072, 5.0000000000000000, 2.0000000000000000,
7812 2.0000000000000000, -0.39999999999999991, 0.0 },
7813 { 0.26932907434290460, 5.0000000000000000, 2.0000000000000000,
7814 2.0000000000000000, -0.29999999999999993, 0.0 },
7815 { 0.40187757201646102, 5.0000000000000000, 2.0000000000000000,
7816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7817 { 0.62092132305915493, 5.0000000000000000, 2.0000000000000000,
b4688136 7818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7819 { 1.0000000000000000, 5.0000000000000000, 2.0000000000000000,
b4688136 7820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7821 { 1.6935087808430296, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7822 2.0000000000000000, 0.10000000000000009, 0.0 },
7823 { 3.0517578125000036, 5.0000000000000000, 2.0000000000000000,
7824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7825 { 5.9499018266198629, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7826 2.0000000000000000, 0.30000000000000004, 0.0 },
7827 { 12.860082304526767, 5.0000000000000000, 2.0000000000000000,
7828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7829 { 32.000000000000000, 5.0000000000000000, 2.0000000000000000,
b4688136 7830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7831 { 97.656250000000114, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7832 2.0000000000000000, 0.60000000000000009, 0.0 },
7833 { 411.52263374485722, 5.0000000000000000, 2.0000000000000000,
7834 2.0000000000000000, 0.70000000000000018, 0.0 },
7835 { 3124.9999999999995, 5.0000000000000000, 2.0000000000000000,
7836 2.0000000000000000, 0.80000000000000004, 0.0 },
7837 { 100000.00000000055, 5.0000000000000000, 2.0000000000000000,
7838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7839};
7840const double toler156 = 2.5000000000000020e-13;
7841
7842// Test data for a=5.0000000000000000, b=2.0000000000000000, c=4.0000000000000000.
b4688136
ESR
7843// max(|f - f_GSL|): 6.8212102632969618e-13 at index 18
7844// max(|f - f_GSL| / |f_GSL|): 1.2402200478721734e-15
7845// mean(f - f_GSL): 3.8828589466495609e-14
7846// variance(f - f_GSL): 2.4267524775254640e-26
7847// stddev(f - f_GSL): 1.5578037352392837e-13
2be75957
ESR
7848const testcase_hyperg<double>
7849data157[19] =
7850{
7851 { 0.21140107887447138, 5.0000000000000000, 2.0000000000000000,
b4688136 7852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7853 { 0.24005486968449927, 5.0000000000000000, 2.0000000000000000,
b4688136 7854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7855 { 0.27478119275391810, 5.0000000000000000, 2.0000000000000000,
b4688136 7856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7857 { 0.31738281250000006, 5.0000000000000000, 2.0000000000000000,
b4688136 7858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7859 { 0.37037037037037024, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7860 4.0000000000000000, -0.50000000000000000, 0.0 },
7861 { 0.43731778425655982, 5.0000000000000000, 2.0000000000000000,
7862 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 7863 { 0.52344105598543467, 5.0000000000000000, 2.0000000000000000,
b4688136 7864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7865 { 0.63657407407407429, 5.0000000000000000, 2.0000000000000000,
b4688136 7866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7867 { 0.78888054094665638, 5.0000000000000000, 2.0000000000000000,
b4688136 7868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7869 { 1.0000000000000000, 5.0000000000000000, 2.0000000000000000,
b4688136 7870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7871 { 1.3031550068587108, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7872 4.0000000000000000, 0.10000000000000009, 0.0 },
7873 { 1.7578125000000011, 5.0000000000000000, 2.0000000000000000,
7874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7875 { 2.4781341107871717, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7876 4.0000000000000000, 0.30000000000000004, 0.0 },
7877 { 3.7037037037037073, 5.0000000000000000, 2.0000000000000000,
7878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7879 { 5.9999999999999982, 5.0000000000000000, 2.0000000000000000,
b4688136 7880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7881 { 10.937500000000005, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7882 4.0000000000000000, 0.60000000000000009, 0.0 },
7883 { 24.074074074074115, 5.0000000000000000, 2.0000000000000000,
7884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7885 { 74.999999999999957, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7886 4.0000000000000000, 0.80000000000000004, 0.0 },
7887 { 550.00000000000068, 5.0000000000000000, 2.0000000000000000,
7888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7889};
7890const double toler157 = 2.5000000000000020e-13;
7891
7892// Test data for a=5.0000000000000000, b=2.0000000000000000, c=6.0000000000000000.
b4688136
ESR
7893// max(|f - f_GSL|): 4.9737991503207013e-14 at index 18
7894// max(|f - f_GSL| / |f_GSL|): 1.6580642616864621e-15
7895// mean(f - f_GSL): 3.1670572597201835e-15
7896// variance(f - f_GSL): 1.2718576052442072e-28
7897// stddev(f - f_GSL): 1.1277666448535384e-14
2be75957
ESR
7898const testcase_hyperg<double>
7899data158[19] =
7900{
7901 { 0.33250915203252129, 5.0000000000000000, 2.0000000000000000,
b4688136 7902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7903 { 0.36566851047721943, 5.0000000000000000, 2.0000000000000000,
b4688136 7904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7905 { 0.40414812182437959, 5.0000000000000000, 2.0000000000000000,
b4688136 7906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7907 { 0.44916943268118498, 5.0000000000000000, 2.0000000000000000,
b4688136 7908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7909 { 0.50233081077479547, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7910 6.0000000000000000, -0.50000000000000000, 0.0 },
7911 { 0.56575808728873322, 5.0000000000000000, 2.0000000000000000,
7912 6.0000000000000000, -0.39999999999999991, 0.0 },
7913 { 0.64233106844971455, 5.0000000000000000, 2.0000000000000000,
7914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7915 { 0.73603371116919514, 5.0000000000000000, 2.0000000000000000,
b4688136 7916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7917 { 0.85251256240112439, 5.0000000000000000, 2.0000000000000000,
b4688136 7918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7919 { 1.0000000000000000, 5.0000000000000000, 2.0000000000000000,
b4688136 7920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7921 { 1.1909065696197674, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7922 6.0000000000000000, 0.10000000000000009, 0.0 },
7923 { 1.4447095285569318, 5.0000000000000000, 2.0000000000000000,
7924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7925 { 1.7935243137840653, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7926 6.0000000000000000, 0.30000000000000004, 0.0 },
7927 { 2.2937035820494467, 5.0000000000000000, 2.0000000000000000,
7928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7929 { 3.0524711083016687, 5.0000000000000000, 2.0000000000000000,
b4688136 7930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7931 { 4.2976512669354259, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7932 6.0000000000000000, 0.60000000000000009, 0.0 },
7933 { 6.5977107563194739, 5.0000000000000000, 2.0000000000000000,
7934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7935 { 11.793747206577530, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7936 6.0000000000000000, 0.80000000000000004, 0.0 },
7937 { 29.997625937982132, 5.0000000000000000, 2.0000000000000000,
7938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7939};
7940const double toler158 = 2.5000000000000020e-13;
7941
7942// Test data for a=5.0000000000000000, b=2.0000000000000000, c=8.0000000000000000.
b4688136
ESR
7943// max(|f - f_GSL|): 1.1546319456101628e-14 at index 18
7944// max(|f - f_GSL| / |f_GSL|): 1.4852319937858925e-15
7945// mean(f - f_GSL): 8.5896202431525265e-16
7946// variance(f - f_GSL): 6.6980634833963886e-30
7947// stddev(f - f_GSL): 2.5880617232586221e-15
2be75957
ESR
7948const testcase_hyperg<double>
7949data159[19] =
7950{
7951 { 0.42108197362250294, 5.0000000000000000, 2.0000000000000000,
b4688136 7952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 7953 { 0.45503172013983040, 5.0000000000000000, 2.0000000000000000,
b4688136 7954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 7955 { 0.49345609813624314, 5.0000000000000000, 2.0000000000000000,
b4688136 7956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 7957 { 0.53720880551221295, 5.0000000000000000, 2.0000000000000000,
b4688136 7958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 7959 { 0.58736431524847466, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7960 8.0000000000000000, -0.50000000000000000, 0.0 },
7961 { 0.64529222467897995, 5.0000000000000000, 2.0000000000000000,
7962 8.0000000000000000, -0.39999999999999991, 0.0 },
7963 { 0.71276337354393959, 5.0000000000000000, 2.0000000000000000,
7964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 7965 { 0.79210466220795306, 5.0000000000000000, 2.0000000000000000,
b4688136 7966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 7967 { 0.88643063455510596, 5.0000000000000000, 2.0000000000000000,
b4688136 7968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 7969 { 1.0000000000000000, 5.0000000000000000, 2.0000000000000000,
b4688136 7970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 7971 { 1.1387832139040652, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7972 8.0000000000000000, 0.10000000000000009, 0.0 },
7973 { 1.3114025920844754, 5.0000000000000000, 2.0000000000000000,
7974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 7975 { 1.5307655016768162, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7976 8.0000000000000000, 0.30000000000000004, 0.0 },
7977 { 1.8170727950333352, 5.0000000000000000, 2.0000000000000000,
7978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 7979 { 2.2037865486700836, 5.0000000000000000, 2.0000000000000000,
b4688136 7980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 7981 { 2.7506766056439380, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7982 8.0000000000000000, 0.60000000000000009, 0.0 },
7983 { 3.5764534935716998, 5.0000000000000000, 2.0000000000000000,
7984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 7985 { 4.9587762302155403, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
7986 8.0000000000000000, 0.80000000000000004, 0.0 },
7987 { 7.7740847924166907, 5.0000000000000000, 2.0000000000000000,
7988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
7989};
7990const double toler159 = 2.5000000000000020e-13;
7991
7992// Test data for a=5.0000000000000000, b=2.0000000000000000, c=10.000000000000000.
b4688136
ESR
7993// max(|f - f_GSL|): 4.4408920985006262e-15 at index 18
7994// max(|f - f_GSL| / |f_GSL|): 1.0721199711322765e-15
7995// mean(f - f_GSL): 3.5059674461847049e-16
7996// variance(f - f_GSL): 9.8111051098089205e-31
7997// stddev(f - f_GSL): 9.9051022760034740e-16
2be75957
ESR
7998const testcase_hyperg<double>
7999data160[19] =
8000{
8001 { 0.48860241312958436, 5.0000000000000000, 2.0000000000000000,
b4688136 8002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 8003 { 0.52193382517068487, 5.0000000000000000, 2.0000000000000000,
b4688136 8004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 8005 { 0.55902375003954219, 5.0000000000000000, 2.0000000000000000,
b4688136 8006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 8007 { 0.60049055150230324, 5.0000000000000000, 2.0000000000000000,
b4688136 8008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 8009 { 0.64709127927203469, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
8010 10.000000000000000, -0.50000000000000000, 0.0 },
8011 { 0.69976233335368998, 5.0000000000000000, 2.0000000000000000,
8012 10.000000000000000, -0.39999999999999991, 0.0 },
8013 { 0.75967529501080988, 5.0000000000000000, 2.0000000000000000,
8014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 8015 { 0.82831498895254407, 5.0000000000000000, 2.0000000000000000,
b4688136 8016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 8017 { 0.90759090169653933, 5.0000000000000000, 2.0000000000000000,
b4688136 8018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 8019 { 1.0000000000000000, 5.0000000000000000, 2.0000000000000000,
b4688136 8020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 8021 { 1.1088712278667465, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
8022 10.000000000000000, 0.10000000000000009, 0.0 },
8023 { 1.2387445478440855, 5.0000000000000000, 2.0000000000000000,
8024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 8025 { 1.3959812720437546, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
8026 10.000000000000000, 0.30000000000000004, 0.0 },
8027 { 1.5897930661091169, 5.0000000000000000, 2.0000000000000000,
8028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 8029 { 1.8340789380307454, 5.0000000000000000, 2.0000000000000000,
b4688136 8030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 8031 { 2.1509548085970764, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
8032 10.000000000000000, 0.60000000000000009, 0.0 },
8033 { 2.5782406951207526, 5.0000000000000000, 2.0000000000000000,
8034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 8035 { 3.1877847194242737, 5.0000000000000000, 2.0000000000000000,
b4688136
ESR
8036 10.000000000000000, 0.80000000000000004, 0.0 },
8037 { 4.1421596631676918, 5.0000000000000000, 2.0000000000000000,
8038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8039};
8040const double toler160 = 2.5000000000000020e-13;
8041
8042// Test data for a=5.0000000000000000, b=5.0000000000000000, c=2.0000000000000000.
b4688136
ESR
8043// max(|f - f_GSL|): 1.3113021850585938e-06 at index 18
8044// max(|f - f_GSL| / |f_GSL|): 2.9699111427019355e-14
8045// mean(f - f_GSL): 6.9091057386613658e-08
8046// variance(f - f_GSL): 9.0489756878178256e-14
8047// stddev(f - f_GSL): 3.0081515400354792e-07
2be75957
ESR
8048const testcase_hyperg<double>
8049data161[19] =
8050{
8051 { -0.0047236848832209926, 5.0000000000000000, 5.0000000000000000,
b4688136 8052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8053 { -0.0073321496427104288, 5.0000000000000000, 5.0000000000000000,
b4688136 8054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8055 { -0.010977302557845620, 5.0000000000000000, 5.0000000000000000,
b4688136 8056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8057 { -0.015692785382270882, 5.0000000000000000, 5.0000000000000000,
b4688136 8058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8059 { -0.020728547477518663, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8060 2.0000000000000000, -0.50000000000000000, 0.0 },
8061 { -0.022767481479412773, 5.0000000000000000, 5.0000000000000000,
8062 2.0000000000000000, -0.39999999999999991, 0.0 },
8063 { -0.010634636868114097, 5.0000000000000000, 5.0000000000000000,
8064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8065 { 0.050699832580781923, 5.0000000000000000, 5.0000000000000000,
b4688136 8066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8067 { 0.27045765367659280, 5.0000000000000000, 5.0000000000000000,
b4688136 8068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8069 { 1.0000000000000000, 5.0000000000000000, 5.0000000000000000,
b4688136 8070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8071 { 3.4387055868901171, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8072 2.0000000000000000, 0.10000000000000009, 0.0 },
8073 { 12.052059173584013, 5.0000000000000000, 5.0000000000000000,
8074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8075 { 45.565319600798020, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8076 2.0000000000000000, 0.30000000000000004, 0.0 },
8077 { 196.23532998018635, 5.0000000000000000, 5.0000000000000000,
8078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8079 { 1032.0000000000002, 5.0000000000000000, 5.0000000000000000,
b4688136 8080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8081 { 7376.0986328125073, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8082 2.0000000000000000, 0.60000000000000009, 0.0 },
8083 { 86964.639536656410, 5.0000000000000000, 5.0000000000000000,
8084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8085 { 2596875.0000000009, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8086 2.0000000000000000, 0.80000000000000004, 0.0 },
8087 { 766225000.00000668, 5.0000000000000000, 5.0000000000000000,
8088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8089};
8090const double toler161 = 2.5000000000000015e-12;
8091
8092// Test data for a=5.0000000000000000, b=5.0000000000000000, c=4.0000000000000000.
b4688136
ESR
8093// max(|f - f_GSL|): 1.8626451492309570e-09 at index 18
8094// max(|f - f_GSL| / |f_GSL|): 1.5205266524334267e-15
8095// mean(f - f_GSL): 9.8838934113244577e-11
8096// variance(f - f_GSL): 1.8243591026317757e-19
8097// stddev(f - f_GSL): 4.2712516931594835e-10
2be75957
ESR
8098const testcase_hyperg<double>
8099data162[19] =
8100{
8101 { 0.016473280625778776, 5.0000000000000000, 5.0000000000000000,
b4688136 8102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8103 { 0.023520955289486591, 5.0000000000000000, 5.0000000000000000,
b4688136 8104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8105 { 0.034179084066005165, 5.0000000000000000, 5.0000000000000000,
b4688136 8106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8107 { 0.050663948059081955, 5.0000000000000000, 5.0000000000000000,
b4688136 8108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8109 { 0.076817558299039870, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8110 4.0000000000000000, -0.50000000000000000, 0.0 },
8111 { 0.11952927776691663, 5.0000000000000000, 5.0000000000000000,
8112 4.0000000000000000, -0.39999999999999991, 0.0 },
8113 { 0.19163799520552807, 5.0000000000000000, 5.0000000000000000,
8114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8115 { 0.31815307784636504, 5.0000000000000000, 5.0000000000000000,
b4688136 8116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8117 { 0.55036208180243285, 5.0000000000000000, 5.0000000000000000,
b4688136 8118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8119 { 1.0000000000000000, 5.0000000000000000, 5.0000000000000000,
b4688136 8120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8121 { 1.9287183337378946, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8122 4.0000000000000000, 0.10000000000000009, 0.0 },
8123 { 4.0054321289062544, 5.0000000000000000, 5.0000000000000000,
8124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8125 { 9.1373492337376394, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8126 4.0000000000000000, 0.30000000000000004, 0.0 },
8127 { 23.576817558299062, 5.0000000000000000, 5.0000000000000000,
8128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8129 { 71.999999999999972, 5.0000000000000000, 5.0000000000000000,
b4688136 8130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8131 { 280.76171875000023, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8132 4.0000000000000000, 0.60000000000000009, 0.0 },
8133 { 1611.7969821673578, 5.0000000000000000, 5.0000000000000000,
8134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8135 { 18749.999999999996, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8136 4.0000000000000000, 0.80000000000000004, 0.0 },
8137 { 1225000.0000000061, 5.0000000000000000, 5.0000000000000000,
8138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8139};
8140const double toler162 = 2.5000000000000020e-13;
8141
8142// Test data for a=5.0000000000000000, b=5.0000000000000000, c=6.0000000000000000.
b4688136
ESR
8143// max(|f - f_GSL|): 1.8189894035458565e-11 at index 18
8144// max(|f - f_GSL| / |f_GSL|): 1.5011259042308243e-15
8145// mean(f - f_GSL): 9.8916196870839876e-13
8146// variance(f - f_GSL): 1.7350118793242040e-23
8147// stddev(f - f_GSL): 4.1653473796601937e-12
2be75957
ESR
8148const testcase_hyperg<double>
8149data163[19] =
8150{
8151 { 0.067462409738203527, 5.0000000000000000, 5.0000000000000000,
b4688136 8152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8153 { 0.084813629887172531, 5.0000000000000000, 5.0000000000000000,
b4688136 8154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8155 { 0.10799223563666395, 5.0000000000000000, 5.0000000000000000,
b4688136 8156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8157 { 0.13947766136095380, 5.0000000000000000, 5.0000000000000000,
b4688136 8158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8159 { 0.18305927261494301, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8160 6.0000000000000000, -0.50000000000000000, 0.0 },
8161 { 0.24468431546783478, 5.0000000000000000, 5.0000000000000000,
8162 6.0000000000000000, -0.39999999999999991, 0.0 },
8163 { 0.33397274564972962, 5.0000000000000000, 5.0000000000000000,
8164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8165 { 0.46703323887436765, 5.0000000000000000, 5.0000000000000000,
b4688136 8166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8167 { 0.67194346197695642, 5.0000000000000000, 5.0000000000000000,
b4688136 8168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8169 { 1.0000000000000000, 5.0000000000000000, 5.0000000000000000,
b4688136 8170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8171 { 1.5503148146900136, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8172 6.0000000000000000, 0.10000000000000009, 0.0 },
8173 { 2.5278200136941025, 5.0000000000000000, 5.0000000000000000,
8174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8175 { 4.3933515329658954, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8176 6.0000000000000000, 0.30000000000000004, 0.0 },
8177 { 8.3000308946111048, 5.0000000000000000, 5.0000000000000000,
8178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8179 { 17.570215556257921, 5.0000000000000000, 5.0000000000000000,
b4688136 8180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8181 { 43.847462183266167, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8182 6.0000000000000000, 0.60000000000000009, 0.0 },
8183 { 141.86909082943893, 5.0000000000000000, 5.0000000000000000,
8184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8185 { 736.63489653168926, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8186 6.0000000000000000, 0.80000000000000004, 0.0 },
8187 { 12117.500593515540, 5.0000000000000000, 5.0000000000000000,
8188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8189};
8190const double toler163 = 2.5000000000000020e-13;
8191
8192// Test data for a=5.0000000000000000, b=5.0000000000000000, c=8.0000000000000000.
b4688136
ESR
8193// max(|f - f_GSL|): 6.8212102632969618e-13 at index 18
8194// max(|f - f_GSL| / |f_GSL|): 1.3038469641917422e-15
8195// mean(f - f_GSL): 3.9518096397578601e-14
8196// variance(f - f_GSL): 2.4215530819720675e-26
8197// stddev(f - f_GSL): 1.5561340179984714e-13
2be75957
ESR
8198const testcase_hyperg<double>
8199data164[19] =
8200{
8201 { 0.12409443806004226, 5.0000000000000000, 5.0000000000000000,
b4688136 8202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8203 { 0.14886910375100415, 5.0000000000000000, 5.0000000000000000,
b4688136 8204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8205 { 0.18023328876836348, 5.0000000000000000, 5.0000000000000000,
b4688136 8206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8207 { 0.22044046981094723, 5.0000000000000000, 5.0000000000000000,
b4688136 8208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8209 { 0.27271160690708790, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8210 8.0000000000000000, -0.50000000000000000, 0.0 },
8211 { 0.34174821195025845, 5.0000000000000000, 5.0000000000000000,
8212 8.0000000000000000, -0.39999999999999991, 0.0 },
8213 { 0.43457788826160282, 5.0000000000000000, 5.0000000000000000,
8214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8215 { 0.56199385898404552, 5.0000000000000000, 5.0000000000000000,
b4688136 8216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8217 { 0.74109892753745221, 5.0000000000000000, 5.0000000000000000,
b4688136 8218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8219 { 1.0000000000000000, 5.0000000000000000, 5.0000000000000000,
b4688136 8220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8221 { 1.3869229400096228, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8222 8.0000000000000000, 0.10000000000000009, 0.0 },
8223 { 1.9890168748121269, 5.0000000000000000, 5.0000000000000000,
8224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8225 { 2.9741205609307424, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8226 8.0000000000000000, 0.30000000000000004, 0.0 },
8227 { 4.6924751038237345, 5.0000000000000000, 5.0000000000000000,
8228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8229 { 7.9555939380658254, 5.0000000000000000, 5.0000000000000000,
b4688136 8230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8231 { 14.933102063314404, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8232 8.0000000000000000, 0.60000000000000009, 0.0 },
8233 { 32.780461638447541, 5.0000000000000000, 5.0000000000000000,
8234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8235 { 94.848124287773530, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8236 8.0000000000000000, 0.80000000000000004, 0.0 },
8237 { 523.16034401517709, 5.0000000000000000, 5.0000000000000000,
8238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8239};
8240const double toler164 = 2.5000000000000020e-13;
8241
8242// Test data for a=5.0000000000000000, b=5.0000000000000000, c=10.000000000000000.
b4688136
ESR
8243// max(|f - f_GSL|): 9.9475983006414026e-14 at index 18
8244// max(|f - f_GSL| / |f_GSL|): 1.3163001721303552e-15
8245// mean(f - f_GSL): 6.1880325425160040e-15
8246// variance(f - f_GSL): 5.1034009979425656e-28
8247// stddev(f - f_GSL): 2.2590708262342210e-14
2be75957
ESR
8248const testcase_hyperg<double>
8249data165[19] =
8250{
8251 { 0.17885405888526873, 5.0000000000000000, 5.0000000000000000,
b4688136 8252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 8253 { 0.20861302518993391, 5.0000000000000000, 5.0000000000000000,
b4688136 8254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 8255 { 0.24504033307244946, 5.0000000000000000, 5.0000000000000000,
b4688136 8256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 8257 { 0.29007236051133489, 5.0000000000000000, 5.0000000000000000,
b4688136 8258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 8259 { 0.34635542859732737, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8260 10.000000000000000, -0.50000000000000000, 0.0 },
8261 { 0.41756858504598410, 5.0000000000000000, 5.0000000000000000,
8262 10.000000000000000, -0.39999999999999991, 0.0 },
8263 { 0.50892615622124393, 5.0000000000000000, 5.0000000000000000,
8264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 8265 { 0.62798173270509761, 5.0000000000000000, 5.0000000000000000,
b4688136 8266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 8267 { 0.78595487360378424, 5.0000000000000000, 5.0000000000000000,
b4688136 8268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 8269 { 1.0000000000000000, 5.0000000000000000, 5.0000000000000000,
b4688136 8270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 8271 { 1.2972517637384813, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8272 10.000000000000000, 0.10000000000000009, 0.0 },
8273 { 1.7224028197396399, 5.0000000000000000, 5.0000000000000000,
8274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 8275 { 2.3527690438263305, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8276 10.000000000000000, 0.30000000000000004, 0.0 },
8277 { 3.3305218060101147, 5.0000000000000000, 5.0000000000000000,
8278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 8279 { 4.9383884076775466, 5.0000000000000000, 5.0000000000000000,
b4688136 8280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 8281 { 7.8007604680775229, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8282 10.000000000000000, 0.60000000000000009, 0.0 },
8283 { 13.518663719271903, 5.0000000000000000, 5.0000000000000000,
8284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 8285 { 27.285345906502567, 5.0000000000000000, 5.0000000000000000,
b4688136
ESR
8286 10.000000000000000, 0.80000000000000004, 0.0 },
8287 { 75.572415101502216, 5.0000000000000000, 5.0000000000000000,
8288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8289};
8290const double toler165 = 2.5000000000000020e-13;
8291
8292// Test data for a=5.0000000000000000, b=10.000000000000000, c=2.0000000000000000.
b4688136
ESR
8293// max(|f - f_GSL|): 0.81250000000000000 at index 18
8294// max(|f - f_GSL| / |f_GSL|): 1.8182428501096257e-15
8295// mean(f - f_GSL): 0.042765168793266639
8296// variance(f - f_GSL): 0.034744884250260212
8297// stddev(f - f_GSL): 0.18639979680852714
2be75957
ESR
8298const testcase_hyperg<double>
8299data166[19] =
8300{
8301 { 0.00063586451658060813, 5.0000000000000000, 10.000000000000000,
b4688136 8302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8303 { 0.0010334743461763829, 5.0000000000000000, 10.000000000000000,
b4688136 8304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8305 { 0.0015326246054669763, 5.0000000000000000, 10.000000000000000,
b4688136 8306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8307 { 0.0019007018181583513, 5.0000000000000000, 10.000000000000000,
b4688136 8308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8309 { 0.0012845577715431562, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8310 2.0000000000000000, -0.50000000000000000, 0.0 },
8311 { -0.0027213806178060305, 5.0000000000000000, 10.000000000000000,
8312 2.0000000000000000, -0.39999999999999991, 0.0 },
8313 { -0.015121744574954044, 5.0000000000000000, 10.000000000000000,
8314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8315 { -0.036637840562974290, 5.0000000000000000, 10.000000000000000,
b4688136 8316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8317 { 0.019117849062621605, 5.0000000000000000, 10.000000000000000,
b4688136 8318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8319 { 1.0000000000000000, 5.0000000000000000, 10.000000000000000,
b4688136 8320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8321 { 9.8116901852350615, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8322 2.0000000000000000, 0.10000000000000009, 0.0 },
8323 { 84.255589172244427, 5.0000000000000000, 10.000000000000000,
8324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8325 { 773.87517619421294, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8326 2.0000000000000000, 0.30000000000000004, 0.0 },
8327 { 8556.9725363054076, 5.0000000000000000, 10.000000000000000,
8328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8329 { 129023.99999999996, 5.0000000000000000, 10.000000000000000,
b4688136 8330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8331 { 3174543.3807373112, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8332 2.0000000000000000, 0.60000000000000009, 0.0 },
8333 { 175133896.95814583, 5.0000000000000000, 10.000000000000000,
8334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8335 { 43564453125.000061, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8336 2.0000000000000000, 0.80000000000000004, 0.0 },
8337 { 446860000000007.00, 5.0000000000000000, 10.000000000000000,
8338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8339};
8340const double toler166 = 2.5000000000000020e-13;
8341
8342// Test data for a=5.0000000000000000, b=10.000000000000000, c=4.0000000000000000.
b4688136
ESR
8343// max(|f - f_GSL|): 0.00039672851562500000 at index 18
8344// max(|f - f_GSL| / |f_GSL|): 1.6882064494680641e-15
8345// mean(f - f_GSL): 2.0884382210121993e-05
8346// variance(f - f_GSL): 8.2836958019297269e-09
8347// stddev(f - f_GSL): 9.1014810893226203e-05
2be75957
ESR
8348const testcase_hyperg<double>
8349data167[19] =
8350{
8351 { -0.00030045430691814646, 5.0000000000000000, 10.000000000000000,
b4688136 8352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8353 { -0.00031119487747322054, 5.0000000000000000, 10.000000000000000,
b4688136 8354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8355 { -0.00014589213141656318, 5.0000000000000000, 10.000000000000000,
b4688136 8356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8357 { 0.00056843418860824636, 5.0000000000000000, 10.000000000000000,
b4688136 8358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8359 { 0.0028902549859721747, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8360 4.0000000000000000, -0.50000000000000000, 0.0 },
8361 { 0.0098776037238877245, 5.0000000000000000, 10.000000000000000,
8362 4.0000000000000000, -0.39999999999999991, 0.0 },
8363 { 0.030689217428863859, 5.0000000000000000, 10.000000000000000,
8364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8365 { 0.094211590019076558, 5.0000000000000000, 10.000000000000000,
b4688136 8366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8367 { 0.29791981455918370, 5.0000000000000000, 10.000000000000000,
b4688136 8368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8369 { 1.0000000000000000, 5.0000000000000000, 10.000000000000000,
b4688136 8370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8371 { 3.6646308771236793, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8372 4.0000000000000000, 0.10000000000000009, 0.0 },
8373 { 15.133991837501567, 5.0000000000000000, 10.000000000000000,
8374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8375 { 73.331330046144089, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8376 4.0000000000000000, 0.30000000000000004, 0.0 },
8377 { 441.01791167787303, 5.0000000000000000, 10.000000000000000,
8378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8379 { 3583.9999999999991, 5.0000000000000000, 10.000000000000000,
b4688136 8380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8381 { 45299.530029296984, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8382 4.0000000000000000, 0.60000000000000009, 0.0 },
8383 { 1157231.0002427436, 5.0000000000000000, 10.000000000000000,
8384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8385 { 107421875.00000016, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8386 4.0000000000000000, 0.80000000000000004, 0.0 },
8387 { 235000000000.00293, 5.0000000000000000, 10.000000000000000,
8388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8389};
8390const double toler167 = 2.5000000000000020e-13;
8391
8392// Test data for a=5.0000000000000000, b=10.000000000000000, c=6.0000000000000000.
b4688136
ESR
8393// max(|f - f_GSL|): 9.5367431640625000e-07 at index 18
8394// max(|f - f_GSL| / |f_GSL|): 1.6314276114917587e-15
8395// mean(f - f_GSL): 5.0242811922592076e-08
8396// variance(f - f_GSL): 4.7862904884501567e-14
8397// stddev(f - f_GSL): 2.1877592391417655e-07
2be75957
ESR
8398const testcase_hyperg<double>
8399data168[19] =
8400{
8401 { 0.0058530497315413248, 5.0000000000000000, 10.000000000000000,
b4688136 8402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8403 { 0.0088526869356855397, 5.0000000000000000, 10.000000000000000,
b4688136 8404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8405 { 0.013770987983442959, 5.0000000000000000, 10.000000000000000,
b4688136 8406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8407 { 0.022108932690960776, 5.0000000000000000, 10.000000000000000,
b4688136 8408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8409 { 0.036786236450921550, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8410 6.0000000000000000, -0.50000000000000000, 0.0 },
8411 { 0.063750669040426408, 5.0000000000000000, 10.000000000000000,
8412 6.0000000000000000, -0.39999999999999991, 0.0 },
8413 { 0.11577228680714466, 5.0000000000000000, 10.000000000000000,
8414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8415 { 0.22197573416125760, 5.0000000000000000, 10.000000000000000,
b4688136 8416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8417 { 0.45361312968415324, 5.0000000000000000, 10.000000000000000,
b4688136 8418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8419 { 1.0000000000000000, 5.0000000000000000, 10.000000000000000,
b4688136 8420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8421 { 2.4162889363082747, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8422 6.0000000000000000, 0.10000000000000009, 0.0 },
8423 { 6.5381564791240541, 5.0000000000000000, 10.000000000000000,
8424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8425 { 20.415771011498428, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8426 6.0000000000000000, 0.30000000000000004, 0.0 },
8427 { 76.870682056629448, 5.0000000000000000, 10.000000000000000,
8428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8429 { 373.58730158730162, 5.0000000000000000, 10.000000000000000,
b4688136 8430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8431 { 2626.2555803571477, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8432 6.0000000000000000, 0.60000000000000009, 0.0 },
8433 { 33060.960671081237, 5.0000000000000000, 10.000000000000000,
8434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8435 { 1203521.8253968258, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8436 6.0000000000000000, 0.80000000000000004, 0.0 },
8437 { 584564285.71428990, 5.0000000000000000, 10.000000000000000,
8438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8439};
8440const double toler168 = 2.5000000000000020e-13;
8441
8442// Test data for a=5.0000000000000000, b=10.000000000000000, c=8.0000000000000000.
b4688136
ESR
8443// max(|f - f_GSL|): 7.4505805969238281e-09 at index 18
8444// max(|f - f_GSL| / |f_GSL|): 1.6196914341138665e-15
8445// mean(f - f_GSL): 3.9331532183208954e-10
8446// variance(f - f_GSL): 2.9206631793126476e-18
8447// stddev(f - f_GSL): 1.7089947862157589e-09
2be75957
ESR
8448const testcase_hyperg<double>
8449data169[19] =
8450{
8451 { 0.020248990107069573, 5.0000000000000000, 10.000000000000000,
b4688136 8452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8453 { 0.027876687750502366, 5.0000000000000000, 10.000000000000000,
b4688136 8454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8455 { 0.039154648888447607, 5.0000000000000000, 10.000000000000000,
b4688136 8456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8457 { 0.056251883506774715, 5.0000000000000000, 10.000000000000000,
b4688136 8458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8459 { 0.082914189910074473, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8460 8.0000000000000000, -0.50000000000000000, 0.0 },
8461 { 0.12585357817786472, 5.0000000000000000, 10.000000000000000,
8462 8.0000000000000000, -0.39999999999999991, 0.0 },
8463 { 0.19761423206224940, 5.0000000000000000, 10.000000000000000,
8464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8465 { 0.32280443863359237, 5.0000000000000000, 10.000000000000000,
b4688136 8466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8467 { 0.55250024062839420, 5.0000000000000000, 10.000000000000000,
b4688136 8468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8469 { 1.0000000000000000, 5.0000000000000000, 10.000000000000000,
b4688136 8470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8471 { 1.9374297986599267, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8472 8.0000000000000000, 0.10000000000000009, 0.0 },
8473 { 4.0849049886067759, 5.0000000000000000, 10.000000000000000,
8474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8475 { 9.5926988633258983, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8476 8.0000000000000000, 0.30000000000000004, 0.0 },
8477 { 25.958314281359588, 5.0000000000000000, 10.000000000000000,
8478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8479 { 85.333333333333300, 5.0000000000000000, 10.000000000000000,
b4688136 8480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8481 { 372.31445312500028, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8482 8.0000000000000000, 0.60000000000000009, 0.0 },
8483 { 2545.3436976070780, 5.0000000000000000, 10.000000000000000,
8484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8485 { 39583.333333333343, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8486 8.0000000000000000, 0.80000000000000004, 0.0 },
8487 { 4600000.0000000261, 5.0000000000000000, 10.000000000000000,
8488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8489};
8490const double toler169 = 2.5000000000000020e-13;
8491
8492// Test data for a=5.0000000000000000, b=10.000000000000000, c=10.000000000000000.
b4688136
ESR
8493// max(|f - f_GSL|): 1.0186340659856796e-10 at index 18
8494// max(|f - f_GSL| / |f_GSL|): 1.1641532182693482e-15
8495// mean(f - f_GSL): 5.5487040400966458e-12
8496// variance(f - f_GSL): 5.4399356990620132e-22
8497// stddev(f - f_GSL): 2.3323669734975269e-11
2be75957
ESR
8498const testcase_hyperg<double>
8499data170[19] =
8500{
b4688136
ESR
8501 { 0.040386107340619273, 5.0000000000000000, 10.000000000000000,
8502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 8503 { 0.052922149401344633, 5.0000000000000000, 10.000000000000000,
b4688136 8504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 8505 { 0.070429627772374270, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8506 10.000000000000000, -0.69999999999999996, 0.0 },
8507 { 0.095367431640624986, 5.0000000000000000, 10.000000000000000,
8508 10.000000000000000, -0.59999999999999998, 0.0 },
8509 { 0.13168724279835389, 5.0000000000000000, 10.000000000000000,
8510 10.000000000000000, -0.50000000000000000, 0.0 },
8511 { 0.18593443208187072, 5.0000000000000000, 10.000000000000000,
8512 10.000000000000000, -0.39999999999999991, 0.0 },
8513 { 0.26932907434290460, 5.0000000000000000, 10.000000000000000,
8514 10.000000000000000, -0.29999999999999993, 0.0 },
8515 { 0.40187757201646102, 5.0000000000000000, 10.000000000000000,
8516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 8517 { 0.62092132305915493, 5.0000000000000000, 10.000000000000000,
b4688136 8518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 8519 { 1.0000000000000000, 5.0000000000000000, 10.000000000000000,
b4688136 8520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 8521 { 1.6935087808430296, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8522 10.000000000000000, 0.10000000000000009, 0.0 },
8523 { 3.0517578125000036, 5.0000000000000000, 10.000000000000000,
8524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 8525 { 5.9499018266198629, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8526 10.000000000000000, 0.30000000000000004, 0.0 },
8527 { 12.860082304526767, 5.0000000000000000, 10.000000000000000,
8528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 8529 { 32.000000000000000, 5.0000000000000000, 10.000000000000000,
b4688136 8530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 8531 { 97.656250000000114, 5.0000000000000000, 10.000000000000000,
b4688136
ESR
8532 10.000000000000000, 0.60000000000000009, 0.0 },
8533 { 411.52263374485722, 5.0000000000000000, 10.000000000000000,
8534 10.000000000000000, 0.70000000000000018, 0.0 },
8535 { 3124.9999999999995, 5.0000000000000000, 10.000000000000000,
8536 10.000000000000000, 0.80000000000000004, 0.0 },
8537 { 100000.00000000055, 5.0000000000000000, 10.000000000000000,
8538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8539};
8540const double toler170 = 2.5000000000000020e-13;
8541
8542// Test data for a=5.0000000000000000, b=20.000000000000000, c=2.0000000000000000.
b4688136
ESR
8543// max(|f - f_GSL|): 60129542144.000000 at index 18
8544// max(|f - f_GSL| / |f_GSL|): 2.0181355730232468e-15
8545// mean(f - f_GSL): 3164712852.2154636
8546// variance(f - f_GSL): 1.9029272767041847e+20
8547// stddev(f - f_GSL): 13794663014.021708
2be75957
ESR
8548const testcase_hyperg<double>
8549data171[19] =
8550{
8551 { -1.8650300348790099e-05, 5.0000000000000000, 20.000000000000000,
b4688136 8552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8553 { -3.6488008415371319e-05, 5.0000000000000000, 20.000000000000000,
b4688136 8554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8555 { -6.4614776410961038e-05, 5.0000000000000000, 20.000000000000000,
b4688136 8556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8557 { -8.4495207102246549e-05, 5.0000000000000000, 20.000000000000000,
b4688136 8558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8559 { 2.2276197023825424e-05, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8560 2.0000000000000000, -0.50000000000000000, 0.0 },
8561 { 0.00070736115111457809, 5.0000000000000000, 20.000000000000000,
8562 2.0000000000000000, -0.39999999999999991, 0.0 },
8563 { 0.0027829732057272588, 5.0000000000000000, 20.000000000000000,
8564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8565 { 0.0013283545664371644, 5.0000000000000000, 20.000000000000000,
b4688136 8566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8567 { -0.041767631015048774, 5.0000000000000000, 20.000000000000000,
b4688136 8568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8569 { 1.0000000000000000, 5.0000000000000000, 20.000000000000000,
b4688136 8570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8571 { 61.311496556100003, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8572 2.0000000000000000, 0.10000000000000009, 0.0 },
8573 { 2397.4420539085872, 5.0000000000000000, 20.000000000000000,
8574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8575 { 103687.60998586559, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8576 2.0000000000000000, 0.30000000000000004, 0.0 },
8577 { 6247196.6451069508, 5.0000000000000000, 20.000000000000000,
8578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8579 { 656408576.00000000, 5.0000000000000000, 20.000000000000000,
b4688136 8580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8581 { 165334768098.54715, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8582 2.0000000000000000, 0.60000000000000009, 0.0 },
8583 { 175097125520819.91, 5.0000000000000000, 20.000000000000000,
8584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8585 { 2.6818275451660257e+18, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8586 2.0000000000000000, 0.80000000000000004, 0.0 },
8587 { 2.9794600000000777e+25, 5.0000000000000000, 20.000000000000000,
8588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8589};
8590const double toler171 = 2.5000000000000020e-13;
8591
8592// Test data for a=5.0000000000000000, b=20.000000000000000, c=4.0000000000000000.
b4688136
ESR
8593// max(|f - f_GSL|): 9437184.0000000000 at index 18
8594// max(|f - f_GSL| / |f_GSL|): 2.0515617391303805e-15
8595// mean(f - f_GSL): 496693.97369064158
8596// variance(f - f_GSL): 4687391593519.1660
8597// stddev(f - f_GSL): 2165038.4739119918
2be75957
ESR
8598const testcase_hyperg<double>
8599data172[19] =
8600{
8601 { -3.6403884516313627e-06, 5.0000000000000000, 20.000000000000000,
b4688136 8602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8603 { -9.5873829246491408e-06, 5.0000000000000000, 20.000000000000000,
b4688136 8604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8605 { -2.6052245147200097e-05, 5.0000000000000000, 20.000000000000000,
b4688136 8606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8607 { -7.2378303598384501e-05, 5.0000000000000000, 20.000000000000000,
b4688136 8608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8609 { -0.00020048577321417379, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8610 4.0000000000000000, -0.50000000000000000, 0.0 },
8611 { -0.00051222704046234439, 5.0000000000000000, 20.000000000000000,
8612 4.0000000000000000, -0.39999999999999991, 0.0 },
8613 { -0.00080950511491888959, 5.0000000000000000, 20.000000000000000,
8614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8615 { 0.0043473422174314250, 5.0000000000000000, 20.000000000000000,
b4688136 8616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8617 { 0.081078342558623853, 5.0000000000000000, 20.000000000000000,
b4688136 8618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8619 { 1.0000000000000000, 5.0000000000000000, 20.000000000000000,
b4688136 8620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8621 { 12.794854084397739, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8622 4.0000000000000000, 0.10000000000000009, 0.0 },
8623 { 195.15639104739174, 5.0000000000000000, 20.000000000000000,
8624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8625 { 3938.7991953190131, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8626 4.0000000000000000, 0.30000000000000004, 0.0 },
8627 { 118521.48653762160, 5.0000000000000000, 20.000000000000000,
8628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8629 { 6291455.9999999972, 5.0000000000000000, 20.000000000000000,
b4688136 8630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8631 { 773070496.50699198, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8632 4.0000000000000000, 0.60000000000000009, 0.0 },
8633 { 363276452167.04718, 5.0000000000000000, 20.000000000000000,
8634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8635 { 2002716064453133.0, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8636 4.0000000000000000, 0.80000000000000004, 0.0 },
8637 { 4.6000000000001222e+21, 5.0000000000000000, 20.000000000000000,
8638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8639};
8640const double toler172 = 2.5000000000000020e-13;
8641
8642// Test data for a=5.0000000000000000, b=20.000000000000000, c=6.0000000000000000.
b4688136
ESR
8643// max(|f - f_GSL|): 5120.0000000000000 at index 18
8644// max(|f - f_GSL| / |f_GSL|): 1.7944916193878173e-15
8645// mean(f - f_GSL): 269.47388985302263
8646// variance(f - f_GSL): 1379705.1461701661
8647// stddev(f - f_GSL): 1174.6085076186730
2be75957
ESR
8648const testcase_hyperg<double>
8649data173[19] =
8650{
8651 { 0.00014313323624053599, 5.0000000000000000, 20.000000000000000,
b4688136 8652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8653 { 0.00025426183473118769, 5.0000000000000000, 20.000000000000000,
b4688136 8654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8655 { 0.00048255612836437054, 5.0000000000000000, 20.000000000000000,
b4688136 8656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8657 { 0.00099096904674794185, 5.0000000000000000, 20.000000000000000,
b4688136 8658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8659 { 0.0022347805521915616, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8660 6.0000000000000000, -0.50000000000000000, 0.0 },
8661 { 0.0056271390060294354, 5.0000000000000000, 20.000000000000000,
8662 6.0000000000000000, -0.39999999999999991, 0.0 },
8663 { 0.016109059519227351, 5.0000000000000000, 20.000000000000000,
8664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8665 { 0.053453465775609076, 5.0000000000000000, 20.000000000000000,
b4688136 8666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8667 { 0.20995202901839263, 5.0000000000000000, 20.000000000000000,
b4688136 8668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8669 { 1.0000000000000000, 5.0000000000000000, 20.000000000000000,
b4688136 8670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8671 { 5.9534372167648799, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8672 6.0000000000000000, 0.10000000000000009, 0.0 },
8673 { 46.157632071206095, 5.0000000000000000, 20.000000000000000,
8674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8675 { 494.32074431164915, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8676 6.0000000000000000, 0.30000000000000004, 0.0 },
8677 { 7989.5277611776519, 5.0000000000000000, 20.000000000000000,
8678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8679 { 224179.55830753347, 5.0000000000000000, 20.000000000000000,
b4688136 8680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8681 { 13848144.485282511, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8682 6.0000000000000000, 0.60000000000000009, 0.0 },
8683 { 2948587692.8892150, 5.0000000000000000, 20.000000000000000,
8684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8685 { 5940513286161.6602, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8686 6.0000000000000000, 0.80000000000000004, 0.0 },
8687 { 2.8531757655946394e+18, 5.0000000000000000, 20.000000000000000,
8688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8689};
8690const double toler173 = 2.5000000000000020e-13;
8691
8692// Test data for a=5.0000000000000000, b=20.000000000000000, c=8.0000000000000000.
b4688136
ESR
8693// max(|f - f_GSL|): 7.0000000000000000 at index 18
8694// max(|f - f_GSL| / |f_GSL|): 1.5351977183413728e-15
8695// mean(f - f_GSL): 0.36842306154970872
8696// variance(f - f_GSL): 2.5789458059294108
8697// stddev(f - f_GSL): 1.6059096506122039
2be75957
ESR
8698const testcase_hyperg<double>
8699data174[19] =
8700{
8701 { 0.0012492049968744917, 5.0000000000000000, 20.000000000000000,
b4688136 8702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8703 { 0.0019931241968014200, 5.0000000000000000, 20.000000000000000,
b4688136 8704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8705 { 0.0033203386861410844, 5.0000000000000000, 20.000000000000000,
b4688136 8706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8707 { 0.0058191894509856774, 5.0000000000000000, 20.000000000000000,
b4688136 8708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8709 { 0.010830090368313864, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8710 8.0000000000000000, -0.50000000000000000, 0.0 },
8711 { 0.021653062305193541, 5.0000000000000000, 20.000000000000000,
8712 8.0000000000000000, -0.39999999999999991, 0.0 },
8713 { 0.047180821280919195, 5.0000000000000000, 20.000000000000000,
8714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8715 { 0.11405637279736212, 5.0000000000000000, 20.000000000000000,
b4688136 8716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8717 { 0.31275468794721017, 5.0000000000000000, 20.000000000000000,
b4688136 8718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8719 { 1.0000000000000000, 5.0000000000000000, 20.000000000000000,
b4688136 8720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8721 { 3.8598904658643969, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8722 8.0000000000000000, 0.10000000000000009, 0.0 },
8723 { 18.806301417906734, 5.0000000000000000, 20.000000000000000,
8724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8725 { 122.77054465017432, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8726 8.0000000000000000, 0.30000000000000004, 0.0 },
8727 { 1168.4762146809012, 5.0000000000000000, 20.000000000000000,
8728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8729 { 18437.511788521082, 5.0000000000000000, 20.000000000000000,
b4688136 8730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8731 { 597441.79669264762, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8732 8.0000000000000000, 0.60000000000000009, 0.0 },
8733 { 59390411.369228527, 5.0000000000000000, 20.000000000000000,
8734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8735 { 44681668993.361603, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8736 8.0000000000000000, 0.80000000000000004, 0.0 },
8737 { 4559673269683333.0, 5.0000000000000000, 20.000000000000000,
8738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8739};
8740const double toler174 = 2.5000000000000020e-13;
8741
8742// Test data for a=5.0000000000000000, b=20.000000000000000, c=10.000000000000000.
b4688136
ESR
8743// max(|f - f_GSL|): 0.029296875000000000 at index 18
8744// max(|f - f_GSL| / |f_GSL|): 1.8717083246628342e-15
8745// mean(f - f_GSL): 0.0015419659355661440
8746// variance(f - f_GSL): 4.5173964710879197e-05
8747// stddev(f - f_GSL): 0.0067211579888348996
2be75957
ESR
8748const testcase_hyperg<double>
8749data175[19] =
8750{
8751 { 0.0038867957051370739, 5.0000000000000000, 20.000000000000000,
b4688136 8752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 8753 { 0.0058484892597364235, 5.0000000000000000, 20.000000000000000,
b4688136 8754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 8755 { 0.0090987656053758189, 5.0000000000000000, 20.000000000000000,
b4688136 8756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 8757 { 0.014714392537270657, 5.0000000000000000, 20.000000000000000,
b4688136 8758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 8759 { 0.024900404542056772, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8760 10.000000000000000, -0.50000000000000000, 0.0 },
8761 { 0.044460184663785055, 5.0000000000000000, 20.000000000000000,
8762 10.000000000000000, -0.39999999999999991, 0.0 },
8763 { 0.084638849196357113, 5.0000000000000000, 20.000000000000000,
8764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 8765 { 0.17409058241291026, 5.0000000000000000, 20.000000000000000,
b4688136 8766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 8767 { 0.39357055823580767, 5.0000000000000000, 20.000000000000000,
b4688136 8768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 8769 { 1.0000000000000000, 5.0000000000000000, 20.000000000000000,
b4688136 8770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 8771 { 2.9410794636226596, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8772 10.000000000000000, 0.10000000000000009, 0.0 },
8773 { 10.417226071414374, 5.0000000000000000, 20.000000000000000,
8774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 8775 { 46.930585873140835, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8776 10.000000000000000, 0.30000000000000004, 0.0 },
8777 { 290.76717121814988, 5.0000000000000000, 20.000000000000000,
8778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 8779 { 2788.1641083374830, 5.0000000000000000, 20.000000000000000,
b4688136 8780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 8781 { 50228.117718560752, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8782 10.000000000000000, 0.60000000000000009, 0.0 },
8783 { 2433042.3476752895, 5.0000000000000000, 20.000000000000000,
8784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 8785 { 705345246.77141762, 5.0000000000000000, 20.000000000000000,
b4688136
ESR
8786 10.000000000000000, 0.80000000000000004, 0.0 },
8787 { 15652478868617.246, 5.0000000000000000, 20.000000000000000,
8788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8789};
8790const double toler175 = 2.5000000000000020e-13;
8791
8792// Test data for a=10.000000000000000, b=0.0000000000000000, c=2.0000000000000000.
b4688136 8793// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 8794// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
8795// mean(f - f_GSL): 0.0000000000000000
8796// variance(f - f_GSL): 0.0000000000000000
8797// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
8798const testcase_hyperg<double>
8799data176[19] =
8800{
8801 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8803 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8805 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8807 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8809 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8810 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 8811 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8812 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 8813 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8815 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8817 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8819 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8821 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8822 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 8823 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8825 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8826 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 8827 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8829 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8831 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8832 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 8833 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8835 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8836 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 8837 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8839};
8840const double toler176 = 2.5000000000000020e-13;
8841
8842// Test data for a=10.000000000000000, b=0.0000000000000000, c=4.0000000000000000.
b4688136 8843// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 8844// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
8845// mean(f - f_GSL): 0.0000000000000000
8846// variance(f - f_GSL): 0.0000000000000000
8847// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
8848const testcase_hyperg<double>
8849data177[19] =
8850{
8851 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8853 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8855 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8857 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8859 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8860 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 8861 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8862 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 8863 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8865 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8867 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8869 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8871 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8872 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 8873 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8875 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8876 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 8877 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8879 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8881 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8882 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 8883 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8885 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8886 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 8887 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8889};
8890const double toler177 = 2.5000000000000020e-13;
8891
8892// Test data for a=10.000000000000000, b=0.0000000000000000, c=6.0000000000000000.
b4688136 8893// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 8894// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
8895// mean(f - f_GSL): 0.0000000000000000
8896// variance(f - f_GSL): 0.0000000000000000
8897// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
8898const testcase_hyperg<double>
8899data178[19] =
8900{
8901 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8903 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8905 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8907 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8909 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8910 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 8911 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8912 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 8913 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8915 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8917 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8919 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8921 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8922 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 8923 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8925 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8926 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 8927 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8929 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8931 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8932 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 8933 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8935 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8936 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 8937 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8939};
8940const double toler178 = 2.5000000000000020e-13;
8941
8942// Test data for a=10.000000000000000, b=0.0000000000000000, c=8.0000000000000000.
b4688136 8943// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 8944// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
8945// mean(f - f_GSL): 0.0000000000000000
8946// variance(f - f_GSL): 0.0000000000000000
8947// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
8948const testcase_hyperg<double>
8949data179[19] =
8950{
8951 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 8953 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 8955 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 8957 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 8959 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8960 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 8961 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8962 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 8963 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 8965 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 8967 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 8969 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 8971 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8972 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 8973 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 8975 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8976 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 8977 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 8979 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 8981 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8982 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 8983 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 8985 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8986 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 8987 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 8988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
8989};
8990const double toler179 = 2.5000000000000020e-13;
8991
8992// Test data for a=10.000000000000000, b=0.0000000000000000, c=10.000000000000000.
b4688136 8993// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 8994// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
8995// mean(f - f_GSL): 0.0000000000000000
8996// variance(f - f_GSL): 0.0000000000000000
8997// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
8998const testcase_hyperg<double>
8999data180[19] =
9000{
9001 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 9003 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 9005 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 9007 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 9009 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9010 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 9011 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9012 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 9013 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 9015 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 9017 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 9019 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 9021 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9022 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 9023 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 9025 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9026 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 9027 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 9029 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 9031 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9032 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 9033 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 9035 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9036 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 9037 { 1.0000000000000000, 10.000000000000000, 0.0000000000000000,
b4688136 9038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9039};
9040const double toler180 = 2.5000000000000020e-13;
9041
9042// Test data for a=10.000000000000000, b=0.50000000000000000, c=2.0000000000000000.
b4688136
ESR
9043// max(|f - f_GSL|): 1.4901161193847656e-08 at index 18
9044// max(|f - f_GSL| / |f_GSL|): 1.8229127098647768e-15
9045// mean(f - f_GSL): 7.8543415046726153e-10
9046// variance(f - f_GSL): 1.1684633485497506e-17
9047// stddev(f - f_GSL): 3.4182793164832956e-09
2be75957
ESR
9048const testcase_hyperg<double>
9049data181[19] =
9050{
9051 { 0.37727530159464628, 10.000000000000000, 0.50000000000000000,
b4688136 9052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9053 { 0.39816010922169059, 10.000000000000000, 0.50000000000000000,
b4688136 9054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9055 { 0.42283703041362447, 10.000000000000000, 0.50000000000000000,
b4688136 9056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9057 { 0.45255640448730527, 10.000000000000000, 0.50000000000000000,
b4688136 9058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9059 { 0.48919507154431119, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9060 2.0000000000000000, -0.50000000000000000, 0.0 },
9061 { 0.53569358917731902, 10.000000000000000, 0.50000000000000000,
9062 2.0000000000000000, -0.39999999999999991, 0.0 },
9063 { 0.59689778897029577, 10.000000000000000, 0.50000000000000000,
9064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9065 { 0.68128587569875765, 10.000000000000000, 0.50000000000000000,
b4688136 9066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9067 { 0.80478739308790359, 10.000000000000000, 0.50000000000000000,
b4688136 9068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9069 { 1.0000000000000000, 10.000000000000000, 0.50000000000000000,
b4688136 9070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9071 { 1.3408664196153621, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9072 2.0000000000000000, 0.10000000000000009, 0.0 },
9073 { 2.0175364359923882, 10.000000000000000, 0.50000000000000000,
9074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9075 { 3.6011214553736646, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9076 2.0000000000000000, 0.30000000000000004, 0.0 },
9077 { 8.1799429939495489, 10.000000000000000, 0.50000000000000000,
9078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9079 { 25.644834637536000, 10.000000000000000, 0.50000000000000000,
b4688136 9080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9081 { 123.13738891597615, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9082 2.0000000000000000, 0.60000000000000009, 0.0 },
9083 { 1088.7122410321385, 10.000000000000000, 0.50000000000000000,
9084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9085 { 27358.291704709951, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9086 2.0000000000000000, 0.80000000000000004, 0.0 },
9087 { 8174369.0266732639, 10.000000000000000, 0.50000000000000000,
9088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9089};
9090const double toler181 = 2.5000000000000020e-13;
9091
9092// Test data for a=10.000000000000000, b=0.50000000000000000, c=4.0000000000000000.
b4688136
ESR
9093// max(|f - f_GSL|): 2.0008883439004421e-11 at index 18
9094// max(|f - f_GSL| / |f_GSL|): 1.5684473872214445e-15
9095// mean(f - f_GSL): 1.0626587329385841e-12
9096// variance(f - f_GSL): 2.1050090066796454e-23
9097// stddev(f - f_GSL): 4.5880377141863658e-12
2be75957
ESR
9098const testcase_hyperg<double>
9099data182[19] =
9100{
9101 { 0.53905528308450823, 10.000000000000000, 0.50000000000000000,
b4688136 9102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9103 { 0.56235533974376162, 10.000000000000000, 0.50000000000000000,
b4688136 9104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9105 { 0.58887657983263575, 10.000000000000000, 0.50000000000000000,
b4688136 9106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9107 { 0.61941227047262937, 10.000000000000000, 0.50000000000000000,
b4688136 9108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9109 { 0.65504896640793864, 10.000000000000000, 0.50000000000000000,
b4688136 9110 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 9111 { 0.69731666644529977, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9112 4.0000000000000000, -0.39999999999999991, 0.0 },
9113 { 0.74844073299399116, 10.000000000000000, 0.50000000000000000,
9114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9115 { 0.81178446800105830, 10.000000000000000, 0.50000000000000000,
b4688136 9116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9117 { 0.89266981277598045, 10.000000000000000, 0.50000000000000000,
b4688136 9118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9119 { 1.0000000000000000, 10.000000000000000, 0.50000000000000000,
b4688136 9120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9121 { 1.1497248473106778, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9122 4.0000000000000000, 0.10000000000000009, 0.0 },
9123 { 1.3729717112654578, 10.000000000000000, 0.50000000000000000,
9124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9125 { 1.7374982340374392, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9126 4.0000000000000000, 0.30000000000000004, 0.0 },
9127 { 2.4134479340960602, 10.000000000000000, 0.50000000000000000,
9128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9129 { 3.9191255240471192, 10.000000000000000, 0.50000000000000000,
b4688136 9130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9131 { 8.3316373077761270, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9132 4.0000000000000000, 0.60000000000000009, 0.0 },
9133 { 28.323020339843417, 10.000000000000000, 0.50000000000000000,
9134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9135 { 225.84286572747891, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9136 4.0000000000000000, 0.80000000000000004, 0.0 },
9137 { 12757.127591286826, 10.000000000000000, 0.50000000000000000,
9138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9139};
9140const double toler182 = 2.5000000000000020e-13;
9141
9142// Test data for a=10.000000000000000, b=0.50000000000000000, c=6.0000000000000000.
b4688136
ESR
9143// max(|f - f_GSL|): 1.9895196601282805e-13 at index 18
9144// max(|f - f_GSL| / |f_GSL|): 1.4567107859209851e-15
9145// mean(f - f_GSL): 1.1043797455481820e-14
9146// variance(f - f_GSL): 2.0706176432127926e-27
9147// stddev(f - f_GSL): 4.5504039855959963e-14
2be75957
ESR
9148const testcase_hyperg<double>
9149data183[19] =
9150{
9151 { 0.62672622092226027, 10.000000000000000, 0.50000000000000000,
b4688136 9152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9153 { 0.64931010269769840, 10.000000000000000, 0.50000000000000000,
b4688136 9154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9155 { 0.67448067519076293, 10.000000000000000, 0.50000000000000000,
b4688136 9156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9157 { 0.70276306239803643, 10.000000000000000, 0.50000000000000000,
b4688136 9158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9159 { 0.73484179773087521, 10.000000000000000, 0.50000000000000000,
b4688136 9160 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 9161 { 0.77162761412743874, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9162 6.0000000000000000, -0.39999999999999991, 0.0 },
9163 { 0.81436116844816553, 10.000000000000000, 0.50000000000000000,
9164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9165 { 0.86477994787944579, 10.000000000000000, 0.50000000000000000,
b4688136 9166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9167 { 0.92539820516603888, 10.000000000000000, 0.50000000000000000,
b4688136 9168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9169 { 1.0000000000000000, 10.000000000000000, 0.50000000000000000,
b4688136 9170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9171 { 1.0945599448210315, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9172 6.0000000000000000, 0.10000000000000009, 0.0 },
9173 { 1.2190897395597269, 10.000000000000000, 0.50000000000000000,
9174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9175 { 1.3916844336856475, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9176 6.0000000000000000, 0.30000000000000004, 0.0 },
9177 { 1.6484497630432020, 10.000000000000000, 0.50000000000000000,
9178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9179 { 2.0717772717131155, 10.000000000000000, 0.50000000000000000,
b4688136 9180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9181 { 2.8893613630810924, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9182 6.0000000000000000, 0.60000000000000009, 0.0 },
9183 { 4.9459404075413573, 10.000000000000000, 0.50000000000000000,
9184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9185 { 13.487394149998716, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9186 6.0000000000000000, 0.80000000000000004, 0.0 },
9187 { 136.57616044014080, 10.000000000000000, 0.50000000000000000,
9188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9189};
9190const double toler183 = 2.5000000000000020e-13;
9191
9192// Test data for a=10.000000000000000, b=0.50000000000000000, c=8.0000000000000000.
b4688136
ESR
9193// max(|f - f_GSL|): 1.2434497875801753e-14 at index 18
9194// max(|f - f_GSL| / |f_GSL|): 1.3245081211977792e-15
9195// mean(f - f_GSL): 8.5311874523827817e-16
9196// variance(f - f_GSL): 7.8655509529357183e-30
9197// stddev(f - f_GSL): 2.8045589587198410e-15
2be75957
ESR
9198const testcase_hyperg<double>
9199data184[19] =
9200{
9201 { 0.68421604440344319, 10.000000000000000, 0.50000000000000000,
b4688136 9202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9203 { 0.70548098055548925, 10.000000000000000, 0.50000000000000000,
b4688136 9204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9205 { 0.72884342311710337, 10.000000000000000, 0.50000000000000000,
b4688136 9206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9207 { 0.75466953437856232, 10.000000000000000, 0.50000000000000000,
b4688136 9208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9209 { 0.78342090924662589, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9210 8.0000000000000000, -0.50000000000000000, 0.0 },
9211 { 0.81568884278645115, 10.000000000000000, 0.50000000000000000,
9212 8.0000000000000000, -0.39999999999999991, 0.0 },
9213 { 0.85224480241465261, 10.000000000000000, 0.50000000000000000,
9214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9215 { 0.89411692571131685, 10.000000000000000, 0.50000000000000000,
b4688136 9216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9217 { 0.94270986892954811, 10.000000000000000, 0.50000000000000000,
b4688136 9218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9219 { 1.0000000000000000, 10.000000000000000, 0.50000000000000000,
b4688136 9220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9221 { 1.0688682849120232, 10.000000000000000, 0.50000000000000000,
b4688136 9222 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 9223 { 1.1537004376097553, 10.000000000000000, 0.50000000000000000,
b4688136 9224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9225 { 1.2615455028370031, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9226 8.0000000000000000, 0.30000000000000004, 0.0 },
9227 { 1.4045541456153443, 10.000000000000000, 0.50000000000000000,
9228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9229 { 1.6057216489444517, 10.000000000000000, 0.50000000000000000,
b4688136 9230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9231 { 1.9146603020550739, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9232 8.0000000000000000, 0.60000000000000009, 0.0 },
9233 { 2.4617931307620307, 10.000000000000000, 0.50000000000000000,
9234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9235 { 3.7267799624996498, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9236 8.0000000000000000, 0.80000000000000004, 0.0 },
9237 { 9.3880118036248721, 10.000000000000000, 0.50000000000000000,
9238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9239};
9240const double toler184 = 2.5000000000000020e-13;
9241
9242// Test data for a=10.000000000000000, b=0.50000000000000000, c=10.000000000000000.
b4688136
ESR
9243// max(|f - f_GSL|): 4.4408920985006262e-16 at index 18
9244// max(|f - f_GSL| / |f_GSL|): 1.8577584504832499e-16
9245// mean(f - f_GSL): 5.8432790769745078e-18
9246// variance(f - f_GSL): 1.1262748212790853e-32
9247// stddev(f - f_GSL): 1.0612609581432294e-16
2be75957
ESR
9248const testcase_hyperg<double>
9249data185[19] =
9250{
b4688136
ESR
9251 { 0.72547625011001160, 10.000000000000000, 0.50000000000000000,
9252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 9253 { 0.74535599249992990, 10.000000000000000, 0.50000000000000000,
b4688136 9254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 9255 { 0.76696498884737041, 10.000000000000000, 0.50000000000000000,
b4688136 9256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 9257 { 0.79056941504209477, 10.000000000000000, 0.50000000000000000,
b4688136 9258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 9259 { 0.81649658092772603, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9260 10.000000000000000, -0.50000000000000000, 0.0 },
9261 { 0.84515425472851669, 10.000000000000000, 0.50000000000000000,
9262 10.000000000000000, -0.39999999999999991, 0.0 },
9263 { 0.87705801930702931, 10.000000000000000, 0.50000000000000000,
9264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 9265 { 0.91287092917527690, 10.000000000000000, 0.50000000000000000,
b4688136 9266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 9267 { 0.95346258924559224, 10.000000000000000, 0.50000000000000000,
b4688136 9268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 9269 { 1.0000000000000000, 10.000000000000000, 0.50000000000000000,
b4688136 9270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 9271 { 1.0540925533894598, 10.000000000000000, 0.50000000000000000,
b4688136 9272 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 9273 { 1.1180339887498949, 10.000000000000000, 0.50000000000000000,
b4688136 9274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 9275 { 1.1952286093343938, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9276 10.000000000000000, 0.30000000000000004, 0.0 },
9277 { 1.2909944487358058, 10.000000000000000, 0.50000000000000000,
9278 10.000000000000000, 0.40000000000000013, 0.0 },
9279 { 1.4142135623730951, 10.000000000000000, 0.50000000000000000,
9280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 9281 { 1.5811388300841900, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9282 10.000000000000000, 0.60000000000000009, 0.0 },
9283 { 1.8257418583505542, 10.000000000000000, 0.50000000000000000,
9284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 9285 { 2.2360679774997898, 10.000000000000000, 0.50000000000000000,
b4688136
ESR
9286 10.000000000000000, 0.80000000000000004, 0.0 },
9287 { 3.1622776601683809, 10.000000000000000, 0.50000000000000000,
9288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9289};
9290const double toler185 = 2.5000000000000020e-13;
9291
9292// Test data for a=10.000000000000000, b=1.0000000000000000, c=2.0000000000000000.
b4688136
ESR
9293// max(|f - f_GSL|): 2.0861625671386719e-07 at index 18
9294// max(|f - f_GSL| / |f_GSL|): 1.6897916810721003e-15
9295// mean(f - f_GSL): 1.0989192059253727e-08
9296// variance(f - f_GSL): 2.2903477685061008e-15
9297// stddev(f - f_GSL): 4.7857577963224392e-08
2be75957
ESR
9298const testcase_hyperg<double>
9299data186[19] =
9300{
9301 { 0.12307420104127866, 10.000000000000000, 1.0000000000000000,
b4688136 9302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9303 { 0.13818870041457434, 10.000000000000000, 1.0000000000000000,
b4688136 9304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9305 { 0.15739165631811705, 10.000000000000000, 1.0000000000000000,
b4688136 9306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9307 { 0.18249038606882081, 10.000000000000000, 1.0000000000000000,
b4688136 9308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9309 { 0.21644171225027795, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9310 2.0000000000000000, -0.50000000000000000, 0.0 },
9311 { 0.26433326159804149, 10.000000000000000, 1.0000000000000000,
9312 2.0000000000000000, -0.39999999999999991, 0.0 },
9313 { 0.33544459430654527, 10.000000000000000, 1.0000000000000000,
9314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9315 { 0.44788516696232511, 10.000000000000000, 1.0000000000000000,
b4688136 9316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9317 { 0.63989153514168373, 10.000000000000000, 1.0000000000000000,
b4688136 9318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9319 { 1.0000000000000000, 10.000000000000000, 1.0000000000000000,
b4688136 9320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9321 { 1.7568608796813312, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9322 2.0000000000000000, 0.10000000000000009, 0.0 },
9323 { 3.5836558871799102, 10.000000000000000, 1.0000000000000000,
9324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9325 { 8.8077526749963226, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9326 2.0000000000000000, 0.30000000000000004, 0.0 },
9327 { 27.285841702089265, 10.000000000000000, 1.0000000000000000,
9328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9329 { 113.55555555555557, 10.000000000000000, 1.0000000000000000,
b4688136 9330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9331 { 706.24023437500091, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9332 2.0000000000000000, 0.60000000000000009, 0.0 },
9333 { 8064.1687976652511, 10.000000000000000, 1.0000000000000000,
9334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9335 { 271267.22222222196, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9336 2.0000000000000000, 0.80000000000000004, 0.0 },
9337 { 123456790.00000113, 10.000000000000000, 1.0000000000000000,
9338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9339};
9340const double toler186 = 2.5000000000000020e-13;
9341
9342// Test data for a=10.000000000000000, b=1.0000000000000000, c=4.0000000000000000.
b4688136
ESR
9343// max(|f - f_GSL|): 2.6193447411060333e-10 at index 18
9344// max(|f - f_GSL| / |f_GSL|): 1.6039867544159698e-15
9345// mean(f - f_GSL): 1.3861192895235850e-11
9346// variance(f - f_GSL): 3.6088478524883243e-21
9347// stddev(f - f_GSL): 6.0073686856129647e-11
2be75957
ESR
9348const testcase_hyperg<double>
9349data187[19] =
9350{
9351 { 0.28363728383055781, 10.000000000000000, 1.0000000000000000,
b4688136 9352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9353 { 0.30933003169808387, 10.000000000000000, 1.0000000000000000,
b4688136 9354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9355 { 0.33998437757128797, 10.000000000000000, 1.0000000000000000,
b4688136 9356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9357 { 0.37713553224291113, 10.000000000000000, 1.0000000000000000,
b4688136 9358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9359 { 0.42299736538419669, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9360 4.0000000000000000, -0.50000000000000000, 0.0 },
9361 { 0.48086597727600089, 10.000000000000000, 1.0000000000000000,
9362 4.0000000000000000, -0.39999999999999991, 0.0 },
9363 { 0.55583495759293033, 10.000000000000000, 1.0000000000000000,
9364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9365 { 0.65612850114039678, 10.000000000000000, 1.0000000000000000,
b4688136 9366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9367 { 0.79573668772968142, 10.000000000000000, 1.0000000000000000,
b4688136 9368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9369 { 1.0000000000000000, 10.000000000000000, 1.0000000000000000,
b4688136 9370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9371 { 1.3184712058058303, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9372 4.0000000000000000, 0.10000000000000009, 0.0 },
9373 { 1.8576958065941236, 10.000000000000000, 1.0000000000000000,
9374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9375 { 2.8759509651764228, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9376 4.0000000000000000, 0.30000000000000004, 0.0 },
9377 { 5.1046225531822289, 10.000000000000000, 1.0000000000000000,
9378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9379 { 11.095238095238095, 10.000000000000000, 1.0000000000000000,
b4688136 9380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9381 { 32.797154017857174, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9382 4.0000000000000000, 0.60000000000000009, 0.0 },
9383 { 158.01935680536548, 10.000000000000000, 1.0000000000000000,
9384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9385 { 1815.9523809523814, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9386 4.0000000000000000, 0.80000000000000004, 0.0 },
9387 { 163302.14285714392, 10.000000000000000, 1.0000000000000000,
9388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9389};
9390const double toler187 = 2.5000000000000020e-13;
9391
9392// Test data for a=10.000000000000000, b=1.0000000000000000, c=6.0000000000000000.
b4688136
ESR
9393// max(|f - f_GSL|): 2.0463630789890885e-12 at index 18
9394// max(|f - f_GSL| / |f_GSL|): 1.5238873992471854e-15
9395// mean(f - f_GSL): 1.1029773585697082e-13
9396// variance(f - f_GSL): 2.1981059026132227e-25
9397// stddev(f - f_GSL): 4.6883962104468326e-13
2be75957
ESR
9398const testcase_hyperg<double>
9399data188[19] =
9400{
9401 { 0.39006633302741811, 10.000000000000000, 1.0000000000000000,
b4688136 9402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9403 { 0.41898885698103278, 10.000000000000000, 1.0000000000000000,
b4688136 9404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9405 { 0.45245557983812590, 10.000000000000000, 1.0000000000000000,
b4688136 9406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9407 { 0.49160548618861627, 10.000000000000000, 1.0000000000000000,
b4688136 9408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9409 { 0.53798419230517991, 10.000000000000000, 1.0000000000000000,
b4688136 9410 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 9411 { 0.59373881442067322, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9412 6.0000000000000000, -0.39999999999999991, 0.0 },
9413 { 0.66193391357076092, 10.000000000000000, 1.0000000000000000,
9414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9415 { 0.74708402736952118, 10.000000000000000, 1.0000000000000000,
b4688136 9416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9417 { 0.85609281019430605, 10.000000000000000, 1.0000000000000000,
b4688136 9418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9419 { 1.0000000000000000, 10.000000000000000, 1.0000000000000000,
b4688136 9420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9421 { 1.1974451135148187, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9422 6.0000000000000000, 0.10000000000000009, 0.0 },
9423 { 1.4820886036706358, 10.000000000000000, 1.0000000000000000,
9424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9425 { 1.9201183180477521, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9426 6.0000000000000000, 0.30000000000000004, 0.0 },
9427 { 2.6569338297733367, 10.000000000000000, 1.0000000000000000,
9428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9429 { 4.0634920634920650, 10.000000000000000, 1.0000000000000000,
b4688136 9430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9431 { 7.3102678571428568, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9432 6.0000000000000000, 0.60000000000000009, 0.0 },
9433 { 17.512574302697782, 10.000000000000000, 1.0000000000000000,
9434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9435 { 74.206349206349131, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9436 6.0000000000000000, 0.80000000000000004, 0.0 },
9437 { 1342.8571428571502, 10.000000000000000, 1.0000000000000000,
9438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9439};
9440const double toler188 = 2.5000000000000020e-13;
9441
9442// Test data for a=10.000000000000000, b=1.0000000000000000, c=8.0000000000000000.
b4688136
ESR
9443// max(|f - f_GSL|): 7.8159700933611020e-14 at index 18
9444// max(|f - f_GSL| / |f_GSL|): 1.4210854715201975e-15
9445// mean(f - f_GSL): 4.6629367034256575e-15
9446// variance(f - f_GSL): 3.1677071819086927e-28
9447// stddev(f - f_GSL): 1.7798053775367387e-14
2be75957
ESR
9448const testcase_hyperg<double>
9449data189[19] =
9450{
9451 { 0.46726928123633210, 10.000000000000000, 1.0000000000000000,
b4688136 9452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9453 { 0.49687547629934464, 10.000000000000000, 1.0000000000000000,
b4688136 9454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9455 { 0.53045208856322223, 10.000000000000000, 1.0000000000000000,
b4688136 9456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9457 { 0.56884765624999989, 10.000000000000000, 1.0000000000000000,
b4688136 9458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9459 { 0.61316872427983504, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9460 8.0000000000000000, -0.50000000000000000, 0.0 },
9461 { 0.66488500161969544, 10.000000000000000, 1.0000000000000000,
9462 8.0000000000000000, -0.39999999999999991, 0.0 },
9463 { 0.72598998634501621, 10.000000000000000, 1.0000000000000000,
9464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9465 { 0.79925411522633760, 10.000000000000000, 1.0000000000000000,
b4688136 9466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9467 { 0.88863845062192182, 10.000000000000000, 1.0000000000000000,
b4688136 9468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9469 { 1.0000000000000000, 10.000000000000000, 1.0000000000000000,
b4688136 9470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9471 { 1.1423563481176653, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9472 8.0000000000000000, 0.10000000000000009, 0.0 },
9473 { 1.3302951388888891, 10.000000000000000, 1.0000000000000000,
9474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9475 { 1.5889212827988335, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9476 8.0000000000000000, 0.30000000000000004, 0.0 },
9477 { 1.9650205761316886, 10.000000000000000, 1.0000000000000000,
9478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9479 { 2.5555555555555549, 10.000000000000000, 1.0000000000000000,
b4688136 9480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9481 { 3.5937500000000013, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9482 8.0000000000000000, 0.60000000000000009, 0.0 },
9483 { 5.7818930041152274, 10.000000000000000, 1.0000000000000000,
9484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9485 { 12.222222222222220, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9486 8.0000000000000000, 0.80000000000000004, 0.0 },
9487 { 55.000000000000114, 10.000000000000000, 1.0000000000000000,
9488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9489};
9490const double toler189 = 2.5000000000000020e-13;
9491
9492// Test data for a=10.000000000000000, b=1.0000000000000000, c=10.000000000000000.
b4688136
ESR
9493// max(|f - f_GSL|): 1.7763568394002505e-15 at index 18
9494// max(|f - f_GSL| / |f_GSL|): 1.9984014443252816e-16
9495// mean(f - f_GSL): 7.5962628000668607e-17
9496// variance(f - f_GSL): 1.6955391669463862e-31
9497// stddev(f - f_GSL): 4.1176925175957300e-16
2be75957
ESR
9498const testcase_hyperg<double>
9499data190[19] =
9500{
9501 { 0.52631578947368429, 10.000000000000000, 1.0000000000000000,
b4688136 9502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 9503 { 0.55555555555555558, 10.000000000000000, 1.0000000000000000,
b4688136 9504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 9505 { 0.58823529411764708, 10.000000000000000, 1.0000000000000000,
b4688136 9506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 9507 { 0.62500000000000000, 10.000000000000000, 1.0000000000000000,
b4688136 9508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 9509 { 0.66666666666666663, 10.000000000000000, 1.0000000000000000,
b4688136 9510 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 9511 { 0.71428571428571430, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9512 10.000000000000000, -0.39999999999999991, 0.0 },
9513 { 0.76923076923076938, 10.000000000000000, 1.0000000000000000,
9514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 9515 { 0.83333333333333337, 10.000000000000000, 1.0000000000000000,
b4688136 9516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 9517 { 0.90909090909090906, 10.000000000000000, 1.0000000000000000,
b4688136 9518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 9519 { 1.0000000000000000, 10.000000000000000, 1.0000000000000000,
b4688136 9520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 9521 { 1.1111111111111112, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9522 10.000000000000000, 0.10000000000000009, 0.0 },
9523 { 1.2500000000000002, 10.000000000000000, 1.0000000000000000,
9524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 9525 { 1.4285714285714286, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9526 10.000000000000000, 0.30000000000000004, 0.0 },
9527 { 1.6666666666666670, 10.000000000000000, 1.0000000000000000,
9528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 9529 { 2.0000000000000000, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9530 10.000000000000000, 0.50000000000000000, 0.0 },
9531 { 2.5000000000000009, 10.000000000000000, 1.0000000000000000,
9532 10.000000000000000, 0.60000000000000009, 0.0 },
9533 { 3.3333333333333348, 10.000000000000000, 1.0000000000000000,
9534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 9535 { 5.0000000000000009, 10.000000000000000, 1.0000000000000000,
b4688136
ESR
9536 10.000000000000000, 0.80000000000000004, 0.0 },
9537 { 10.000000000000011, 10.000000000000000, 1.0000000000000000,
9538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9539};
9540const double toler190 = 2.5000000000000020e-13;
9541
9542// Test data for a=10.000000000000000, b=2.0000000000000000, c=2.0000000000000000.
b4688136
ESR
9543// max(|f - f_GSL|): 2.2888183593750000e-05 at index 18
9544// max(|f - f_GSL| / |f_GSL|): 2.4795532226562509e-15
9545// mean(f - f_GSL): 1.2059140510950354e-06
9546// variance(f - f_GSL): 2.7568813079896666e-11
9547// stddev(f - f_GSL): 5.2506012112801583e-06
2be75957
ESR
9548const testcase_hyperg<double>
9549data191[19] =
9550{
9551 { 0.0016310376661280216, 10.000000000000000, 2.0000000000000000,
b4688136 9552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9553 { 0.0028007538972582421, 10.000000000000000, 2.0000000000000000,
b4688136 9554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9555 { 0.0049603324681551939, 10.000000000000000, 2.0000000000000000,
b4688136 9556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9557 { 0.0090949470177292789, 10.000000000000000, 2.0000000000000000,
b4688136 9558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9559 { 0.017341529915832606, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9560 2.0000000000000000, -0.50000000000000000, 0.0 },
9561 { 0.034571613033607791, 10.000000000000000, 2.0000000000000000,
9562 2.0000000000000000, -0.39999999999999991, 0.0 },
9563 { 0.072538150286405839, 10.000000000000000, 2.0000000000000000,
9564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9565 { 0.16150558288984579, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9566 2.0000000000000000, -0.19999999999999996, 0.0 },
9567 { 0.38554328942953142, 10.000000000000000, 2.0000000000000000,
9568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9569 { 1.0000000000000000, 10.000000000000000, 2.0000000000000000,
b4688136 9570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9571 { 2.8679719907924444, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9572 2.0000000000000000, 0.10000000000000009, 0.0 },
9573 { 9.3132257461548065, 10.000000000000000, 2.0000000000000000,
9574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9575 { 35.401331746414378, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9576 2.0000000000000000, 0.30000000000000004, 0.0 },
9577 { 165.38171687920246, 10.000000000000000, 2.0000000000000000,
9578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9579 { 1024.0000000000000, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9580 2.0000000000000000, 0.50000000000000000, 0.0 },
9581 { 9536.7431640625218, 10.000000000000000, 2.0000000000000000,
9582 2.0000000000000000, 0.60000000000000009, 0.0 },
9583 { 169350.87808430390, 10.000000000000000, 2.0000000000000000,
9584 2.0000000000000000, 0.70000000000000018, 0.0 },
9585 { 9765624.9999999963, 10.000000000000000, 2.0000000000000000,
9586 2.0000000000000000, 0.80000000000000004, 0.0 },
9587 { 10000000000.000111, 10.000000000000000, 2.0000000000000000,
9588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9589};
9590const double toler191 = 2.5000000000000020e-13;
9591
9592// Test data for a=10.000000000000000, b=2.0000000000000000, c=4.0000000000000000.
b4688136
ESR
9593// max(|f - f_GSL|): 1.4901161193847656e-08 at index 18
9594// max(|f - f_GSL| / |f_GSL|): 1.4958811384436608e-15
9595// mean(f - f_GSL): 7.8582773037277017e-10
9596// variance(f - f_GSL): 1.1683981904064149e-17
9597// stddev(f - f_GSL): 3.4181840067591665e-09
2be75957
ESR
9598const testcase_hyperg<double>
9599data192[19] =
9600{
9601 { 0.071191280690193537, 10.000000000000000, 2.0000000000000000,
b4688136 9602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9603 { 0.085646504654238384, 10.000000000000000, 2.0000000000000000,
b4688136 9604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9605 { 0.10478215656371109, 10.000000000000000, 2.0000000000000000,
b4688136 9606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9607 { 0.13074816337653578, 10.000000000000000, 2.0000000000000000,
b4688136 9608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9609 { 0.16701141666848118, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9610 4.0000000000000000, -0.50000000000000000, 0.0 },
9611 { 0.21939323375313963, 10.000000000000000, 2.0000000000000000,
9612 4.0000000000000000, -0.39999999999999991, 0.0 },
9613 { 0.29813515331786639, 10.000000000000000, 2.0000000000000000,
9614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9615 { 0.42225974638874397, 10.000000000000000, 2.0000000000000000,
b4688136 9616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9617 { 0.62942145962174878, 10.000000000000000, 2.0000000000000000,
b4688136 9618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9619 { 1.0000000000000000, 10.000000000000000, 2.0000000000000000,
b4688136 9620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9621 { 1.7218685262373197, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9622 4.0000000000000000, 0.10000000000000009, 0.0 },
9623 { 3.2855760483514738, 10.000000000000000, 2.0000000000000000,
9624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9625 { 7.1616652508907093, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9626 4.0000000000000000, 0.30000000000000004, 0.0 },
9627 { 18.612326808485950, 10.000000000000000, 2.0000000000000000,
9628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9629 { 61.476190476190474, 10.000000000000000, 2.0000000000000000,
b4688136 9630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9631 { 286.27580915178623, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9632 4.0000000000000000, 0.60000000000000009, 0.0 },
9633 { 2274.9441142102414, 10.000000000000000, 2.0000000000000000,
9634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9635 { 47229.761904761865, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9636 4.0000000000000000, 0.80000000000000004, 0.0 },
9637 { 9961460.7142858077, 10.000000000000000, 2.0000000000000000,
9638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9639};
9640const double toler192 = 2.5000000000000020e-13;
9641
9642// Test data for a=10.000000000000000, b=2.0000000000000000, c=6.0000000000000000.
b4688136
ESR
9643// max(|f - f_GSL|): 8.7311491370201111e-11 at index 18
9644// max(|f - f_GSL| / |f_GSL|): 1.5843951771650161e-15
9645// mean(f - f_GSL): 4.6467391338242840e-12
9646// variance(f - f_GSL): 4.0072766661644994e-22
9647// stddev(f - f_GSL): 2.0018183399510804e-11
2be75957
ESR
9648const testcase_hyperg<double>
9649data193[19] =
9650{
9651 { 0.14747230019381058, 10.000000000000000, 2.0000000000000000,
b4688136 9652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9653 { 0.17073600100690609, 10.000000000000000, 2.0000000000000000,
b4688136 9654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9655 { 0.19982795745135354, 10.000000000000000, 2.0000000000000000,
b4688136 9656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9657 { 0.23681776864188053, 10.000000000000000, 2.0000000000000000,
b4688136 9658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9659 { 0.28475624360398011, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9660 6.0000000000000000, -0.50000000000000000, 0.0 },
9661 { 0.34827500743063161, 10.000000000000000, 2.0000000000000000,
9662 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 9663 { 0.43464829159684687, 10.000000000000000, 2.0000000000000000,
b4688136 9664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9665 { 0.55576053438064787, 10.000000000000000, 2.0000000000000000,
b4688136 9666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9667 { 0.73195020913445530, 10.000000000000000, 2.0000000000000000,
b4688136 9668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9669 { 1.0000000000000000, 10.000000000000000, 2.0000000000000000,
b4688136 9670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9671 { 1.4310223867822929, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9672 6.0000000000000000, 0.10000000000000009, 0.0 },
9673 { 2.1742563399057566, 10.000000000000000, 2.0000000000000000,
9674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9675 { 3.5769231236256043, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9676 6.0000000000000000, 0.30000000000000004, 0.0 },
9677 { 6.5620441134844469, 10.000000000000000, 2.0000000000000000,
9678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9679 { 14.063492063492063, 10.000000000000000, 2.0000000000000000,
b4688136 9680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9681 { 38.085937500000036, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9682 6.0000000000000000, 0.60000000000000009, 0.0 },
9683 { 150.92973632068330, 10.000000000000000, 2.0000000000000000,
9684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9685 { 1212.3015873015852, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9686 6.0000000000000000, 0.80000000000000004, 0.0 },
9687 { 55107.142857143110, 10.000000000000000, 2.0000000000000000,
9688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9689};
9690const double toler193 = 2.5000000000000020e-13;
9691
9692// Test data for a=10.000000000000000, b=2.0000000000000000, c=8.0000000000000000.
b4688136
ESR
9693// max(|f - f_GSL|): 1.8189894035458565e-12 at index 18
9694// max(|f - f_GSL| / |f_GSL|): 1.4848893090170230e-15
9695// mean(f - f_GSL): 1.0027066896088256e-13
9696// variance(f - f_GSL): 1.7322804840633983e-25
9697// stddev(f - f_GSL): 4.1620673757922257e-13
2be75957
ESR
9698const testcase_hyperg<double>
9699data194[19] =
9700{
9701 { 0.21658059714090577, 10.000000000000000, 2.0000000000000000,
b4688136 9702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9703 { 0.24513539602702861, 10.000000000000000, 2.0000000000000000,
b4688136 9704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9705 { 0.27967018274845046, 10.000000000000000, 2.0000000000000000,
b4688136 9706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9707 { 0.32196044921875022, 10.000000000000000, 2.0000000000000000,
b4688136 9708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9709 { 0.37448559670781911, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9710 8.0000000000000000, -0.50000000000000000, 0.0 },
9711 { 0.44078856032208802, 10.000000000000000, 2.0000000000000000,
9712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 9713 { 0.52606701446027793, 10.000000000000000, 2.0000000000000000,
b4688136 9714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9715 { 0.63818158436213956, 10.000000000000000, 2.0000000000000000,
b4688136 9716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9717 { 0.78944971882612769, 10.000000000000000, 2.0000000000000000,
b4688136 9718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9719 { 1.0000000000000000, 10.000000000000000, 2.0000000000000000,
b4688136 9720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9721 { 1.3044251384443430, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9722 8.0000000000000000, 0.10000000000000009, 0.0 },
9723 { 1.7659505208333344, 10.000000000000000, 2.0000000000000000,
9724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9725 { 2.5093710953769270, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9726 8.0000000000000000, 0.30000000000000004, 0.0 },
9727 { 3.8065843621399202, 10.000000000000000, 2.0000000000000000,
9728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9729 { 6.3333333333333313, 10.000000000000000, 2.0000000000000000,
b4688136 9730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9731 { 12.109375000000004, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9732 8.0000000000000000, 0.60000000000000009, 0.0 },
9733 { 29.115226337448608, 10.000000000000000, 2.0000000000000000,
9734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9735 { 108.33333333333330, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9736 8.0000000000000000, 0.80000000000000004, 0.0 },
9737 { 1225.0000000000023, 10.000000000000000, 2.0000000000000000,
9738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9739};
9740const double toler194 = 2.5000000000000020e-13;
9741
9742// Test data for a=10.000000000000000, b=2.0000000000000000, c=10.000000000000000.
b4688136
ESR
9743// max(|f - f_GSL|): 4.2632564145606011e-14 at index 18
9744// max(|f - f_GSL| / |f_GSL|): 4.2632564145605916e-16
9745// mean(f - f_GSL): 2.3636063866361887e-15
9746// variance(f - f_GSL): 9.5093179694074762e-29
9747// stddev(f - f_GSL): 9.7515731907254209e-15
2be75957
ESR
9748const testcase_hyperg<double>
9749data195[19] =
9750{
9751 { 0.27700831024930750, 10.000000000000000, 2.0000000000000000,
b4688136 9752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 9753 { 0.30864197530864196, 10.000000000000000, 2.0000000000000000,
b4688136 9754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 9755 { 0.34602076124567477, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9756 10.000000000000000, -0.69999999999999996, 0.0 },
9757 { 0.39062500000000000, 10.000000000000000, 2.0000000000000000,
9758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 9759 { 0.44444444444444442, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9760 10.000000000000000, -0.50000000000000000, 0.0 },
9761 { 0.51020408163265318, 10.000000000000000, 2.0000000000000000,
9762 10.000000000000000, -0.39999999999999991, 0.0 },
9763 { 0.59171597633136108, 10.000000000000000, 2.0000000000000000,
9764 10.000000000000000, -0.29999999999999993, 0.0 },
9765 { 0.69444444444444442, 10.000000000000000, 2.0000000000000000,
9766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 9767 { 0.82644628099173545, 10.000000000000000, 2.0000000000000000,
b4688136 9768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 9769 { 1.0000000000000000, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9770 10.000000000000000, 0.0000000000000000, 0.0 },
9771 { 1.2345679012345683, 10.000000000000000, 2.0000000000000000,
9772 10.000000000000000, 0.10000000000000009, 0.0 },
9773 { 1.5625000000000007, 10.000000000000000, 2.0000000000000000,
9774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 9775 { 2.0408163265306127, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9776 10.000000000000000, 0.30000000000000004, 0.0 },
9777 { 2.7777777777777795, 10.000000000000000, 2.0000000000000000,
9778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 9779 { 4.0000000000000000, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9780 10.000000000000000, 0.50000000000000000, 0.0 },
9781 { 6.2500000000000027, 10.000000000000000, 2.0000000000000000,
9782 10.000000000000000, 0.60000000000000009, 0.0 },
9783 { 11.111111111111125, 10.000000000000000, 2.0000000000000000,
9784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 9785 { 25.000000000000007, 10.000000000000000, 2.0000000000000000,
b4688136
ESR
9786 10.000000000000000, 0.80000000000000004, 0.0 },
9787 { 100.00000000000023, 10.000000000000000, 2.0000000000000000,
9788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9789};
9790const double toler195 = 2.5000000000000020e-13;
9791
9792// Test data for a=10.000000000000000, b=5.0000000000000000, c=2.0000000000000000.
b4688136
ESR
9793// max(|f - f_GSL|): 0.81250000000000000 at index 18
9794// max(|f - f_GSL| / |f_GSL|): 1.8182428501096257e-15
9795// mean(f - f_GSL): 0.042765168793266639
9796// variance(f - f_GSL): 0.034744884250260212
9797// stddev(f - f_GSL): 0.18639979680852714
2be75957
ESR
9798const testcase_hyperg<double>
9799data196[19] =
9800{
9801 { 0.00063586451658060813, 10.000000000000000, 5.0000000000000000,
b4688136 9802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9803 { 0.0010334743461763829, 10.000000000000000, 5.0000000000000000,
b4688136 9804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9805 { 0.0015326246054669763, 10.000000000000000, 5.0000000000000000,
b4688136 9806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9807 { 0.0019007018181583513, 10.000000000000000, 5.0000000000000000,
b4688136 9808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9809 { 0.0012845577715431562, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9810 2.0000000000000000, -0.50000000000000000, 0.0 },
9811 { -0.0027213806178060305, 10.000000000000000, 5.0000000000000000,
9812 2.0000000000000000, -0.39999999999999991, 0.0 },
9813 { -0.015121744574954044, 10.000000000000000, 5.0000000000000000,
9814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9815 { -0.036637840562974290, 10.000000000000000, 5.0000000000000000,
b4688136 9816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9817 { 0.019117849062621605, 10.000000000000000, 5.0000000000000000,
b4688136 9818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9819 { 1.0000000000000000, 10.000000000000000, 5.0000000000000000,
b4688136 9820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9821 { 9.8116901852350615, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9822 2.0000000000000000, 0.10000000000000009, 0.0 },
9823 { 84.255589172244427, 10.000000000000000, 5.0000000000000000,
9824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9825 { 773.87517619421294, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9826 2.0000000000000000, 0.30000000000000004, 0.0 },
9827 { 8556.9725363054076, 10.000000000000000, 5.0000000000000000,
9828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9829 { 129023.99999999996, 10.000000000000000, 5.0000000000000000,
b4688136 9830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9831 { 3174543.3807373112, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9832 2.0000000000000000, 0.60000000000000009, 0.0 },
9833 { 175133896.95814583, 10.000000000000000, 5.0000000000000000,
9834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9835 { 43564453125.000061, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9836 2.0000000000000000, 0.80000000000000004, 0.0 },
9837 { 446860000000007.00, 10.000000000000000, 5.0000000000000000,
9838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9839};
9840const double toler196 = 2.5000000000000020e-13;
9841
9842// Test data for a=10.000000000000000, b=5.0000000000000000, c=4.0000000000000000.
b4688136
ESR
9843// max(|f - f_GSL|): 0.00039672851562500000 at index 18
9844// max(|f - f_GSL| / |f_GSL|): 1.6882064494680641e-15
9845// mean(f - f_GSL): 2.0884382210121993e-05
9846// variance(f - f_GSL): 8.2836958019297269e-09
9847// stddev(f - f_GSL): 9.1014810893226203e-05
2be75957
ESR
9848const testcase_hyperg<double>
9849data197[19] =
9850{
9851 { -0.00030045430691814646, 10.000000000000000, 5.0000000000000000,
b4688136 9852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9853 { -0.00031119487747322054, 10.000000000000000, 5.0000000000000000,
b4688136 9854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9855 { -0.00014589213141656318, 10.000000000000000, 5.0000000000000000,
b4688136 9856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9857 { 0.00056843418860824636, 10.000000000000000, 5.0000000000000000,
b4688136 9858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9859 { 0.0028902549859721747, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9860 4.0000000000000000, -0.50000000000000000, 0.0 },
9861 { 0.0098776037238877245, 10.000000000000000, 5.0000000000000000,
9862 4.0000000000000000, -0.39999999999999991, 0.0 },
9863 { 0.030689217428863859, 10.000000000000000, 5.0000000000000000,
9864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9865 { 0.094211590019076558, 10.000000000000000, 5.0000000000000000,
b4688136 9866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9867 { 0.29791981455918370, 10.000000000000000, 5.0000000000000000,
b4688136 9868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9869 { 1.0000000000000000, 10.000000000000000, 5.0000000000000000,
b4688136 9870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9871 { 3.6646308771236793, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9872 4.0000000000000000, 0.10000000000000009, 0.0 },
9873 { 15.133991837501567, 10.000000000000000, 5.0000000000000000,
9874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9875 { 73.331330046144089, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9876 4.0000000000000000, 0.30000000000000004, 0.0 },
9877 { 441.01791167787303, 10.000000000000000, 5.0000000000000000,
9878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9879 { 3583.9999999999991, 10.000000000000000, 5.0000000000000000,
b4688136 9880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9881 { 45299.530029296984, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9882 4.0000000000000000, 0.60000000000000009, 0.0 },
9883 { 1157231.0002427436, 10.000000000000000, 5.0000000000000000,
9884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9885 { 107421875.00000016, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9886 4.0000000000000000, 0.80000000000000004, 0.0 },
9887 { 235000000000.00293, 10.000000000000000, 5.0000000000000000,
9888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9889};
9890const double toler197 = 2.5000000000000020e-13;
9891
9892// Test data for a=10.000000000000000, b=5.0000000000000000, c=6.0000000000000000.
b4688136
ESR
9893// max(|f - f_GSL|): 9.5367431640625000e-07 at index 18
9894// max(|f - f_GSL| / |f_GSL|): 1.6314276114917587e-15
9895// mean(f - f_GSL): 5.0242811922592076e-08
9896// variance(f - f_GSL): 4.7862904884501567e-14
9897// stddev(f - f_GSL): 2.1877592391417655e-07
2be75957
ESR
9898const testcase_hyperg<double>
9899data198[19] =
9900{
9901 { 0.0058530497315413248, 10.000000000000000, 5.0000000000000000,
b4688136 9902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9903 { 0.0088526869356855397, 10.000000000000000, 5.0000000000000000,
b4688136 9904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9905 { 0.013770987983442959, 10.000000000000000, 5.0000000000000000,
b4688136 9906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9907 { 0.022108932690960776, 10.000000000000000, 5.0000000000000000,
b4688136 9908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9909 { 0.036786236450921550, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9910 6.0000000000000000, -0.50000000000000000, 0.0 },
9911 { 0.063750669040426408, 10.000000000000000, 5.0000000000000000,
9912 6.0000000000000000, -0.39999999999999991, 0.0 },
9913 { 0.11577228680714466, 10.000000000000000, 5.0000000000000000,
9914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9915 { 0.22197573416125760, 10.000000000000000, 5.0000000000000000,
b4688136 9916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9917 { 0.45361312968415324, 10.000000000000000, 5.0000000000000000,
b4688136 9918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9919 { 1.0000000000000000, 10.000000000000000, 5.0000000000000000,
b4688136 9920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9921 { 2.4162889363082747, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9922 6.0000000000000000, 0.10000000000000009, 0.0 },
9923 { 6.5381564791240541, 10.000000000000000, 5.0000000000000000,
9924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9925 { 20.415771011498428, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9926 6.0000000000000000, 0.30000000000000004, 0.0 },
9927 { 76.870682056629448, 10.000000000000000, 5.0000000000000000,
9928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9929 { 373.58730158730162, 10.000000000000000, 5.0000000000000000,
b4688136 9930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9931 { 2626.2555803571477, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9932 6.0000000000000000, 0.60000000000000009, 0.0 },
9933 { 33060.960671081237, 10.000000000000000, 5.0000000000000000,
9934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9935 { 1203521.8253968258, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9936 6.0000000000000000, 0.80000000000000004, 0.0 },
9937 { 584564285.71428990, 10.000000000000000, 5.0000000000000000,
9938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9939};
9940const double toler198 = 2.5000000000000020e-13;
9941
9942// Test data for a=10.000000000000000, b=5.0000000000000000, c=8.0000000000000000.
b4688136
ESR
9943// max(|f - f_GSL|): 7.4505805969238281e-09 at index 18
9944// max(|f - f_GSL| / |f_GSL|): 1.6196914341138665e-15
9945// mean(f - f_GSL): 3.9331532183208954e-10
9946// variance(f - f_GSL): 2.9206631793126476e-18
9947// stddev(f - f_GSL): 1.7089947862157589e-09
2be75957
ESR
9948const testcase_hyperg<double>
9949data199[19] =
9950{
9951 { 0.020248990107069573, 10.000000000000000, 5.0000000000000000,
b4688136 9952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 9953 { 0.027876687750502366, 10.000000000000000, 5.0000000000000000,
b4688136 9954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 9955 { 0.039154648888447607, 10.000000000000000, 5.0000000000000000,
b4688136 9956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 9957 { 0.056251883506774715, 10.000000000000000, 5.0000000000000000,
b4688136 9958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 9959 { 0.082914189910074473, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9960 8.0000000000000000, -0.50000000000000000, 0.0 },
9961 { 0.12585357817786472, 10.000000000000000, 5.0000000000000000,
9962 8.0000000000000000, -0.39999999999999991, 0.0 },
9963 { 0.19761423206224940, 10.000000000000000, 5.0000000000000000,
9964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 9965 { 0.32280443863359237, 10.000000000000000, 5.0000000000000000,
b4688136 9966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 9967 { 0.55250024062839420, 10.000000000000000, 5.0000000000000000,
b4688136 9968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 9969 { 1.0000000000000000, 10.000000000000000, 5.0000000000000000,
b4688136 9970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 9971 { 1.9374297986599267, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9972 8.0000000000000000, 0.10000000000000009, 0.0 },
9973 { 4.0849049886067759, 10.000000000000000, 5.0000000000000000,
9974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 9975 { 9.5926988633258983, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9976 8.0000000000000000, 0.30000000000000004, 0.0 },
9977 { 25.958314281359588, 10.000000000000000, 5.0000000000000000,
9978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 9979 { 85.333333333333300, 10.000000000000000, 5.0000000000000000,
b4688136 9980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 9981 { 372.31445312500028, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9982 8.0000000000000000, 0.60000000000000009, 0.0 },
9983 { 2545.3436976070780, 10.000000000000000, 5.0000000000000000,
9984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 9985 { 39583.333333333343, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
9986 8.0000000000000000, 0.80000000000000004, 0.0 },
9987 { 4600000.0000000261, 10.000000000000000, 5.0000000000000000,
9988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
9989};
9990const double toler199 = 2.5000000000000020e-13;
9991
9992// Test data for a=10.000000000000000, b=5.0000000000000000, c=10.000000000000000.
b4688136
ESR
9993// max(|f - f_GSL|): 1.0186340659856796e-10 at index 18
9994// max(|f - f_GSL| / |f_GSL|): 1.1641532182693482e-15
9995// mean(f - f_GSL): 5.5487040400966458e-12
9996// variance(f - f_GSL): 5.4399356990620132e-22
9997// stddev(f - f_GSL): 2.3323669734975269e-11
2be75957
ESR
9998const testcase_hyperg<double>
9999data200[19] =
10000{
b4688136
ESR
10001 { 0.040386107340619273, 10.000000000000000, 5.0000000000000000,
10002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 10003 { 0.052922149401344633, 10.000000000000000, 5.0000000000000000,
b4688136 10004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 10005 { 0.070429627772374270, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
10006 10.000000000000000, -0.69999999999999996, 0.0 },
10007 { 0.095367431640624986, 10.000000000000000, 5.0000000000000000,
10008 10.000000000000000, -0.59999999999999998, 0.0 },
10009 { 0.13168724279835389, 10.000000000000000, 5.0000000000000000,
10010 10.000000000000000, -0.50000000000000000, 0.0 },
10011 { 0.18593443208187072, 10.000000000000000, 5.0000000000000000,
10012 10.000000000000000, -0.39999999999999991, 0.0 },
10013 { 0.26932907434290460, 10.000000000000000, 5.0000000000000000,
10014 10.000000000000000, -0.29999999999999993, 0.0 },
10015 { 0.40187757201646102, 10.000000000000000, 5.0000000000000000,
10016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 10017 { 0.62092132305915493, 10.000000000000000, 5.0000000000000000,
b4688136 10018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 10019 { 1.0000000000000000, 10.000000000000000, 5.0000000000000000,
b4688136 10020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 10021 { 1.6935087808430296, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
10022 10.000000000000000, 0.10000000000000009, 0.0 },
10023 { 3.0517578125000036, 10.000000000000000, 5.0000000000000000,
10024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 10025 { 5.9499018266198629, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
10026 10.000000000000000, 0.30000000000000004, 0.0 },
10027 { 12.860082304526767, 10.000000000000000, 5.0000000000000000,
10028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 10029 { 32.000000000000000, 10.000000000000000, 5.0000000000000000,
b4688136 10030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 10031 { 97.656250000000114, 10.000000000000000, 5.0000000000000000,
b4688136
ESR
10032 10.000000000000000, 0.60000000000000009, 0.0 },
10033 { 411.52263374485722, 10.000000000000000, 5.0000000000000000,
10034 10.000000000000000, 0.70000000000000018, 0.0 },
10035 { 3124.9999999999995, 10.000000000000000, 5.0000000000000000,
10036 10.000000000000000, 0.80000000000000004, 0.0 },
10037 { 100000.00000000055, 10.000000000000000, 5.0000000000000000,
10038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10039};
10040const double toler200 = 2.5000000000000020e-13;
10041
10042// Test data for a=10.000000000000000, b=10.000000000000000, c=2.0000000000000000.
b4688136
ESR
10043// max(|f - f_GSL|): 3407872.0000000000 at index 18
10044// max(|f - f_GSL| / |f_GSL|): 1.8642431677285562e-15
10045// mean(f - f_GSL): 179361.84215676156
10046// variance(f - f_GSL): 611241601687.40417
10047// stddev(f - f_GSL): 781819.41756866348
2be75957
ESR
10048const testcase_hyperg<double>
10049data201[19] =
10050{
10051 { 2.3388730079478156e-05, 10.000000000000000, 10.000000000000000,
b4688136 10052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10053 { -2.3204970759764180e-05, 10.000000000000000, 10.000000000000000,
b4688136 10054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10055 { -0.00016219730505521665, 10.000000000000000, 10.000000000000000,
b4688136 10056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10057 { -0.00044366962360922366, 10.000000000000000, 10.000000000000000,
b4688136 10058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10059 { -0.00071863577205453773, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10060 2.0000000000000000, -0.50000000000000000, 0.0 },
10061 { 4.4378596544482927e-05, 10.000000000000000, 10.000000000000000,
10062 2.0000000000000000, -0.39999999999999991, 0.0 },
10063 { 0.0044446568070621991, 10.000000000000000, 10.000000000000000,
10064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10065 { 0.0071045155183571615, 10.000000000000000, 10.000000000000000,
b4688136 10066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10067 { -0.049961558159890306, 10.000000000000000, 10.000000000000000,
b4688136 10068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10069 { 1.0000000000000000, 10.000000000000000, 10.000000000000000,
b4688136 10070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10071 { 51.305449964107403, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10072 2.0000000000000000, 0.10000000000000009, 0.0 },
10073 { 1435.9545414461415, 10.000000000000000, 10.000000000000000,
10074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10075 { 39657.913058984115, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10076 2.0000000000000000, 0.30000000000000004, 0.0 },
10077 { 1346016.4468570619, 10.000000000000000, 10.000000000000000,
10078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10079 { 68086556.444444403, 10.000000000000000, 10.000000000000000,
b4688136 10080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10081 { 6646235808.7301531, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10082 2.0000000000000000, 0.60000000000000009, 0.0 },
10083 { 1954852335479.9958, 10.000000000000000, 10.000000000000000,
10084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10085 { 4573796225043418.0, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10086 2.0000000000000000, 0.80000000000000004, 0.0 },
10087 { 1.8280190368900440e+21, 10.000000000000000, 10.000000000000000,
10088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10089};
10090const double toler201 = 2.5000000000000020e-13;
10091
10092// Test data for a=10.000000000000000, b=10.000000000000000, c=4.0000000000000000.
b4688136
ESR
10093// max(|f - f_GSL|): 832.00000000000000 at index 18
10094// max(|f - f_GSL| / |f_GSL|): 1.7889121078953330e-15
10095// mean(f - f_GSL): 43.789679427686345
10096// variance(f - f_GSL): 36432.823085424323
10097// stddev(f - f_GSL): 190.87384075725075
2be75957
ESR
10098const testcase_hyperg<double>
10099data202[19] =
10100{
10101 { 1.3504013648914116e-05, 10.000000000000000, 10.000000000000000,
b4688136 10102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10103 { 3.1753432098506483e-05, 10.000000000000000, 10.000000000000000,
b4688136 10104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10105 { 6.2032098207654132e-05, 10.000000000000000, 10.000000000000000,
b4688136 10106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10107 { 8.8747213942816339e-05, 10.000000000000000, 10.000000000000000,
b4688136 10108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10109 { 1.0478094697613739e-05, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10110 4.0000000000000000, -0.50000000000000000, 0.0 },
10111 { -0.00055998751006022351, 10.000000000000000, 10.000000000000000,
10112 4.0000000000000000, -0.39999999999999991, 0.0 },
10113 { -0.0024718654966575221, 10.000000000000000, 10.000000000000000,
10114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10115 { -0.0027000264053620069, 10.000000000000000, 10.000000000000000,
b4688136 10116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10117 { 0.066515394406810743, 10.000000000000000, 10.000000000000000,
b4688136 10118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10119 { 1.0000000000000000, 10.000000000000000, 10.000000000000000,
b4688136 10120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10121 { 11.579200866389527, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10122 4.0000000000000000, 0.10000000000000009, 0.0 },
10123 { 137.50750548795330, 10.000000000000000, 10.000000000000000,
10124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10125 { 1901.3196072993419, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10126 4.0000000000000000, 0.30000000000000004, 0.0 },
10127 { 34210.659507138007, 10.000000000000000, 10.000000000000000,
10128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10129 { 920588.19047619053, 10.000000000000000, 10.000000000000000,
b4688136 10130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10131 { 45876220.933028772, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10132 4.0000000000000000, 0.60000000000000009, 0.0 },
10133 { 6234608574.0964050, 10.000000000000000, 10.000000000000000,
10134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10135 { 5445391090029.7783, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10136 4.0000000000000000, 0.80000000000000004, 0.0 },
10137 { 4.6508713107143840e+17, 10.000000000000000, 10.000000000000000,
10138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10139};
10140const double toler202 = 2.5000000000000020e-13;
10141
10142// Test data for a=10.000000000000000, b=10.000000000000000, c=6.0000000000000000.
b4688136
ESR
10143// max(|f - f_GSL|): 0.93750000000000000 at index 18
10144// max(|f - f_GSL| / |f_GSL|): 1.8742262123208804e-15
10145// mean(f - f_GSL): 0.049343110712039846
10146// variance(f - f_GSL): 0.046258118950011272
10147// stddev(f - f_GSL): 0.21507700702309224
2be75957
ESR
10148const testcase_hyperg<double>
10149data203[19] =
10150{
10151 { -2.6846726901509877e-05, 10.000000000000000, 10.000000000000000,
b4688136 10152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10153 { -4.7817237144298244e-05, 10.000000000000000, 10.000000000000000,
b4688136 10154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10155 { -7.2908121941826117e-05, 10.000000000000000, 10.000000000000000,
b4688136 10156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10157 { -6.0427853197636777e-05, 10.000000000000000, 10.000000000000000,
b4688136 10158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10159 { 0.00020559720946644960, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10160 6.0000000000000000, -0.50000000000000000, 0.0 },
10161 { 0.0017056910683365867, 10.000000000000000, 10.000000000000000,
10162 6.0000000000000000, -0.39999999999999991, 0.0 },
10163 { 0.0088037230970524228, 10.000000000000000, 10.000000000000000,
10164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10165 { 0.041510819735141528, 10.000000000000000, 10.000000000000000,
b4688136 10166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10167 { 0.19754880805677244, 10.000000000000000, 10.000000000000000,
b4688136 10168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10169 { 1.0000000000000000, 10.000000000000000, 10.000000000000000,
b4688136 10170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10171 { 5.6130947302779246, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10172 6.0000000000000000, 0.10000000000000009, 0.0 },
10173 { 36.475357196722619, 10.000000000000000, 10.000000000000000,
10174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10175 { 289.29483001400672, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10176 6.0000000000000000, 0.30000000000000004, 0.0 },
10177 { 3010.8676549536667, 10.000000000000000, 10.000000000000000,
10178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10179 { 45844.317460317419, 10.000000000000000, 10.000000000000000,
b4688136 10180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10181 { 1221852.6431492427, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10182 6.0000000000000000, 0.60000000000000009, 0.0 },
10183 { 79585968.928969592, 10.000000000000000, 10.000000000000000,
10184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10185 { 26733475942.460335, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10186 6.0000000000000000, 0.80000000000000004, 0.0 },
10187 { 500206428571437.38, 10.000000000000000, 10.000000000000000,
10188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10189};
10190const double toler203 = 2.5000000000000020e-13;
10191
10192// Test data for a=10.000000000000000, b=10.000000000000000, c=8.0000000000000000.
b4688136
ESR
10193// max(|f - f_GSL|): 0.0024414062500000000 at index 18
10194// max(|f - f_GSL| / |f_GSL|): 1.6580008488964090e-15
10195// mean(f - f_GSL): 0.00012850766473236850
10196// variance(f - f_GSL): 3.1370523903989881e-07
10197// stddev(f - f_GSL): 0.00056009395554665537
2be75957
ESR
10198const testcase_hyperg<double>
10199data204[19] =
10200{
10201 { 0.00025866179054283083, 10.000000000000000, 10.000000000000000,
b4688136 10202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10203 { 0.00053402577739226583, 10.000000000000000, 10.000000000000000,
b4688136 10204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10205 { 0.0011390075227239291, 10.000000000000000, 10.000000000000000,
b4688136 10206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10207 { 0.0025224267119482941, 10.000000000000000, 10.000000000000000,
b4688136 10208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10209 { 0.0058340332124251458, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10210 8.0000000000000000, -0.50000000000000000, 0.0 },
10211 { 0.014189256143045212, 10.000000000000000, 10.000000000000000,
10212 8.0000000000000000, -0.39999999999999991, 0.0 },
10213 { 0.036590990011337789, 10.000000000000000, 10.000000000000000,
10214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10215 { 0.10106560781146991, 10.000000000000000, 10.000000000000000,
b4688136 10216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10217 { 0.30278778538531392, 10.000000000000000, 10.000000000000000,
b4688136 10218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10219 { 1.0000000000000000, 10.000000000000000, 10.000000000000000,
b4688136 10220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10221 { 3.7187249990350599, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10222 8.0000000000000000, 0.10000000000000009, 0.0 },
10223 { 16.023275545901761, 10.000000000000000, 10.000000000000000,
10224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10225 { 83.265377219882822, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10226 8.0000000000000000, 0.30000000000000004, 0.0 },
10227 { 553.31413918844225, 10.000000000000000, 10.000000000000000,
10228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10229 { 5148.4444444444416, 10.000000000000000, 10.000000000000000,
b4688136 10230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10231 { 78082.084655761908, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10232 8.0000000000000000, 0.60000000000000009, 0.0 },
10233 { 2565874.8781353347, 10.000000000000000, 10.000000000000000,
10234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10235 { 346137152.77777809, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10236 8.0000000000000000, 0.80000000000000004, 0.0 },
10237 { 1472500000000.0227, 10.000000000000000, 10.000000000000000,
10238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10239};
10240const double toler204 = 2.5000000000000020e-13;
10241
10242// Test data for a=10.000000000000000, b=10.000000000000000, c=10.000000000000000.
b4688136
ESR
10243// max(|f - f_GSL|): 2.2888183593750000e-05 at index 18
10244// max(|f - f_GSL| / |f_GSL|): 2.4795532226562509e-15
10245// mean(f - f_GSL): 1.2059140510950354e-06
10246// variance(f - f_GSL): 2.7568813079896666e-11
10247// stddev(f - f_GSL): 5.2506012112801583e-06
2be75957
ESR
10248const testcase_hyperg<double>
10249data205[19] =
10250{
10251 { 0.0016310376661280216, 10.000000000000000, 10.000000000000000,
b4688136 10252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 10253 { 0.0028007538972582421, 10.000000000000000, 10.000000000000000,
b4688136 10254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 10255 { 0.0049603324681551939, 10.000000000000000, 10.000000000000000,
b4688136 10256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 10257 { 0.0090949470177292789, 10.000000000000000, 10.000000000000000,
b4688136 10258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 10259 { 0.017341529915832606, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10260 10.000000000000000, -0.50000000000000000, 0.0 },
10261 { 0.034571613033607791, 10.000000000000000, 10.000000000000000,
10262 10.000000000000000, -0.39999999999999991, 0.0 },
10263 { 0.072538150286405839, 10.000000000000000, 10.000000000000000,
10264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 10265 { 0.16150558288984579, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10266 10.000000000000000, -0.19999999999999996, 0.0 },
10267 { 0.38554328942953142, 10.000000000000000, 10.000000000000000,
10268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 10269 { 1.0000000000000000, 10.000000000000000, 10.000000000000000,
b4688136 10270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 10271 { 2.8679719907924444, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10272 10.000000000000000, 0.10000000000000009, 0.0 },
10273 { 9.3132257461548065, 10.000000000000000, 10.000000000000000,
10274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 10275 { 35.401331746414378, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10276 10.000000000000000, 0.30000000000000004, 0.0 },
10277 { 165.38171687920246, 10.000000000000000, 10.000000000000000,
10278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 10279 { 1024.0000000000000, 10.000000000000000, 10.000000000000000,
b4688136
ESR
10280 10.000000000000000, 0.50000000000000000, 0.0 },
10281 { 9536.7431640625218, 10.000000000000000, 10.000000000000000,
10282 10.000000000000000, 0.60000000000000009, 0.0 },
10283 { 169350.87808430390, 10.000000000000000, 10.000000000000000,
10284 10.000000000000000, 0.70000000000000018, 0.0 },
10285 { 9765624.9999999963, 10.000000000000000, 10.000000000000000,
10286 10.000000000000000, 0.80000000000000004, 0.0 },
10287 { 10000000000.000111, 10.000000000000000, 10.000000000000000,
10288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10289};
10290const double toler205 = 2.5000000000000020e-13;
10291
10292// Test data for a=10.000000000000000, b=20.000000000000000, c=2.0000000000000000.
b4688136
ESR
10293// max(|f - f_GSL|): 2.5940733853654057e+18 at index 18
10294// max(|f - f_GSL| / |f_GSL|): 1.8312596334404269e-15
10295// mean(f - f_GSL): 1.3653017829015250e+17
10296// variance(f - f_GSL): 4.1617051640949032e+35
10297// stddev(f - f_GSL): 6.4511279355589466e+17
2be75957
ESR
10298const testcase_hyperg<double>
10299data206[19] =
10300{
10301 { -2.1776535312781759e-07, 10.000000000000000, 20.000000000000000,
b4688136 10302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10303 { -2.9128833151630439e-06, 10.000000000000000, 20.000000000000000,
b4688136 10304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10305 { -9.4755553429932710e-06, 10.000000000000000, 20.000000000000000,
b4688136 10306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10307 { -1.2844297353852837e-05, 10.000000000000000, 20.000000000000000,
b4688136 10308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10309 { 3.6576965483549205e-05, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10310 2.0000000000000000, -0.50000000000000000, 0.0 },
10311 { 0.00020847453890703339, 10.000000000000000, 20.000000000000000,
10312 2.0000000000000000, -0.39999999999999991, 0.0 },
10313 { -0.00022868510398194936, 10.000000000000000, 20.000000000000000,
10314 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10315 { -0.0021855513841943421, 10.000000000000000, 20.000000000000000,
b4688136 10316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10317 { 0.014662111759334568, 10.000000000000000, 20.000000000000000,
b4688136 10318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10319 { 1.0000000000000000, 10.000000000000000, 20.000000000000000,
b4688136 10320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10321 { 746.44776348798098, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10322 2.0000000000000000, 0.10000000000000009, 0.0 },
10323 { 136080.48445225772, 10.000000000000000, 20.000000000000000,
10324 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10325 { 23094279.597826406, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10326 2.0000000000000000, 0.30000000000000004, 0.0 },
10327 { 5315913395.5545979, 10.000000000000000, 20.000000000000000,
10328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10329 { 2261935718399.9990, 10.000000000000000, 20.000000000000000,
b4688136 10330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10331 { 2669150854828235.0, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10332 2.0000000000000000, 0.60000000000000009, 0.0 },
10333 { 1.7499363099366351e+19, 10.000000000000000, 20.000000000000000,
10334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10335 { 2.8881518494606140e+24, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10336 2.0000000000000000, 0.80000000000000004, 0.0 },
10337 { 1.4165513933662505e+33, 10.000000000000000, 20.000000000000000,
10338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10339};
10340const double toler206 = 2.5000000000000020e-13;
10341
10342// Test data for a=10.000000000000000, b=20.000000000000000, c=4.0000000000000000.
b4688136
ESR
10343// max(|f - f_GSL|): 299067162755072.00 at index 18
10344// max(|f - f_GSL| / |f_GSL|): 2.1129345912023457e-15
10345// mean(f - f_GSL): 15740377042297.895
10346// variance(f - f_GSL): 4.7074334083472640e+27
10347// stddev(f - f_GSL): 68610738287437.656
2be75957
ESR
10348const testcase_hyperg<double>
10349data207[19] =
10350{
10351 { 1.7149006966334498e-07, 10.000000000000000, 20.000000000000000,
b4688136 10352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10353 { 3.2399324906563845e-07, 10.000000000000000, 20.000000000000000,
b4688136 10354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10355 { 1.6015317699713284e-07, 10.000000000000000, 20.000000000000000,
b4688136 10356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10357 { -2.0500917201273337e-06, 10.000000000000000, 20.000000000000000,
b4688136 10358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10359 { -1.0175546788592665e-05, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10360 4.0000000000000000, -0.50000000000000000, 0.0 },
10361 { -1.1720101988188077e-05, 10.000000000000000, 20.000000000000000,
10362 4.0000000000000000, -0.39999999999999991, 0.0 },
10363 { 0.00014199637113982382, 10.000000000000000, 20.000000000000000,
10364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10365 { 0.00021263363640641769, 10.000000000000000, 20.000000000000000,
b4688136 10366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10367 { -0.0072649256698439626, 10.000000000000000, 20.000000000000000,
b4688136 10368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10369 { 1.0000000000000000, 10.000000000000000, 20.000000000000000,
b4688136 10370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10371 { 90.430293772869618, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10372 4.0000000000000000, 0.10000000000000009, 0.0 },
10373 { 6248.1455940292872, 10.000000000000000, 20.000000000000000,
10374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10375 { 501143.39852548984, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10376 4.0000000000000000, 0.30000000000000004, 0.0 },
10377 { 58852027.356440276, 10.000000000000000, 20.000000000000000,
10378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10379 { 12942923093.333330, 10.000000000000000, 20.000000000000000,
b4688136 10380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10381 { 7618073993853.6592, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10382 4.0000000000000000, 0.60000000000000009, 0.0 },
10383 { 22630251562549772., 10.000000000000000, 20.000000000000000,
10384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10385 { 1.3708372433980356e+21, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10386 4.0000000000000000, 0.80000000000000004, 0.0 },
10387 { 1.4154113620000448e+29, 10.000000000000000, 20.000000000000000,
10388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10389};
10390const double toler207 = 2.5000000000000020e-13;
10391
10392// Test data for a=10.000000000000000, b=20.000000000000000, c=6.0000000000000000.
b4688136
ESR
10393// max(|f - f_GSL|): 103079215104.00000 at index 18
10394// max(|f - f_GSL| / |f_GSL|): 1.8869870511941024e-15
10395// mean(f - f_GSL): 5425221928.4235201
10396// variance(f - f_GSL): 5.5922760890380314e+20
10397// stddev(f - f_GSL): 23647993760.651306
2be75957
ESR
10398const testcase_hyperg<double>
10399data208[19] =
10400{
10401 { -1.6667473284194196e-08, 10.000000000000000, 20.000000000000000,
b4688136 10402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10403 { 8.6214843496406671e-08, 10.000000000000000, 20.000000000000000,
b4688136 10404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10405 { 5.7778331275185146e-07, 10.000000000000000, 20.000000000000000,
b4688136 10406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10407 { 2.1911400502042259e-06, 10.000000000000000, 20.000000000000000,
b4688136 10408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10409 { 4.7440049217199358e-06, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10410 6.0000000000000000, -0.50000000000000000, 0.0 },
10411 { -1.0564233314712615e-05, 10.000000000000000, 20.000000000000000,
10412 6.0000000000000000, -0.39999999999999991, 0.0 },
10413 { -0.00017990026051847404, 10.000000000000000, 20.000000000000000,
10414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10415 { -0.00027618146288724629, 10.000000000000000, 20.000000000000000,
b4688136 10416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10417 { 0.030606019577723666, 10.000000000000000, 20.000000000000000,
b4688136 10418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10419 { 1.0000000000000000, 10.000000000000000, 20.000000000000000,
b4688136 10420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10421 { 27.832854169493341, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10422 6.0000000000000000, 0.10000000000000009, 0.0 },
10423 { 874.00624088575910, 10.000000000000000, 20.000000000000000,
10424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10425 { 36049.199340831554, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10426 6.0000000000000000, 0.30000000000000004, 0.0 },
10427 { 2270967.7298625209, 10.000000000000000, 20.000000000000000,
10428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10429 { 266979100.44444439, 10.000000000000000, 20.000000000000000,
b4688136 10430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10431 { 80311224337.493027, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10432 6.0000000000000000, 0.60000000000000009, 0.0 },
10433 { 110111693103801.77, 10.000000000000000, 20.000000000000000,
10434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10435 { 2.4838871426052618e+18, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10436 6.0000000000000000, 0.80000000000000004, 0.0 },
10437 { 5.4626350000001618e+25, 10.000000000000000, 20.000000000000000,
10438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10439};
10440const double toler208 = 2.5000000000000020e-13;
10441
10442// Test data for a=10.000000000000000, b=20.000000000000000, c=8.0000000000000000.
b4688136
ESR
10443// max(|f - f_GSL|): 100663296.00000000 at index 18
10444// max(|f - f_GSL| / |f_GSL|): 1.9414329026036117e-15
10445// mean(f - f_GSL): 5298068.6316046715
10446// variance(f - f_GSL): 533321003794731.12
10447// stddev(f - f_GSL): 23093743.823701065
2be75957
ESR
10448const testcase_hyperg<double>
10449data209[19] =
10450{
10451 { -1.5843795889906876e-07, 10.000000000000000, 20.000000000000000,
b4688136 10452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10453 { -5.4877276002864784e-07, 10.000000000000000, 20.000000000000000,
b4688136 10454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10455 { -1.7169507967699695e-06, 10.000000000000000, 20.000000000000000,
b4688136 10456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10457 { -4.5236439749819329e-06, 10.000000000000000, 20.000000000000000,
b4688136 10458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10459 { -5.5690492560381956e-06, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10460 8.0000000000000000, -0.50000000000000000, 0.0 },
10461 { 5.6914115606653561e-05, 10.000000000000000, 20.000000000000000,
10462 8.0000000000000000, -0.39999999999999991, 0.0 },
10463 { 0.00082507252097489250, 10.000000000000000, 20.000000000000000,
10464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10465 { 0.0085739249288230429, 10.000000000000000, 20.000000000000000,
b4688136 10466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10467 { 0.088244357683754687, 10.000000000000000, 20.000000000000000,
b4688136 10468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10469 { 1.0000000000000000, 10.000000000000000, 20.000000000000000,
b4688136 10470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10471 { 13.387208440156897, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10472 8.0000000000000000, 0.10000000000000009, 0.0 },
10473 { 226.77895441155252, 10.000000000000000, 20.000000000000000,
10474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10475 { 5281.5716482686785, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10476 8.0000000000000000, 0.30000000000000004, 0.0 },
10477 { 189431.77762850633, 10.000000000000000, 20.000000000000000,
10478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10479 { 12408149.333333332, 10.000000000000000, 20.000000000000000,
b4688136 10480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10481 { 1966782292.5839682, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10482 8.0000000000000000, 0.60000000000000009, 0.0 },
10483 { 1274123112205.7700, 10.000000000000000, 20.000000000000000,
10484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10485 { 10903676350911508., 10.000000000000000, 20.000000000000000,
b4688136
ESR
10486 8.0000000000000000, 0.80000000000000004, 0.0 },
10487 { 5.1850000000001411e+22, 10.000000000000000, 20.000000000000000,
10488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10489};
10490const double toler209 = 2.5000000000000020e-13;
10491
10492// Test data for a=10.000000000000000, b=20.000000000000000, c=10.000000000000000.
b4688136 10493// max(|f - f_GSL|): 475136.00000000000 at index 18
2be75957 10494// max(|f - f_GSL| / |f_GSL|): 5.4067200000000052e-15
b4688136
ESR
10495// mean(f - f_GSL): 25007.185032091642
10496// variance(f - f_GSL): 11881799540.814577
10497// stddev(f - f_GSL): 109003.66755671379
2be75957
ESR
10498const testcase_hyperg<double>
10499data210[19] =
10500{
10501 { 2.6602838683283435e-06, 10.000000000000000, 20.000000000000000,
b4688136 10502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 10503 { 7.8442223930072316e-06, 10.000000000000000, 20.000000000000000,
b4688136 10504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 10505 { 2.4604898194634598e-05, 10.000000000000000, 20.000000000000000,
b4688136 10506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 10507 { 8.2718061255302686e-05, 10.000000000000000, 20.000000000000000,
b4688136 10508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 10509 { 0.00030072865982171723, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10510 10.000000000000000, -0.50000000000000000, 0.0 },
10511 { 0.0011951964277455204, 10.000000000000000, 20.000000000000000,
10512 10.000000000000000, -0.39999999999999991, 0.0 },
10513 { 0.0052617832469731996, 10.000000000000000, 20.000000000000000,
10514 10.000000000000000, -0.29999999999999993, 0.0 },
10515 { 0.026084053304588850, 10.000000000000000, 20.000000000000000,
10516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 10517 { 0.14864362802414346, 10.000000000000000, 20.000000000000000,
b4688136 10518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 10519 { 1.0000000000000000, 10.000000000000000, 20.000000000000000,
b4688136 10520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 10521 { 8.2252633399699757, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10522 10.000000000000000, 0.10000000000000009, 0.0 },
10523 { 86.736173798840738, 10.000000000000000, 20.000000000000000,
10524 10.000000000000000, 0.20000000000000018, 0.0 },
10525 { 1253.2542894196868, 10.000000000000000, 20.000000000000000,
10526 10.000000000000000, 0.30000000000000004, 0.0 },
10527 { 27351.112277912678, 10.000000000000000, 20.000000000000000,
10528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 10529 { 1048576.0000000000, 10.000000000000000, 20.000000000000000,
b4688136 10530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 10531 { 90949470.177293226, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10532 10.000000000000000, 0.60000000000000009, 0.0 },
10533 { 28679719907.924767, 10.000000000000000, 20.000000000000000,
10534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 10535 { 95367431640624.906, 10.000000000000000, 20.000000000000000,
b4688136
ESR
10536 10.000000000000000, 0.80000000000000004, 0.0 },
10537 { 1.0000000000000220e+20, 10.000000000000000, 20.000000000000000,
10538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10539};
10540const double toler210 = 5.0000000000000039e-13;
10541
10542// Test data for a=20.000000000000000, b=0.0000000000000000, c=2.0000000000000000.
b4688136 10543// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 10544// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
10545// mean(f - f_GSL): 0.0000000000000000
10546// variance(f - f_GSL): 0.0000000000000000
10547// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
10548const testcase_hyperg<double>
10549data211[19] =
10550{
10551 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10553 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10555 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10557 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10559 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10560 2.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 10561 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10562 2.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 10563 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10565 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10567 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10569 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10571 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10572 2.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 10573 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10575 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10576 2.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 10577 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10579 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10581 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10582 2.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 10583 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10585 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10586 2.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 10587 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10589};
10590const double toler211 = 2.5000000000000020e-13;
10591
10592// Test data for a=20.000000000000000, b=0.0000000000000000, c=4.0000000000000000.
b4688136 10593// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 10594// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
10595// mean(f - f_GSL): 0.0000000000000000
10596// variance(f - f_GSL): 0.0000000000000000
10597// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
10598const testcase_hyperg<double>
10599data212[19] =
10600{
10601 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10603 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10605 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10607 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10609 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10610 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 10611 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10612 4.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 10613 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10615 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10617 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10619 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10621 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10622 4.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 10623 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10625 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10626 4.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 10627 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10629 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10631 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10632 4.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 10633 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10635 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10636 4.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 10637 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10639};
10640const double toler212 = 2.5000000000000020e-13;
10641
10642// Test data for a=20.000000000000000, b=0.0000000000000000, c=6.0000000000000000.
b4688136 10643// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 10644// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
10645// mean(f - f_GSL): 0.0000000000000000
10646// variance(f - f_GSL): 0.0000000000000000
10647// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
10648const testcase_hyperg<double>
10649data213[19] =
10650{
10651 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10653 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10655 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10657 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10659 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10660 6.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 10661 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10662 6.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 10663 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10665 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10667 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10669 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10671 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10672 6.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 10673 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10675 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10676 6.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 10677 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10679 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10681 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10682 6.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 10683 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10685 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10686 6.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 10687 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10689};
10690const double toler213 = 2.5000000000000020e-13;
10691
10692// Test data for a=20.000000000000000, b=0.0000000000000000, c=8.0000000000000000.
b4688136 10693// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 10694// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
10695// mean(f - f_GSL): 0.0000000000000000
10696// variance(f - f_GSL): 0.0000000000000000
10697// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
10698const testcase_hyperg<double>
10699data214[19] =
10700{
10701 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10703 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10705 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10707 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10709 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10710 8.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 10711 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10712 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 10713 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10715 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10717 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10719 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10721 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10722 8.0000000000000000, 0.10000000000000009, 0.0 },
2be75957 10723 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10725 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10726 8.0000000000000000, 0.30000000000000004, 0.0 },
2be75957 10727 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10729 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10731 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10732 8.0000000000000000, 0.60000000000000009, 0.0 },
2be75957 10733 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10735 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10736 8.0000000000000000, 0.80000000000000004, 0.0 },
2be75957 10737 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10739};
10740const double toler214 = 2.5000000000000020e-13;
10741
10742// Test data for a=20.000000000000000, b=0.0000000000000000, c=10.000000000000000.
b4688136 10743// max(|f - f_GSL|): 0.0000000000000000 at index 0
2be75957 10744// max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
b4688136
ESR
10745// mean(f - f_GSL): 0.0000000000000000
10746// variance(f - f_GSL): 0.0000000000000000
10747// stddev(f - f_GSL): 0.0000000000000000
2be75957
ESR
10748const testcase_hyperg<double>
10749data215[19] =
10750{
10751 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 10753 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 10755 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 10757 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 10759 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10760 10.000000000000000, -0.50000000000000000, 0.0 },
2be75957 10761 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10762 10.000000000000000, -0.39999999999999991, 0.0 },
2be75957 10763 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 10765 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 10767 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 10769 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 10771 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10772 10.000000000000000, 0.10000000000000009, 0.0 },
2be75957 10773 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 10775 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10776 10.000000000000000, 0.30000000000000004, 0.0 },
2be75957 10777 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 10779 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 10781 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10782 10.000000000000000, 0.60000000000000009, 0.0 },
2be75957 10783 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 10785 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10786 10.000000000000000, 0.80000000000000004, 0.0 },
2be75957 10787 { 1.0000000000000000, 20.000000000000000, 0.0000000000000000,
b4688136 10788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10789};
10790const double toler215 = 2.5000000000000020e-13;
10791
10792// Test data for a=20.000000000000000, b=0.50000000000000000, c=2.0000000000000000.
b4688136
ESR
10793// max(|f - f_GSL|): 48.000000000000000 at index 18
10794// max(|f - f_GSL| / |f_GSL|): 1.8556481344874416e-15
10795// mean(f - f_GSL): 2.5263190030329112
10796// variance(f - f_GSL): 121.26314075575490
10797// stddev(f - f_GSL): 11.011954447588080
2be75957
ESR
10798const testcase_hyperg<double>
10799data216[19] =
10800{
10801 { 0.26690449940521549, 20.000000000000000, 0.50000000000000000,
b4688136 10802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10803 { 0.28252302866181833, 20.000000000000000, 0.50000000000000000,
b4688136 10804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10805 { 0.30123616141153836, 20.000000000000000, 0.50000000000000000,
b4688136 10806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10807 { 0.32421384687602633, 20.000000000000000, 0.50000000000000000,
b4688136 10808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10809 { 0.35334630811776774, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10810 2.0000000000000000, -0.50000000000000000, 0.0 },
10811 { 0.39191793127466995, 20.000000000000000, 0.50000000000000000,
10812 2.0000000000000000, -0.39999999999999991, 0.0 },
10813 { 0.44620488618129212, 20.000000000000000, 0.50000000000000000,
10814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10815 { 0.52980896919265719, 20.000000000000000, 0.50000000000000000,
b4688136 10816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10817 { 0.67754711477562324, 20.000000000000000, 0.50000000000000000,
b4688136 10818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10819 { 1.0000000000000000, 20.000000000000000, 0.50000000000000000,
b4688136 10820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10821 { 1.9567557771780317, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10822 2.0000000000000000, 0.10000000000000009, 0.0 },
10823 { 6.1816042148333272, 20.000000000000000, 0.50000000000000000,
10824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10825 { 35.653088618561227, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10826 2.0000000000000000, 0.30000000000000004, 0.0 },
10827 { 377.51482843180133, 20.000000000000000, 0.50000000000000000,
10828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10829 { 7645.8816551195359, 20.000000000000000, 0.50000000000000000,
b4688136 10830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10831 { 354791.74537980522, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10832 2.0000000000000000, 0.60000000000000009, 0.0 },
10833 { 57009889.966639392, 20.000000000000000, 0.50000000000000000,
10834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10835 { 83771357024.863937, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10836 2.0000000000000000, 0.80000000000000004, 0.0 },
10837 { 25866972896377436., 20.000000000000000, 0.50000000000000000,
10838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10839};
10840const double toler216 = 2.5000000000000020e-13;
10841
10842// Test data for a=20.000000000000000, b=0.50000000000000000, c=4.0000000000000000.
b4688136
ESR
10843// max(|f - f_GSL|): 0.011718750000000000 at index 18
10844// max(|f - f_GSL| / |f_GSL|): 1.7519521419033478e-15
10845// mean(f - f_GSL): 0.00061678102606403001
10846// variance(f - f_GSL): 7.2278413174892008e-06
10847// stddev(f - f_GSL): 0.0026884644906506020
2be75957
ESR
10848const testcase_hyperg<double>
10849data217[19] =
10850{
10851 { 0.40342659436153389, 20.000000000000000, 0.50000000000000000,
b4688136 10852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10853 { 0.42420571192034318, 20.000000000000000, 0.50000000000000000,
b4688136 10854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10855 { 0.44852768286073041, 20.000000000000000, 0.50000000000000000,
b4688136 10856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10857 { 0.47751245808592863, 20.000000000000000, 0.50000000000000000,
b4688136 10858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10859 { 0.51283632632707765, 20.000000000000000, 0.50000000000000000,
b4688136 10860 4.0000000000000000, -0.50000000000000000, 0.0 },
2be75957 10861 { 0.55713468814894329, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10862 4.0000000000000000, -0.39999999999999991, 0.0 },
10863 { 0.61481320817757346, 20.000000000000000, 0.50000000000000000,
10864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10865 { 0.69383483410097213, 20.000000000000000, 0.50000000000000000,
b4688136 10866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10867 { 0.81012002526006044, 20.000000000000000, 0.50000000000000000,
b4688136 10868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10869 { 1.0000000000000000, 20.000000000000000, 0.50000000000000000,
b4688136 10870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10871 { 1.3622225506603911, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10872 4.0000000000000000, 0.10000000000000009, 0.0 },
10873 { 2.2349513086109027, 20.000000000000000, 0.50000000000000000,
10874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10875 { 5.1864917536761723, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10876 4.0000000000000000, 0.30000000000000004, 0.0 },
10877 { 21.020560423779497, 20.000000000000000, 0.50000000000000000,
10878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10879 { 175.19649997100612, 20.000000000000000, 0.50000000000000000,
b4688136 10880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10881 { 3467.1587803688708, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10882 4.0000000000000000, 0.60000000000000009, 0.0 },
10883 { 225003.88683446089, 20.000000000000000, 0.50000000000000000,
10884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10885 { 110837674.65652709, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10886 4.0000000000000000, 0.80000000000000004, 0.0 },
10887 { 6688966964170.9326, 20.000000000000000, 0.50000000000000000,
10888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10889};
10890const double toler217 = 2.5000000000000020e-13;
10891
10892// Test data for a=20.000000000000000, b=0.50000000000000000, c=6.0000000000000000.
b4688136
ESR
10893// max(|f - f_GSL|): 1.4305114746093750e-05 at index 18
10894// max(|f - f_GSL| / |f_GSL|): 1.9261147266353426e-15
10895// mean(f - f_GSL): 7.5292535813082699e-07
10896// variance(f - f_GSL): 1.0770292922645316e-11
10897// stddev(f - f_GSL): 3.2818124447697064e-06
2be75957
ESR
10898const testcase_hyperg<double>
10899data218[19] =
10900{
10901 { 0.48716309885816822, 20.000000000000000, 0.50000000000000000,
b4688136 10902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10903 { 0.50965859152542337, 20.000000000000000, 0.50000000000000000,
b4688136 10904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10905 { 0.53554809210658938, 20.000000000000000, 0.50000000000000000,
b4688136 10906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10907 { 0.56576689207507136, 20.000000000000000, 0.50000000000000000,
b4688136 10908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10909 { 0.60164849637133655, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10910 6.0000000000000000, -0.50000000000000000, 0.0 },
10911 { 0.64516711595404408, 20.000000000000000, 0.50000000000000000,
10912 6.0000000000000000, -0.39999999999999991, 0.0 },
10913 { 0.69938278735493553, 20.000000000000000, 0.50000000000000000,
10914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10915 { 0.76931621518401860, 20.000000000000000, 0.50000000000000000,
b4688136 10916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10917 { 0.86381808725530662, 20.000000000000000, 0.50000000000000000,
b4688136 10918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10919 { 1.0000000000000000, 20.000000000000000, 0.50000000000000000,
b4688136 10920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10921 { 1.2152051956815531, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10922 6.0000000000000000, 0.10000000000000009, 0.0 },
10923 { 1.6052546785425557, 20.000000000000000, 0.50000000000000000,
10924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10925 { 2.4765586046012635, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10926 6.0000000000000000, 0.30000000000000004, 0.0 },
10927 { 5.1564492216997611, 20.000000000000000, 0.50000000000000000,
10928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10929 { 18.446158392136365, 20.000000000000000, 0.50000000000000000,
b4688136 10930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10931 { 150.44577670123971, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10932 6.0000000000000000, 0.60000000000000009, 0.0 },
10933 { 3862.6317400116104, 20.000000000000000, 0.50000000000000000,
10934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10935 { 632428.34833625401, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10936 6.0000000000000000, 0.80000000000000004, 0.0 },
10937 { 7426927663.3810987, 20.000000000000000, 0.50000000000000000,
10938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10939};
10940const double toler218 = 2.5000000000000020e-13;
10941
10942// Test data for a=20.000000000000000, b=0.50000000000000000, c=8.0000000000000000.
b4688136
ESR
10943// max(|f - f_GSL|): 4.0978193283081055e-08 at index 18
10944// max(|f - f_GSL| / |f_GSL|): 1.7692881266931270e-15
10945// mean(f - f_GSL): 2.1571346930926438e-09
10946// variance(f - f_GSL): 8.8377830897836260e-17
10947// stddev(f - f_GSL): 9.4009484041683924e-09
2be75957
ESR
10948const testcase_hyperg<double>
10949data219[19] =
10950{
10951 { 0.54703266209548373, 20.000000000000000, 0.50000000000000000,
b4688136 10952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 10953 { 0.56997321774144960, 20.000000000000000, 0.50000000000000000,
b4688136 10954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 10955 { 0.59603026159654982, 20.000000000000000, 0.50000000000000000,
b4688136 10956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 10957 { 0.62596978851120511, 20.000000000000000, 0.50000000000000000,
b4688136 10958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 10959 { 0.66084565876898915, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10960 8.0000000000000000, -0.50000000000000000, 0.0 },
10961 { 0.70215256667232862, 20.000000000000000, 0.50000000000000000,
10962 8.0000000000000000, -0.39999999999999991, 0.0 },
10963 { 0.75208916592008568, 20.000000000000000, 0.50000000000000000,
10964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 10965 { 0.81403631111658625, 20.000000000000000, 0.50000000000000000,
b4688136 10966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 10967 { 0.89348608489854597, 20.000000000000000, 0.50000000000000000,
b4688136 10968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 10969 { 1.0000000000000000, 20.000000000000000, 0.50000000000000000,
b4688136 10970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 10971 { 1.1517793185139173, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10972 8.0000000000000000, 0.10000000000000009, 0.0 },
10973 { 1.3878110313656606, 20.000000000000000, 0.50000000000000000,
10974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 10975 { 1.8061071794572381, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10976 8.0000000000000000, 0.30000000000000004, 0.0 },
10977 { 2.7148594517859612, 20.000000000000000, 0.50000000000000000,
10978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 10979 { 5.4529435709049361, 20.000000000000000, 0.50000000000000000,
b4688136 10980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 10981 { 19.487310275377109, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10982 8.0000000000000000, 0.60000000000000009, 0.0 },
10983 { 191.69079165937592, 20.000000000000000, 0.50000000000000000,
10984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 10985 { 10218.543981792311, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
10986 8.0000000000000000, 0.80000000000000004, 0.0 },
10987 { 23160836.646584522, 20.000000000000000, 0.50000000000000000,
10988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
10989};
10990const double toler219 = 2.5000000000000020e-13;
10991
10992// Test data for a=20.000000000000000, b=0.50000000000000000, c=10.000000000000000.
b4688136
ESR
10993// max(|f - f_GSL|): 2.9103830456733704e-10 at index 18
10994// max(|f - f_GSL| / |f_GSL|): 1.6694673196526424e-15
10995// mean(f - f_GSL): 1.5333453804912193e-11
10996// variance(f - f_GSL): 4.4575621294589140e-21
10997// stddev(f - f_GSL): 6.6764976817631821e-11
2be75957
ESR
10998const testcase_hyperg<double>
10999data220[19] =
11000{
11001 { 0.59292067298616025, 20.000000000000000, 0.50000000000000000,
b4688136 11002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 11003 { 0.61572496720679892, 20.000000000000000, 0.50000000000000000,
b4688136 11004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 11005 { 0.64135339122875590, 20.000000000000000, 0.50000000000000000,
b4688136 11006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 11007 { 0.67043457419280461, 20.000000000000000, 0.50000000000000000,
b4688136 11008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 11009 { 0.70380956268170969, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
11010 10.000000000000000, -0.50000000000000000, 0.0 },
11011 { 0.74263251901495264, 20.000000000000000, 0.50000000000000000,
11012 10.000000000000000, -0.39999999999999991, 0.0 },
11013 { 0.78853555445528289, 20.000000000000000, 0.50000000000000000,
11014 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 11015 { 0.84391122775673755, 20.000000000000000, 0.50000000000000000,
b4688136 11016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 11017 { 0.91242401018807373, 20.000000000000000, 0.50000000000000000,
b4688136 11018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 11019 { 1.0000000000000000, 20.000000000000000, 0.50000000000000000,
b4688136 11020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 11021 { 1.1169059681274873, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
11022 10.000000000000000, 0.10000000000000009, 0.0 },
11023 { 1.2825928301302669, 20.000000000000000, 0.50000000000000000,
11024 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 11025 { 1.5385937789924939, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
11026 10.000000000000000, 0.30000000000000004, 0.0 },
11027 { 1.9895771187893914, 20.000000000000000, 0.50000000000000000,
11028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 11029 { 2.9707335806970168, 20.000000000000000, 0.50000000000000000,
b4688136 11030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 11031 { 6.0299506157180467, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
11032 10.000000000000000, 0.60000000000000009, 0.0 },
11033 { 24.259090336955669, 20.000000000000000, 0.50000000000000000,
11034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 11035 { 406.27267173257223, 20.000000000000000, 0.50000000000000000,
b4688136
ESR
11036 10.000000000000000, 0.80000000000000004, 0.0 },
11037 { 174330.03997220617, 20.000000000000000, 0.50000000000000000,
11038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11039};
11040const double toler220 = 2.5000000000000020e-13;
11041
11042// Test data for a=20.000000000000000, b=1.0000000000000000, c=2.0000000000000000.
b4688136
ESR
11043// max(|f - f_GSL|): 1024.0000000000000 at index 18
11044// max(|f - f_GSL| / |f_GSL|): 1.7510399999999635e-15
11045// mean(f - f_GSL): 53.894788252704814
11046// variance(f - f_GSL): 55188.204676932175
11047// stddev(f - f_GSL): 234.92169903381034
2be75957
ESR
11048const testcase_hyperg<double>
11049data221[19] =
11050{
11051 { 0.058479236576646311, 20.000000000000000, 1.0000000000000000,
b4688136 11052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11053 { 0.065788544763137821, 20.000000000000000, 1.0000000000000000,
b4688136 11054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11055 { 0.075184824937824482, 20.000000000000000, 1.0000000000000000,
b4688136 11056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11057 { 0.087707688693157121, 20.000000000000000, 1.0000000000000000,
b4688136 11058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11059 { 0.10521567442213345, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11060 2.0000000000000000, -0.50000000000000000, 0.0 },
11061 { 0.13135877960541509, 20.000000000000000, 1.0000000000000000,
11062 2.0000000000000000, -0.39999999999999991, 0.0 },
11063 { 0.17423854066297137, 20.000000000000000, 1.0000000000000000,
11064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11065 { 0.25492082527223520, 20.000000000000000, 1.0000000000000000,
b4688136 11066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11067 { 0.44025895219654843, 20.000000000000000, 1.0000000000000000,
b4688136 11068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11069 { 1.0000000000000000, 20.000000000000000, 1.0000000000000000,
b4688136 11070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11071 { 3.3698615820910360, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11072 2.0000000000000000, 0.10000000000000009, 0.0 },
11073 { 17.997089220808562, 20.000000000000000, 1.0000000000000000,
11074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11075 { 153.73298291118951, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11076 2.0000000000000000, 0.30000000000000004, 0.0 },
11077 { 2159.1667587825768, 20.000000000000000, 1.0000000000000000,
11078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11079 { 55188.105263157879, 20.000000000000000, 1.0000000000000000,
b4688136 11080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11081 { 3191209.3921857267, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11082 2.0000000000000000, 0.60000000000000009, 0.0 },
11083 { 646910975.29153574, 20.000000000000000, 1.0000000000000000,
11084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11085 { 1254834626850.2659, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11086 2.0000000000000000, 0.80000000000000004, 0.0 },
11087 { 5.8479532163743910e+17, 20.000000000000000, 1.0000000000000000,
11088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11089};
11090const double toler221 = 2.5000000000000020e-13;
11091
11092// Test data for a=20.000000000000000, b=1.0000000000000000, c=4.0000000000000000.
b4688136
ESR
11093// max(|f - f_GSL|): 0.21875000000000000 at index 18
11094// max(|f - f_GSL| / |f_GSL|): 1.5452521874999694e-15
11095// mean(f - f_GSL): 0.011513220685868108
11096// variance(f - f_GSL): 0.0025185017633005862
11097// stddev(f - f_GSL): 0.050184676578618956
2be75957
ESR
11098const testcase_hyperg<double>
11099data222[19] =
11100{
11101 { 0.15519511120894958, 20.000000000000000, 1.0000000000000000,
b4688136 11102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11103 { 0.17197165701692893, 20.000000000000000, 1.0000000000000000,
b4688136 11104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11105 { 0.19276847315207329, 20.000000000000000, 1.0000000000000000,
b4688136 11106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11107 { 0.21920107206179093, 20.000000000000000, 1.0000000000000000,
b4688136 11108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11109 { 0.25386158960390576, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11110 4.0000000000000000, -0.50000000000000000, 0.0 },
11111 { 0.30115970686600663, 20.000000000000000, 1.0000000000000000,
11112 4.0000000000000000, -0.39999999999999991, 0.0 },
11113 { 0.36916408142057128, 20.000000000000000, 1.0000000000000000,
11114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11115 { 0.47406175901569547, 20.000000000000000, 1.0000000000000000,
b4688136 11116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11117 { 0.65237908266239919, 20.000000000000000, 1.0000000000000000,
b4688136 11118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11119 { 1.0000000000000000, 20.000000000000000, 1.0000000000000000,
b4688136 11120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11121 { 1.8227213362622299, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11122 4.0000000000000000, 0.10000000000000009, 0.0 },
11123 { 4.3716358339791430, 20.000000000000000, 1.0000000000000000,
11124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11125 { 15.670841312959222, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11126 4.0000000000000000, 0.30000000000000004, 0.0 },
11127 { 94.742651122760662, 20.000000000000000, 1.0000000000000000,
11128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11129 { 1081.7275541795671, 20.000000000000000, 1.0000000000000000,
b4688136 11130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11131 { 27809.787731465960, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11132 4.0000000000000000, 0.60000000000000009, 0.0 },
11133 { 2329811.1715181284, 20.000000000000000, 1.0000000000000000,
11134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11135 { 1537787532.6780224, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11136 4.0000000000000000, 0.80000000000000004, 0.0 },
11137 { 141562653507005.19, 20.000000000000000, 1.0000000000000000,
11138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11139};
11140const double toler222 = 2.5000000000000020e-13;
11141
11142// Test data for a=20.000000000000000, b=1.0000000000000000, c=6.0000000000000000.
b4688136
ESR
11143// max(|f - f_GSL|): 0.00024414062500000000 at index 18
11144// max(|f - f_GSL| / |f_GSL|): 1.6763226855512285e-15
11145// mean(f - f_GSL): 1.2849899481406474e-05
11146// variance(f - f_GSL): 3.1370759089735494e-09
11147// stddev(f - f_GSL): 5.6009605506319623e-05
2be75957
ESR
11148const testcase_hyperg<double>
11149data223[19] =
11150{
11151 { 0.23253645591196551, 20.000000000000000, 1.0000000000000000,
b4688136 11152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11153 { 0.25484220947068342, 20.000000000000000, 1.0000000000000000,
b4688136 11154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11155 { 0.28181987881113812, 20.000000000000000, 1.0000000000000000,
b4688136 11156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11157 { 0.31508211677735770, 20.000000000000000, 1.0000000000000000,
b4688136 11158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11159 { 0.35706285886959610, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11160 6.0000000000000000, -0.50000000000000000, 0.0 },
11161 { 0.41160053409238190, 20.000000000000000, 1.0000000000000000,
11162 6.0000000000000000, -0.39999999999999991, 0.0 },
11163 { 0.48508083111181938, 20.000000000000000, 1.0000000000000000,
11164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11165 { 0.58885194371375260, 20.000000000000000, 1.0000000000000000,
b4688136 11166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11167 { 0.74482241684585782, 20.000000000000000, 1.0000000000000000,
b4688136 11168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11169 { 1.0000000000000000, 20.000000000000000, 1.0000000000000000,
b4688136 11170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11171 { 1.4700356864367146, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11172 6.0000000000000000, 0.10000000000000009, 0.0 },
11173 { 2.4955144453055174, 20.000000000000000, 1.0000000000000000,
11174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11175 { 5.3506594845833471, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11176 6.0000000000000000, 0.30000000000000004, 0.0 },
11177 { 16.618413752184267, 20.000000000000000, 1.0000000000000000,
11178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11179 { 89.310629514963878, 20.000000000000000, 1.0000000000000000,
b4688136 11180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11181 { 1029.3439900542960, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11182 6.0000000000000000, 0.60000000000000009, 0.0 },
11183 { 35659.847863372670, 20.000000000000000, 1.0000000000000000,
11184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11185 { 8009309.6233230168, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11186 6.0000000000000000, 0.80000000000000004, 0.0 },
11187 { 145640590027.40201, 20.000000000000000, 1.0000000000000000,
11188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11189};
11190const double toler223 = 2.5000000000000020e-13;
11191
11192// Test data for a=20.000000000000000, b=1.0000000000000000, c=8.0000000000000000.
b4688136
ESR
11193// max(|f - f_GSL|): 7.1525573730468750e-07 at index 18
11194// max(|f - f_GSL| / |f_GSL|): 1.7237966704607975e-15
11195// mean(f - f_GSL): 3.7648905700618082e-08
11196// variance(f - f_GSL): 2.6925522674362989e-14
11197// stddev(f - f_GSL): 1.6408998346749562e-07
2be75957
ESR
11198const testcase_hyperg<double>
11199data224[19] =
11200{
11201 { 0.29614148314592509, 20.000000000000000, 1.0000000000000000,
b4688136 11202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11203 { 0.32176277356430805, 20.000000000000000, 1.0000000000000000,
b4688136 11204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11205 { 0.35217870475550511, 20.000000000000000, 1.0000000000000000,
b4688136 11206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11207 { 0.38885270445515113, 20.000000000000000, 1.0000000000000000,
b4688136 11208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11209 { 0.43389978380608418, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11210 8.0000000000000000, -0.50000000000000000, 0.0 },
11211 { 0.49048612522269414, 20.000000000000000, 1.0000000000000000,
11212 8.0000000000000000, -0.39999999999999991, 0.0 },
2be75957 11213 { 0.56355539635634599, 20.000000000000000, 1.0000000000000000,
b4688136 11214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11215 { 0.66123153239117671, 20.000000000000000, 1.0000000000000000,
b4688136 11216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11217 { 0.79773363961895416, 20.000000000000000, 1.0000000000000000,
b4688136 11218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11219 { 1.0000000000000000, 20.000000000000000, 1.0000000000000000,
b4688136 11220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11221 { 1.3245132157016595, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11222 8.0000000000000000, 0.10000000000000009, 0.0 },
11223 { 1.9065148749742094, 20.000000000000000, 1.0000000000000000,
11224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11225 { 3.1328798652457452, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11226 8.0000000000000000, 0.30000000000000004, 0.0 },
11227 { 6.4172532944033636, 20.000000000000000, 1.0000000000000000,
11228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11229 { 19.071683734222436, 20.000000000000000, 1.0000000000000000,
b4688136 11230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11231 { 104.41989641582512, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11232 8.0000000000000000, 0.60000000000000009, 0.0 },
11233 { 1510.5743992324351, 20.000000000000000, 1.0000000000000000,
11234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11235 { 115518.14360562043, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11236 8.0000000000000000, 0.80000000000000004, 0.0 },
11237 { 414930455.29174191, 20.000000000000000, 1.0000000000000000,
11238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11239};
11240const double toler224 = 2.5000000000000020e-13;
11241
11242// Test data for a=20.000000000000000, b=1.0000000000000000, c=10.000000000000000.
b4688136
ESR
11243// max(|f - f_GSL|): 4.6566128730773926e-09 at index 18
11244// max(|f - f_GSL| / |f_GSL|): 1.6665618165271877e-15
11245// mean(f - f_GSL): 2.4523176471958370e-10
11246// variance(f - f_GSL): 1.1411894517911952e-18
11247// stddev(f - f_GSL): 1.0682646918208967e-09
2be75957
ESR
11248const testcase_hyperg<double>
11249data225[19] =
11250{
11251 { 0.34954259539177701, 20.000000000000000, 1.0000000000000000,
b4688136 11252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 11253 { 0.37714038609235134, 20.000000000000000, 1.0000000000000000,
b4688136 11254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 11255 { 0.40942091659748781, 20.000000000000000, 1.0000000000000000,
b4688136 11256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 11257 { 0.44767109606846422, 20.000000000000000, 1.0000000000000000,
b4688136 11258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 11259 { 0.49368984777532227, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11260 10.000000000000000, -0.50000000000000000, 0.0 },
11261 { 0.55006638216982318, 20.000000000000000, 1.0000000000000000,
11262 10.000000000000000, -0.39999999999999991, 0.0 },
11263 { 0.62065830207408901, 20.000000000000000, 1.0000000000000000,
11264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 11265 { 0.71145554513583764, 20.000000000000000, 1.0000000000000000,
b4688136 11266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 11267 { 0.83223839666914623, 20.000000000000000, 1.0000000000000000,
b4688136 11268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 11269 { 1.0000000000000000, 20.000000000000000, 1.0000000000000000,
b4688136 11270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 11271 { 1.2466748028187731, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11272 10.000000000000000, 0.10000000000000009, 0.0 },
11273 { 1.6386752725021760, 20.000000000000000, 1.0000000000000000,
11274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 11275 { 2.3340068725479681, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11276 10.000000000000000, 0.30000000000000004, 0.0 },
11277 { 3.7848108613132099, 20.000000000000000, 1.0000000000000000,
11278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 11279 { 7.6754638550304133, 20.000000000000000, 1.0000000000000000,
b4688136 11280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 11281 { 23.344217312927277, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11282 10.000000000000000, 0.60000000000000009, 0.0 },
11283 { 149.83491198246998, 20.000000000000000, 1.0000000000000000,
11284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 11285 { 3936.9253501916060, 20.000000000000000, 1.0000000000000000,
b4688136
ESR
11286 10.000000000000000, 0.80000000000000004, 0.0 },
11287 { 2794143.5036480846, 20.000000000000000, 1.0000000000000000,
11288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11289};
11290const double toler225 = 2.5000000000000020e-13;
11291
11292// Test data for a=20.000000000000000, b=2.0000000000000000, c=2.0000000000000000.
b4688136 11293// max(|f - f_GSL|): 475136.00000000000 at index 18
2be75957 11294// max(|f - f_GSL| / |f_GSL|): 5.4067200000000052e-15
b4688136
ESR
11295// mean(f - f_GSL): 25007.185032091642
11296// variance(f - f_GSL): 11881799540.814577
11297// stddev(f - f_GSL): 109003.66755671379
2be75957
ESR
11298const testcase_hyperg<double>
11299data226[19] =
11300{
11301 { 2.6602838683283435e-06, 20.000000000000000, 2.0000000000000000,
b4688136 11302 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11303 { 7.8442223930072316e-06, 20.000000000000000, 2.0000000000000000,
b4688136 11304 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11305 { 2.4604898194634598e-05, 20.000000000000000, 2.0000000000000000,
b4688136 11306 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11307 { 8.2718061255302686e-05, 20.000000000000000, 2.0000000000000000,
b4688136 11308 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11309 { 0.00030072865982171723, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11310 2.0000000000000000, -0.50000000000000000, 0.0 },
11311 { 0.0011951964277455204, 20.000000000000000, 2.0000000000000000,
11312 2.0000000000000000, -0.39999999999999991, 0.0 },
11313 { 0.0052617832469731996, 20.000000000000000, 2.0000000000000000,
11314 2.0000000000000000, -0.29999999999999993, 0.0 },
11315 { 0.026084053304588850, 20.000000000000000, 2.0000000000000000,
11316 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11317 { 0.14864362802414346, 20.000000000000000, 2.0000000000000000,
b4688136 11318 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11319 { 1.0000000000000000, 20.000000000000000, 2.0000000000000000,
b4688136 11320 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11321 { 8.2252633399699757, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11322 2.0000000000000000, 0.10000000000000009, 0.0 },
11323 { 86.736173798840738, 20.000000000000000, 2.0000000000000000,
11324 2.0000000000000000, 0.20000000000000018, 0.0 },
11325 { 1253.2542894196868, 20.000000000000000, 2.0000000000000000,
11326 2.0000000000000000, 0.30000000000000004, 0.0 },
11327 { 27351.112277912678, 20.000000000000000, 2.0000000000000000,
11328 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11329 { 1048576.0000000000, 20.000000000000000, 2.0000000000000000,
b4688136 11330 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11331 { 90949470.177293226, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11332 2.0000000000000000, 0.60000000000000009, 0.0 },
11333 { 28679719907.924767, 20.000000000000000, 2.0000000000000000,
11334 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11335 { 95367431640624.906, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11336 2.0000000000000000, 0.80000000000000004, 0.0 },
11337 { 1.0000000000000220e+20, 20.000000000000000, 2.0000000000000000,
11338 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11339};
11340const double toler226 = 5.0000000000000039e-13;
11341
11342// Test data for a=20.000000000000000, b=2.0000000000000000, c=4.0000000000000000.
b4688136
ESR
11343// max(|f - f_GSL|): 40.000000000000000 at index 18
11344// max(|f - f_GSL| / |f_GSL|): 1.8712609271522778e-15
11345// mean(f - f_GSL): 2.1052671749403089
11346// variance(f - f_GSL): 84.210508462254538
11347// stddev(f - f_GSL): 9.1766283820504881
2be75957
ESR
11348const testcase_hyperg<double>
11349data227[19] =
11350{
11351 { 0.018828092583720632, 20.000000000000000, 2.0000000000000000,
b4688136 11352 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11353 { 0.023381944060455365, 20.000000000000000, 2.0000000000000000,
b4688136 11354 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11355 { 0.029789623984280887, 20.000000000000000, 2.0000000000000000,
b4688136 11356 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11357 { 0.039191021482500567, 20.000000000000000, 2.0000000000000000,
b4688136 11358 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11359 { 0.053727813036721528, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11360 4.0000000000000000, -0.50000000000000000, 0.0 },
11361 { 0.077762010061668857, 20.000000000000000, 2.0000000000000000,
11362 4.0000000000000000, -0.39999999999999991, 0.0 },
11363 { 0.12110505620123323, 20.000000000000000, 2.0000000000000000,
11364 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11365 { 0.20870149809080582, 20.000000000000000, 2.0000000000000000,
b4688136 11366 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11367 { 0.41429234328785763, 20.000000000000000, 2.0000000000000000,
b4688136 11368 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11369 { 1.0000000000000000, 20.000000000000000, 2.0000000000000000,
b4688136 11370 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11371 { 3.1308087404153113, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11372 4.0000000000000000, 0.10000000000000009, 0.0 },
11373 { 13.586180626453100, 20.000000000000000, 2.0000000000000000,
11374 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11375 { 87.117304082784415, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11376 4.0000000000000000, 0.30000000000000004, 0.0 },
11377 { 889.26474381243384, 20.000000000000000, 2.0000000000000000,
11378 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11379 { 16231.913312693494, 20.000000000000000, 2.0000000000000000,
b4688136 11380 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11381 { 653537.51168945129, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11382 4.0000000000000000, 0.60000000000000009, 0.0 },
11383 { 87756230.793849647, 20.000000000000000, 2.0000000000000000,
11384 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11385 { 101493977171.74945, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11386 4.0000000000000000, 0.80000000000000004, 0.0 },
11387 { 21375960679557820., 20.000000000000000, 2.0000000000000000,
11388 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11389};
11390const double toler227 = 2.5000000000000020e-13;
11391
11392// Test data for a=20.000000000000000, b=2.0000000000000000, c=6.0000000000000000.
b4688136
ESR
11393// max(|f - f_GSL|): 0.031250000000000000 at index 18
11394// max(|f - f_GSL| / |f_GSL|): 1.6379336164121759e-15
11395// mean(f - f_GSL): 0.0016447556893365942
11396// variance(f - f_GSL): 5.1397960874034849e-05
11397// stddev(f - f_GSL): 0.0071692371193896806
2be75957
ESR
11398const testcase_hyperg<double>
11399data228[19] =
11400{
11401 { 0.049200410661854238, 20.000000000000000, 2.0000000000000000,
b4688136 11402 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11403 { 0.059460876757152607, 20.000000000000000, 2.0000000000000000,
b4688136 11404 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11405 { 0.073244762686653225, 20.000000000000000, 2.0000000000000000,
b4688136 11406 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11407 { 0.092334626017932769, 20.000000000000000, 2.0000000000000000,
b4688136 11408 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11409 { 0.11976760350696856, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11410 6.0000000000000000, -0.50000000000000000, 0.0 },
11411 { 0.16102414609169405, 20.000000000000000, 2.0000000000000000,
11412 6.0000000000000000, -0.39999999999999991, 0.0 },
11413 { 0.22670456785796236, 20.000000000000000, 2.0000000000000000,
11414 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11415 { 0.33912903252727361, 20.000000000000000, 2.0000000000000000,
b4688136 11416 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11417 { 0.55049794600858049, 20.000000000000000, 2.0000000000000000,
b4688136 11418 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11419 { 1.0000000000000000, 20.000000000000000, 2.0000000000000000,
b4688136 11420 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11421 { 2.1254722872032232, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11422 6.0000000000000000, 0.10000000000000009, 0.0 },
11423 { 5.6261213886736314, 20.000000000000000, 2.0000000000000000,
11424 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11425 { 20.137315891130996, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11426 6.0000000000000000, 0.30000000000000004, 0.0 },
11427 { 108.04381584643900, 20.000000000000000, 2.0000000000000000,
11428 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11429 { 992.41692466460245, 20.000000000000000, 2.0000000000000000,
b4688136 11430 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11431 { 19055.363816004465, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11432 6.0000000000000000, 0.60000000000000009, 0.0 },
11433 { 1105471.9504312191, 20.000000000000000, 2.0000000000000000,
11434 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11435 { 448521363.90608919, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11436 6.0000000000000000, 0.80000000000000004, 0.0 },
11437 { 19078917293639.652, 20.000000000000000, 2.0000000000000000,
11438 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11439};
11440const double toler228 = 2.5000000000000020e-13;
11441
11442// Test data for a=20.000000000000000, b=2.0000000000000000, c=8.0000000000000000.
b4688136
ESR
11443// max(|f - f_GSL|): 8.3923339843750000e-05 at index 18
11444// max(|f - f_GSL| / |f_GSL|): 1.8221514326726564e-15
11445// mean(f - f_GSL): 4.4172143495227617e-06
11446// variance(f - f_GSL): 3.7068906120670492e-10
11447// stddev(f - f_GSL): 1.9253287023433297e-05
2be75957
ESR
11448const testcase_hyperg<double>
11449data229[19] =
11450{
11451 { 0.083753547015334884, 20.000000000000000, 2.0000000000000000,
b4688136 11452 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11453 { 0.099238444687035743, 20.000000000000000, 2.0000000000000000,
b4688136 11454 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11455 { 0.11938294012867748, 20.000000000000000, 2.0000000000000000,
b4688136 11456 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11457 { 0.14622683905023329, 20.000000000000000, 2.0000000000000000,
b4688136 11458 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11459 { 0.18303556733713028, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11460 8.0000000000000000, -0.50000000000000000, 0.0 },
11461 { 0.23527764069382415, 20.000000000000000, 2.0000000000000000,
11462 8.0000000000000000, -0.39999999999999991, 0.0 },
11463 { 0.31261681740827069, 20.000000000000000, 2.0000000000000000,
11464 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11465 { 0.43327581880538862, 20.000000000000000, 2.0000000000000000,
b4688136 11466 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11467 { 0.63445840637296680, 20.000000000000000, 2.0000000000000000,
b4688136 11468 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11469 { 1.0000000000000000, 20.000000000000000, 2.0000000000000000,
b4688136 11470 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11471 { 1.7438842395813297, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11472 8.0000000000000000, 0.10000000000000009, 0.0 },
11473 { 3.5070840938209331, 20.000000000000000, 2.0000000000000000,
11474 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11475 { 8.6573372006089713, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11476 8.0000000000000000, 0.30000000000000004, 0.0 },
11477 { 28.779342118408998, 20.000000000000000, 2.0000000000000000,
11478 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11479 { 147.50178613955714, 20.000000000000000, 2.0000000000000000,
b4688136 11480 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11481 { 1427.1686016136398, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11482 8.0000000000000000, 0.60000000000000009, 0.0 },
11483 { 36780.643714655955, 20.000000000000000, 2.0000000000000000,
11484 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11485 { 5313869.6058585485, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11486 8.0000000000000000, 0.80000000000000004, 0.0 },
11487 { 46057280607.383286, 20.000000000000000, 2.0000000000000000,
11488 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11489};
11490const double toler229 = 2.5000000000000020e-13;
11491
11492// Test data for a=20.000000000000000, b=2.0000000000000000, c=10.000000000000000.
b4688136
ESR
11493// max(|f - f_GSL|): 5.0663948059082031e-07 at index 18
11494// max(|f - f_GSL| / |f_GSL|): 1.9925479281069681e-15
11495// mean(f - f_GSL): 2.6669880993704522e-08
11496// variance(f - f_GSL): 1.3509399735218820e-14
11497// stddev(f - f_GSL): 1.1622994336752823e-07
2be75957
ESR
11498const testcase_hyperg<double>
11499data230[19] =
11500{
11501 { 0.11920045035073676, 20.000000000000000, 2.0000000000000000,
b4688136 11502 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 11503 { 0.13907946814302777, 20.000000000000000, 2.0000000000000000,
b4688136 11504 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 11505 { 0.16431439792559696, 20.000000000000000, 2.0000000000000000,
b4688136 11506 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 11507 { 0.19698796016986989, 20.000000000000000, 2.0000000000000000,
b4688136 11508 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 11509 { 0.24028510928790547, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11510 10.000000000000000, -0.50000000000000000, 0.0 },
11511 { 0.29926031296483130, 20.000000000000000, 2.0000000000000000,
11512 10.000000000000000, -0.39999999999999991, 0.0 },
11513 { 0.38229327814229175, 20.000000000000000, 2.0000000000000000,
11514 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 11515 { 0.50402047283093132, 20.000000000000000, 2.0000000000000000,
b4688136 11516 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 11517 { 0.69167261179586526, 20.000000000000000, 2.0000000000000000,
b4688136 11518 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 11519 { 1.0000000000000000, 20.000000000000000, 2.0000000000000000,
b4688136 11520 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 11521 { 1.5503152253394308, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11522 10.000000000000000, 0.10000000000000009, 0.0 },
11523 { 2.6469548193635828, 20.000000000000000, 2.0000000000000000,
11524 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 11525 { 5.1882631330566813, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11526 10.000000000000000, 0.30000000000000004, 0.0 },
11527 { 12.476792759124546, 20.000000000000000, 2.0000000000000000,
11528 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 11529 { 41.026391565091259, 20.000000000000000, 2.0000000000000000,
b4688136 11530 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 11531 { 220.92584715988204, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11532 10.000000000000000, 0.60000000000000009, 0.0 },
11533 { 2677.0834450236389, 20.000000000000000, 2.0000000000000000,
11534 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 11535 { 141774.31260689779, 20.000000000000000, 2.0000000000000000,
b4688136
ESR
11536 10.000000000000000, 0.80000000000000004, 0.0 },
11537 { 254267148.83197621, 20.000000000000000, 2.0000000000000000,
11538 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11539};
11540const double toler230 = 2.5000000000000020e-13;
11541
11542// Test data for a=20.000000000000000, b=5.0000000000000000, c=2.0000000000000000.
b4688136
ESR
11543// max(|f - f_GSL|): 60129542144.000000 at index 18
11544// max(|f - f_GSL| / |f_GSL|): 2.0181355730232468e-15
11545// mean(f - f_GSL): 3164712852.2154636
11546// variance(f - f_GSL): 1.9029272767041847e+20
11547// stddev(f - f_GSL): 13794663014.021708
2be75957
ESR
11548const testcase_hyperg<double>
11549data231[19] =
11550{
11551 { -1.8650300348790099e-05, 20.000000000000000, 5.0000000000000000,
b4688136 11552 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11553 { -3.6488008415371319e-05, 20.000000000000000, 5.0000000000000000,
b4688136 11554 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11555 { -6.4614776410961038e-05, 20.000000000000000, 5.0000000000000000,
b4688136 11556 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11557 { -8.4495207102246549e-05, 20.000000000000000, 5.0000000000000000,
b4688136 11558 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11559 { 2.2276197023825424e-05, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11560 2.0000000000000000, -0.50000000000000000, 0.0 },
11561 { 0.00070736115111457809, 20.000000000000000, 5.0000000000000000,
11562 2.0000000000000000, -0.39999999999999991, 0.0 },
11563 { 0.0027829732057272588, 20.000000000000000, 5.0000000000000000,
11564 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11565 { 0.0013283545664371644, 20.000000000000000, 5.0000000000000000,
b4688136 11566 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11567 { -0.041767631015048774, 20.000000000000000, 5.0000000000000000,
b4688136 11568 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11569 { 1.0000000000000000, 20.000000000000000, 5.0000000000000000,
b4688136 11570 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11571 { 61.311496556100003, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11572 2.0000000000000000, 0.10000000000000009, 0.0 },
11573 { 2397.4420539085872, 20.000000000000000, 5.0000000000000000,
11574 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11575 { 103687.60998586559, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11576 2.0000000000000000, 0.30000000000000004, 0.0 },
11577 { 6247196.6451069508, 20.000000000000000, 5.0000000000000000,
11578 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11579 { 656408576.00000000, 20.000000000000000, 5.0000000000000000,
b4688136 11580 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11581 { 165334768098.54715, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11582 2.0000000000000000, 0.60000000000000009, 0.0 },
11583 { 175097125520819.91, 20.000000000000000, 5.0000000000000000,
11584 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11585 { 2.6818275451660257e+18, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11586 2.0000000000000000, 0.80000000000000004, 0.0 },
11587 { 2.9794600000000777e+25, 20.000000000000000, 5.0000000000000000,
11588 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11589};
11590const double toler231 = 2.5000000000000020e-13;
11591
11592// Test data for a=20.000000000000000, b=5.0000000000000000, c=4.0000000000000000.
b4688136
ESR
11593// max(|f - f_GSL|): 9437184.0000000000 at index 18
11594// max(|f - f_GSL| / |f_GSL|): 2.0515617391303805e-15
11595// mean(f - f_GSL): 496693.97369064158
11596// variance(f - f_GSL): 4687391593519.1660
11597// stddev(f - f_GSL): 2165038.4739119918
2be75957
ESR
11598const testcase_hyperg<double>
11599data232[19] =
11600{
11601 { -3.6403884516313627e-06, 20.000000000000000, 5.0000000000000000,
b4688136 11602 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11603 { -9.5873829246491408e-06, 20.000000000000000, 5.0000000000000000,
b4688136 11604 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11605 { -2.6052245147200097e-05, 20.000000000000000, 5.0000000000000000,
b4688136 11606 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11607 { -7.2378303598384501e-05, 20.000000000000000, 5.0000000000000000,
b4688136 11608 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11609 { -0.00020048577321417379, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11610 4.0000000000000000, -0.50000000000000000, 0.0 },
11611 { -0.00051222704046234439, 20.000000000000000, 5.0000000000000000,
11612 4.0000000000000000, -0.39999999999999991, 0.0 },
11613 { -0.00080950511491888959, 20.000000000000000, 5.0000000000000000,
11614 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11615 { 0.0043473422174314250, 20.000000000000000, 5.0000000000000000,
b4688136 11616 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11617 { 0.081078342558623853, 20.000000000000000, 5.0000000000000000,
b4688136 11618 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11619 { 1.0000000000000000, 20.000000000000000, 5.0000000000000000,
b4688136 11620 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11621 { 12.794854084397739, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11622 4.0000000000000000, 0.10000000000000009, 0.0 },
11623 { 195.15639104739174, 20.000000000000000, 5.0000000000000000,
11624 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11625 { 3938.7991953190131, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11626 4.0000000000000000, 0.30000000000000004, 0.0 },
11627 { 118521.48653762160, 20.000000000000000, 5.0000000000000000,
11628 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11629 { 6291455.9999999972, 20.000000000000000, 5.0000000000000000,
b4688136 11630 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11631 { 773070496.50699198, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11632 4.0000000000000000, 0.60000000000000009, 0.0 },
11633 { 363276452167.04718, 20.000000000000000, 5.0000000000000000,
11634 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11635 { 2002716064453133.0, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11636 4.0000000000000000, 0.80000000000000004, 0.0 },
11637 { 4.6000000000001222e+21, 20.000000000000000, 5.0000000000000000,
11638 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11639};
11640const double toler232 = 2.5000000000000020e-13;
11641
11642// Test data for a=20.000000000000000, b=5.0000000000000000, c=6.0000000000000000.
b4688136
ESR
11643// max(|f - f_GSL|): 5120.0000000000000 at index 18
11644// max(|f - f_GSL| / |f_GSL|): 1.7944916193878173e-15
11645// mean(f - f_GSL): 269.47388985302263
11646// variance(f - f_GSL): 1379705.1461701661
11647// stddev(f - f_GSL): 1174.6085076186730
2be75957
ESR
11648const testcase_hyperg<double>
11649data233[19] =
11650{
11651 { 0.00014313323624053599, 20.000000000000000, 5.0000000000000000,
b4688136 11652 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11653 { 0.00025426183473118769, 20.000000000000000, 5.0000000000000000,
b4688136 11654 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11655 { 0.00048255612836437054, 20.000000000000000, 5.0000000000000000,
b4688136 11656 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11657 { 0.00099096904674794185, 20.000000000000000, 5.0000000000000000,
b4688136 11658 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11659 { 0.0022347805521915616, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11660 6.0000000000000000, -0.50000000000000000, 0.0 },
11661 { 0.0056271390060294354, 20.000000000000000, 5.0000000000000000,
11662 6.0000000000000000, -0.39999999999999991, 0.0 },
11663 { 0.016109059519227351, 20.000000000000000, 5.0000000000000000,
11664 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11665 { 0.053453465775609076, 20.000000000000000, 5.0000000000000000,
b4688136 11666 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11667 { 0.20995202901839263, 20.000000000000000, 5.0000000000000000,
b4688136 11668 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11669 { 1.0000000000000000, 20.000000000000000, 5.0000000000000000,
b4688136 11670 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11671 { 5.9534372167648799, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11672 6.0000000000000000, 0.10000000000000009, 0.0 },
11673 { 46.157632071206095, 20.000000000000000, 5.0000000000000000,
11674 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11675 { 494.32074431164915, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11676 6.0000000000000000, 0.30000000000000004, 0.0 },
11677 { 7989.5277611776519, 20.000000000000000, 5.0000000000000000,
11678 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11679 { 224179.55830753347, 20.000000000000000, 5.0000000000000000,
b4688136 11680 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11681 { 13848144.485282511, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11682 6.0000000000000000, 0.60000000000000009, 0.0 },
11683 { 2948587692.8892150, 20.000000000000000, 5.0000000000000000,
11684 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11685 { 5940513286161.6602, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11686 6.0000000000000000, 0.80000000000000004, 0.0 },
11687 { 2.8531757655946394e+18, 20.000000000000000, 5.0000000000000000,
11688 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11689};
11690const double toler233 = 2.5000000000000020e-13;
11691
11692// Test data for a=20.000000000000000, b=5.0000000000000000, c=8.0000000000000000.
b4688136
ESR
11693// max(|f - f_GSL|): 7.0000000000000000 at index 18
11694// max(|f - f_GSL| / |f_GSL|): 1.5351977183413728e-15
11695// mean(f - f_GSL): 0.36842306154970872
11696// variance(f - f_GSL): 2.5789458059294108
11697// stddev(f - f_GSL): 1.6059096506122039
2be75957
ESR
11698const testcase_hyperg<double>
11699data234[19] =
11700{
11701 { 0.0012492049968744917, 20.000000000000000, 5.0000000000000000,
b4688136 11702 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11703 { 0.0019931241968014200, 20.000000000000000, 5.0000000000000000,
b4688136 11704 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11705 { 0.0033203386861410844, 20.000000000000000, 5.0000000000000000,
b4688136 11706 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11707 { 0.0058191894509856774, 20.000000000000000, 5.0000000000000000,
b4688136 11708 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11709 { 0.010830090368313864, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11710 8.0000000000000000, -0.50000000000000000, 0.0 },
11711 { 0.021653062305193541, 20.000000000000000, 5.0000000000000000,
11712 8.0000000000000000, -0.39999999999999991, 0.0 },
11713 { 0.047180821280919195, 20.000000000000000, 5.0000000000000000,
11714 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11715 { 0.11405637279736212, 20.000000000000000, 5.0000000000000000,
b4688136 11716 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11717 { 0.31275468794721017, 20.000000000000000, 5.0000000000000000,
b4688136 11718 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11719 { 1.0000000000000000, 20.000000000000000, 5.0000000000000000,
b4688136 11720 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11721 { 3.8598904658643969, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11722 8.0000000000000000, 0.10000000000000009, 0.0 },
11723 { 18.806301417906734, 20.000000000000000, 5.0000000000000000,
11724 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11725 { 122.77054465017432, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11726 8.0000000000000000, 0.30000000000000004, 0.0 },
11727 { 1168.4762146809012, 20.000000000000000, 5.0000000000000000,
11728 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11729 { 18437.511788521082, 20.000000000000000, 5.0000000000000000,
b4688136 11730 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11731 { 597441.79669264762, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11732 8.0000000000000000, 0.60000000000000009, 0.0 },
11733 { 59390411.369228527, 20.000000000000000, 5.0000000000000000,
11734 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11735 { 44681668993.361603, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11736 8.0000000000000000, 0.80000000000000004, 0.0 },
11737 { 4559673269683333.0, 20.000000000000000, 5.0000000000000000,
11738 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11739};
11740const double toler234 = 2.5000000000000020e-13;
11741
11742// Test data for a=20.000000000000000, b=5.0000000000000000, c=10.000000000000000.
b4688136
ESR
11743// max(|f - f_GSL|): 0.029296875000000000 at index 18
11744// max(|f - f_GSL| / |f_GSL|): 1.8717083246628342e-15
11745// mean(f - f_GSL): 0.0015419659355661440
11746// variance(f - f_GSL): 4.5173964710879197e-05
11747// stddev(f - f_GSL): 0.0067211579888348996
2be75957
ESR
11748const testcase_hyperg<double>
11749data235[19] =
11750{
11751 { 0.0038867957051370739, 20.000000000000000, 5.0000000000000000,
b4688136 11752 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 11753 { 0.0058484892597364235, 20.000000000000000, 5.0000000000000000,
b4688136 11754 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 11755 { 0.0090987656053758189, 20.000000000000000, 5.0000000000000000,
b4688136 11756 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 11757 { 0.014714392537270657, 20.000000000000000, 5.0000000000000000,
b4688136 11758 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 11759 { 0.024900404542056772, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11760 10.000000000000000, -0.50000000000000000, 0.0 },
11761 { 0.044460184663785055, 20.000000000000000, 5.0000000000000000,
11762 10.000000000000000, -0.39999999999999991, 0.0 },
11763 { 0.084638849196357113, 20.000000000000000, 5.0000000000000000,
11764 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 11765 { 0.17409058241291026, 20.000000000000000, 5.0000000000000000,
b4688136 11766 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 11767 { 0.39357055823580767, 20.000000000000000, 5.0000000000000000,
b4688136 11768 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 11769 { 1.0000000000000000, 20.000000000000000, 5.0000000000000000,
b4688136 11770 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 11771 { 2.9410794636226596, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11772 10.000000000000000, 0.10000000000000009, 0.0 },
11773 { 10.417226071414374, 20.000000000000000, 5.0000000000000000,
11774 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 11775 { 46.930585873140835, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11776 10.000000000000000, 0.30000000000000004, 0.0 },
11777 { 290.76717121814988, 20.000000000000000, 5.0000000000000000,
11778 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 11779 { 2788.1641083374830, 20.000000000000000, 5.0000000000000000,
b4688136 11780 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 11781 { 50228.117718560752, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11782 10.000000000000000, 0.60000000000000009, 0.0 },
11783 { 2433042.3476752895, 20.000000000000000, 5.0000000000000000,
11784 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 11785 { 705345246.77141762, 20.000000000000000, 5.0000000000000000,
b4688136
ESR
11786 10.000000000000000, 0.80000000000000004, 0.0 },
11787 { 15652478868617.246, 20.000000000000000, 5.0000000000000000,
11788 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11789};
11790const double toler235 = 2.5000000000000020e-13;
11791
11792// Test data for a=20.000000000000000, b=10.000000000000000, c=2.0000000000000000.
b4688136
ESR
11793// max(|f - f_GSL|): 2.5940733853654057e+18 at index 18
11794// max(|f - f_GSL| / |f_GSL|): 1.8312596334404269e-15
11795// mean(f - f_GSL): 1.3653017829015250e+17
11796// variance(f - f_GSL): 4.1617051640949032e+35
11797// stddev(f - f_GSL): 6.4511279355589466e+17
2be75957
ESR
11798const testcase_hyperg<double>
11799data236[19] =
11800{
11801 { -2.1776535312781759e-07, 20.000000000000000, 10.000000000000000,
b4688136 11802 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11803 { -2.9128833151630439e-06, 20.000000000000000, 10.000000000000000,
b4688136 11804 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11805 { -9.4755553429932710e-06, 20.000000000000000, 10.000000000000000,
b4688136 11806 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11807 { -1.2844297353852837e-05, 20.000000000000000, 10.000000000000000,
b4688136 11808 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11809 { 3.6576965483549205e-05, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11810 2.0000000000000000, -0.50000000000000000, 0.0 },
11811 { 0.00020847453890703339, 20.000000000000000, 10.000000000000000,
11812 2.0000000000000000, -0.39999999999999991, 0.0 },
11813 { -0.00022868510398194936, 20.000000000000000, 10.000000000000000,
11814 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11815 { -0.0021855513841943421, 20.000000000000000, 10.000000000000000,
b4688136 11816 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11817 { 0.014662111759334568, 20.000000000000000, 10.000000000000000,
b4688136 11818 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11819 { 1.0000000000000000, 20.000000000000000, 10.000000000000000,
b4688136 11820 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11821 { 746.44776348798098, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11822 2.0000000000000000, 0.10000000000000009, 0.0 },
11823 { 136080.48445225772, 20.000000000000000, 10.000000000000000,
11824 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11825 { 23094279.597826406, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11826 2.0000000000000000, 0.30000000000000004, 0.0 },
11827 { 5315913395.5545979, 20.000000000000000, 10.000000000000000,
11828 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11829 { 2261935718399.9990, 20.000000000000000, 10.000000000000000,
b4688136 11830 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11831 { 2669150854828235.0, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11832 2.0000000000000000, 0.60000000000000009, 0.0 },
11833 { 1.7499363099366351e+19, 20.000000000000000, 10.000000000000000,
11834 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11835 { 2.8881518494606140e+24, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11836 2.0000000000000000, 0.80000000000000004, 0.0 },
11837 { 1.4165513933662505e+33, 20.000000000000000, 10.000000000000000,
11838 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11839};
11840const double toler236 = 2.5000000000000020e-13;
11841
11842// Test data for a=20.000000000000000, b=10.000000000000000, c=4.0000000000000000.
b4688136
ESR
11843// max(|f - f_GSL|): 299067162755072.00 at index 18
11844// max(|f - f_GSL| / |f_GSL|): 2.1129345912023457e-15
11845// mean(f - f_GSL): 15740377042297.895
11846// variance(f - f_GSL): 4.7074334083472640e+27
11847// stddev(f - f_GSL): 68610738287437.656
2be75957
ESR
11848const testcase_hyperg<double>
11849data237[19] =
11850{
11851 { 1.7149006966334498e-07, 20.000000000000000, 10.000000000000000,
b4688136 11852 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11853 { 3.2399324906563845e-07, 20.000000000000000, 10.000000000000000,
b4688136 11854 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11855 { 1.6015317699713284e-07, 20.000000000000000, 10.000000000000000,
b4688136 11856 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11857 { -2.0500917201273337e-06, 20.000000000000000, 10.000000000000000,
b4688136 11858 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11859 { -1.0175546788592665e-05, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11860 4.0000000000000000, -0.50000000000000000, 0.0 },
11861 { -1.1720101988188077e-05, 20.000000000000000, 10.000000000000000,
11862 4.0000000000000000, -0.39999999999999991, 0.0 },
11863 { 0.00014199637113982382, 20.000000000000000, 10.000000000000000,
11864 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11865 { 0.00021263363640641769, 20.000000000000000, 10.000000000000000,
b4688136 11866 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11867 { -0.0072649256698439626, 20.000000000000000, 10.000000000000000,
b4688136 11868 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11869 { 1.0000000000000000, 20.000000000000000, 10.000000000000000,
b4688136 11870 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11871 { 90.430293772869618, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11872 4.0000000000000000, 0.10000000000000009, 0.0 },
11873 { 6248.1455940292872, 20.000000000000000, 10.000000000000000,
11874 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11875 { 501143.39852548984, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11876 4.0000000000000000, 0.30000000000000004, 0.0 },
11877 { 58852027.356440276, 20.000000000000000, 10.000000000000000,
11878 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11879 { 12942923093.333330, 20.000000000000000, 10.000000000000000,
b4688136 11880 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11881 { 7618073993853.6592, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11882 4.0000000000000000, 0.60000000000000009, 0.0 },
11883 { 22630251562549772., 20.000000000000000, 10.000000000000000,
11884 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11885 { 1.3708372433980356e+21, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11886 4.0000000000000000, 0.80000000000000004, 0.0 },
11887 { 1.4154113620000448e+29, 20.000000000000000, 10.000000000000000,
11888 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11889};
11890const double toler237 = 2.5000000000000020e-13;
11891
11892// Test data for a=20.000000000000000, b=10.000000000000000, c=6.0000000000000000.
b4688136
ESR
11893// max(|f - f_GSL|): 103079215104.00000 at index 18
11894// max(|f - f_GSL| / |f_GSL|): 1.8869870511941024e-15
11895// mean(f - f_GSL): 5425221928.4235201
11896// variance(f - f_GSL): 5.5922760890380314e+20
11897// stddev(f - f_GSL): 23647993760.651306
2be75957
ESR
11898const testcase_hyperg<double>
11899data238[19] =
11900{
11901 { -1.6667473284194196e-08, 20.000000000000000, 10.000000000000000,
b4688136 11902 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11903 { 8.6214843496406671e-08, 20.000000000000000, 10.000000000000000,
b4688136 11904 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11905 { 5.7778331275185146e-07, 20.000000000000000, 10.000000000000000,
b4688136 11906 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11907 { 2.1911400502042259e-06, 20.000000000000000, 10.000000000000000,
b4688136 11908 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11909 { 4.7440049217199358e-06, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11910 6.0000000000000000, -0.50000000000000000, 0.0 },
11911 { -1.0564233314712615e-05, 20.000000000000000, 10.000000000000000,
11912 6.0000000000000000, -0.39999999999999991, 0.0 },
11913 { -0.00017990026051847404, 20.000000000000000, 10.000000000000000,
11914 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11915 { -0.00027618146288724629, 20.000000000000000, 10.000000000000000,
b4688136 11916 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11917 { 0.030606019577723666, 20.000000000000000, 10.000000000000000,
b4688136 11918 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11919 { 1.0000000000000000, 20.000000000000000, 10.000000000000000,
b4688136 11920 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11921 { 27.832854169493341, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11922 6.0000000000000000, 0.10000000000000009, 0.0 },
11923 { 874.00624088575910, 20.000000000000000, 10.000000000000000,
11924 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11925 { 36049.199340831554, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11926 6.0000000000000000, 0.30000000000000004, 0.0 },
11927 { 2270967.7298625209, 20.000000000000000, 10.000000000000000,
11928 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11929 { 266979100.44444439, 20.000000000000000, 10.000000000000000,
b4688136 11930 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11931 { 80311224337.493027, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11932 6.0000000000000000, 0.60000000000000009, 0.0 },
11933 { 110111693103801.77, 20.000000000000000, 10.000000000000000,
11934 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11935 { 2.4838871426052618e+18, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11936 6.0000000000000000, 0.80000000000000004, 0.0 },
11937 { 5.4626350000001618e+25, 20.000000000000000, 10.000000000000000,
11938 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11939};
11940const double toler238 = 2.5000000000000020e-13;
11941
11942// Test data for a=20.000000000000000, b=10.000000000000000, c=8.0000000000000000.
b4688136
ESR
11943// max(|f - f_GSL|): 100663296.00000000 at index 18
11944// max(|f - f_GSL| / |f_GSL|): 1.9414329026036117e-15
11945// mean(f - f_GSL): 5298068.6316046715
11946// variance(f - f_GSL): 533321003794731.12
11947// stddev(f - f_GSL): 23093743.823701065
2be75957
ESR
11948const testcase_hyperg<double>
11949data239[19] =
11950{
11951 { -1.5843795889906876e-07, 20.000000000000000, 10.000000000000000,
b4688136 11952 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 11953 { -5.4877276002864784e-07, 20.000000000000000, 10.000000000000000,
b4688136 11954 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 11955 { -1.7169507967699695e-06, 20.000000000000000, 10.000000000000000,
b4688136 11956 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 11957 { -4.5236439749819329e-06, 20.000000000000000, 10.000000000000000,
b4688136 11958 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 11959 { -5.5690492560381956e-06, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11960 8.0000000000000000, -0.50000000000000000, 0.0 },
11961 { 5.6914115606653561e-05, 20.000000000000000, 10.000000000000000,
11962 8.0000000000000000, -0.39999999999999991, 0.0 },
11963 { 0.00082507252097489250, 20.000000000000000, 10.000000000000000,
11964 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 11965 { 0.0085739249288230429, 20.000000000000000, 10.000000000000000,
b4688136 11966 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 11967 { 0.088244357683754687, 20.000000000000000, 10.000000000000000,
b4688136 11968 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 11969 { 1.0000000000000000, 20.000000000000000, 10.000000000000000,
b4688136 11970 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 11971 { 13.387208440156897, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11972 8.0000000000000000, 0.10000000000000009, 0.0 },
11973 { 226.77895441155252, 20.000000000000000, 10.000000000000000,
11974 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 11975 { 5281.5716482686785, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11976 8.0000000000000000, 0.30000000000000004, 0.0 },
11977 { 189431.77762850633, 20.000000000000000, 10.000000000000000,
11978 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 11979 { 12408149.333333332, 20.000000000000000, 10.000000000000000,
b4688136 11980 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 11981 { 1966782292.5839682, 20.000000000000000, 10.000000000000000,
b4688136
ESR
11982 8.0000000000000000, 0.60000000000000009, 0.0 },
11983 { 1274123112205.7700, 20.000000000000000, 10.000000000000000,
11984 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 11985 { 10903676350911508., 20.000000000000000, 10.000000000000000,
b4688136
ESR
11986 8.0000000000000000, 0.80000000000000004, 0.0 },
11987 { 5.1850000000001411e+22, 20.000000000000000, 10.000000000000000,
11988 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
11989};
11990const double toler239 = 2.5000000000000020e-13;
11991
11992// Test data for a=20.000000000000000, b=10.000000000000000, c=10.000000000000000.
b4688136 11993// max(|f - f_GSL|): 475136.00000000000 at index 18
2be75957 11994// max(|f - f_GSL| / |f_GSL|): 5.4067200000000052e-15
b4688136
ESR
11995// mean(f - f_GSL): 25007.185032091642
11996// variance(f - f_GSL): 11881799540.814577
11997// stddev(f - f_GSL): 109003.66755671379
2be75957
ESR
11998const testcase_hyperg<double>
11999data240[19] =
12000{
12001 { 2.6602838683283435e-06, 20.000000000000000, 10.000000000000000,
b4688136 12002 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 12003 { 7.8442223930072316e-06, 20.000000000000000, 10.000000000000000,
b4688136 12004 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 12005 { 2.4604898194634598e-05, 20.000000000000000, 10.000000000000000,
b4688136 12006 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 12007 { 8.2718061255302686e-05, 20.000000000000000, 10.000000000000000,
b4688136 12008 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 12009 { 0.00030072865982171723, 20.000000000000000, 10.000000000000000,
b4688136
ESR
12010 10.000000000000000, -0.50000000000000000, 0.0 },
12011 { 0.0011951964277455204, 20.000000000000000, 10.000000000000000,
12012 10.000000000000000, -0.39999999999999991, 0.0 },
12013 { 0.0052617832469731996, 20.000000000000000, 10.000000000000000,
12014 10.000000000000000, -0.29999999999999993, 0.0 },
12015 { 0.026084053304588850, 20.000000000000000, 10.000000000000000,
12016 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 12017 { 0.14864362802414346, 20.000000000000000, 10.000000000000000,
b4688136 12018 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 12019 { 1.0000000000000000, 20.000000000000000, 10.000000000000000,
b4688136 12020 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 12021 { 8.2252633399699757, 20.000000000000000, 10.000000000000000,
b4688136
ESR
12022 10.000000000000000, 0.10000000000000009, 0.0 },
12023 { 86.736173798840738, 20.000000000000000, 10.000000000000000,
12024 10.000000000000000, 0.20000000000000018, 0.0 },
12025 { 1253.2542894196868, 20.000000000000000, 10.000000000000000,
12026 10.000000000000000, 0.30000000000000004, 0.0 },
12027 { 27351.112277912678, 20.000000000000000, 10.000000000000000,
12028 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 12029 { 1048576.0000000000, 20.000000000000000, 10.000000000000000,
b4688136 12030 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 12031 { 90949470.177293226, 20.000000000000000, 10.000000000000000,
b4688136
ESR
12032 10.000000000000000, 0.60000000000000009, 0.0 },
12033 { 28679719907.924767, 20.000000000000000, 10.000000000000000,
12034 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 12035 { 95367431640624.906, 20.000000000000000, 10.000000000000000,
b4688136
ESR
12036 10.000000000000000, 0.80000000000000004, 0.0 },
12037 { 1.0000000000000220e+20, 20.000000000000000, 10.000000000000000,
12038 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
12039};
12040const double toler240 = 5.0000000000000039e-13;
12041
12042// Test data for a=20.000000000000000, b=20.000000000000000, c=2.0000000000000000.
b4688136
ESR
12043// max(|f - f_GSL|): 8.1129638414606682e+31 at index 18
12044// max(|f - f_GSL| / |f_GSL|): 2.1657042453579367e-15
12045// mean(f - f_GSL): 4.2699809691927378e+30
12046// variance(f - f_GSL): 3.3808552803188121e+96
12047// stddev(f - f_GSL): 1.8387102219541860e+48
2be75957
ESR
12048const testcase_hyperg<double>
12049data241[19] =
12050{
12051 { 7.4612991227725660e-09, 20.000000000000000, 20.000000000000000,
b4688136 12052 2.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 12053 { 1.1006588952366092e-07, 20.000000000000000, 20.000000000000000,
b4688136 12054 2.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 12055 { 2.0126933732744113e-07, 20.000000000000000, 20.000000000000000,
b4688136 12056 2.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 12057 { -1.0013775379571396e-06, 20.000000000000000, 20.000000000000000,
b4688136 12058 2.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 12059 { -3.0371956856925611e-06, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12060 2.0000000000000000, -0.50000000000000000, 0.0 },
12061 { 2.2012669924829930e-05, 20.000000000000000, 20.000000000000000,
12062 2.0000000000000000, -0.39999999999999991, 0.0 },
12063 { -6.2415598025411788e-05, 20.000000000000000, 20.000000000000000,
12064 2.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 12065 { 0.00033551320394368590, 20.000000000000000, 20.000000000000000,
b4688136 12066 2.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 12067 { -0.0062342152641436752, 20.000000000000000, 20.000000000000000,
b4688136 12068 2.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 12069 { 1.0000000000000000, 20.000000000000000, 20.000000000000000,
b4688136 12070 2.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 12071 { 34830.688900741610, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12072 2.0000000000000000, 0.10000000000000009, 0.0 },
12073 { 67626221.263031960, 20.000000000000000, 20.000000000000000,
12074 2.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 12075 { 102764604848.69762, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12076 2.0000000000000000, 0.30000000000000004, 0.0 },
12077 { 220278355222376.97, 20.000000000000000, 20.000000000000000,
12078 2.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 12079 { 1.0422324699794536e+18, 20.000000000000000, 20.000000000000000,
b4688136 12080 2.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 12081 { 1.9128731788368004e+22, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12082 2.0000000000000000, 0.60000000000000009, 0.0 },
12083 { 3.5234592919486348e+27, 20.000000000000000, 20.000000000000000,
12084 2.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 12085 { 5.0867023209025249e+34, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12086 2.0000000000000000, 0.80000000000000004, 0.0 },
12087 { 3.7461088506661713e+46, 20.000000000000000, 20.000000000000000,
12088 2.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
12089};
12090const double toler241 = 2.5000000000000020e-13;
12091
12092// Test data for a=20.000000000000000, b=20.000000000000000, c=4.0000000000000000.
b4688136
ESR
12093// max(|f - f_GSL|): 4.3327901374988310e+27 at index 18
12094// max(|f - f_GSL| / |f_GSL|): 2.2075464057599215e-15
12095// mean(f - f_GSL): 2.2804158618486009e+26
12096// variance(f - f_GSL): 1.7798116217456159e+67
12097// stddev(f - f_GSL): 4.2187813663967183e+33
2be75957
ESR
12098const testcase_hyperg<double>
12099data242[19] =
12100{
12101 { -1.5895901122487120e-09, 20.000000000000000, 20.000000000000000,
b4688136 12102 4.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 12103 { -2.4403576191590296e-09, 20.000000000000000, 20.000000000000000,
b4688136 12104 4.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 12105 { 1.1622915284663225e-08, 20.000000000000000, 20.000000000000000,
b4688136 12106 4.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 12107 { 6.3899796223275262e-08, 20.000000000000000, 20.000000000000000,
b4688136 12108 4.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 12109 { -1.3503608350984134e-07, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12110 4.0000000000000000, -0.50000000000000000, 0.0 },
12111 { -1.2198533624395468e-06, 20.000000000000000, 20.000000000000000,
12112 4.0000000000000000, -0.39999999999999991, 0.0 },
12113 { 9.9086618121819025e-06, 20.000000000000000, 20.000000000000000,
12114 4.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 12115 { -7.6797020080190715e-05, 20.000000000000000, 20.000000000000000,
b4688136 12116 4.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 12117 { 0.0013196405087170897, 20.000000000000000, 20.000000000000000,
b4688136 12118 4.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 12119 { 1.0000000000000000, 20.000000000000000, 20.000000000000000,
b4688136 12120 4.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 12121 { 2274.2044768143564, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12122 4.0000000000000000, 0.10000000000000009, 0.0 },
12123 { 1611640.1560475677, 20.000000000000000, 20.000000000000000,
12124 4.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 12125 { 1147063984.7359734, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12126 4.0000000000000000, 0.30000000000000004, 0.0 },
12127 { 1253162497163.8503, 20.000000000000000, 20.000000000000000,
12128 4.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 12129 { 3071321673390476.0, 20.000000000000000, 20.000000000000000,
b4688136 12130 4.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 12131 { 2.8221123559124324e+19, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12132 4.0000000000000000, 0.60000000000000009, 0.0 },
12133 { 2.3658463807420230e+24, 20.000000000000000, 20.000000000000000,
12134 4.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 12135 { 1.2596553731345468e+31, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12136 4.0000000000000000, 0.80000000000000004, 0.0 },
12137 { 1.9627175792063675e+42, 20.000000000000000, 20.000000000000000,
12138 4.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
12139};
12140const double toler242 = 2.5000000000000020e-13;
12141
12142// Test data for a=20.000000000000000, b=20.000000000000000, c=6.0000000000000000.
b4688136
ESR
12143// max(|f - f_GSL|): 7.5557863725914323e+23 at index 18
12144// max(|f - f_GSL| / |f_GSL|): 1.9837376456389093e-15
12145// mean(f - f_GSL): 3.9767296698428338e+22
12146// variance(f - f_GSL): 4.6773832769218855e+49
12147// stddev(f - f_GSL): 6.8391397682178457e+24
2be75957
ESR
12148const testcase_hyperg<double>
12149data243[19] =
12150{
12151 { 8.0159783892777232e-11, 20.000000000000000, 20.000000000000000,
b4688136 12152 6.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 12153 { -6.4422705184649393e-10, 20.000000000000000, 20.000000000000000,
b4688136 12154 6.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 12155 { -3.7526132950808576e-09, 20.000000000000000, 20.000000000000000,
b4688136 12156 6.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 12157 { -1.7692034036274638e-09, 20.000000000000000, 20.000000000000000,
b4688136 12158 6.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 12159 { 7.9304558764774354e-08, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12160 6.0000000000000000, -0.50000000000000000, 0.0 },
12161 { 5.9348070417710214e-08, 20.000000000000000, 20.000000000000000,
12162 6.0000000000000000, -0.39999999999999991, 0.0 },
12163 { -3.5827694518623355e-06, 20.000000000000000, 20.000000000000000,
12164 6.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 12165 { 4.4951490418031519e-05, 20.000000000000000, 20.000000000000000,
b4688136 12166 6.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 12167 { -0.0013716249406309328, 20.000000000000000, 20.000000000000000,
b4688136 12168 6.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 12169 { 1.0000000000000000, 20.000000000000000, 20.000000000000000,
b4688136 12170 6.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 12171 { 415.32493304415505, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12172 6.0000000000000000, 0.10000000000000009, 0.0 },
12173 { 121300.42991518755, 20.000000000000000, 20.000000000000000,
12174 6.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 12175 { 42725673.833462097, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12176 6.0000000000000000, 0.30000000000000004, 0.0 },
12177 { 24588915328.262096, 20.000000000000000, 20.000000000000000,
12178 6.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 12179 { 31929082412503.652, 20.000000000000000, 20.000000000000000,
b4688136 12180 6.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 12181 { 1.4934954443280477e+17, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12182 6.0000000000000000, 0.60000000000000009, 0.0 },
12183 { 5.7726220597697614e+21, 20.000000000000000, 20.000000000000000,
12184 6.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 12185 { 1.1454387824049374e+28, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12186 6.0000000000000000, 0.80000000000000004, 0.0 },
12187 { 3.8088637321584496e+38, 20.000000000000000, 20.000000000000000,
12188 6.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
12189};
12190const double toler243 = 2.5000000000000020e-13;
12191
12192// Test data for a=20.000000000000000, b=20.000000000000000, c=8.0000000000000000.
b4688136
ESR
12193// max(|f - f_GSL|): 3.3204139332677193e+20 at index 18
12194// max(|f - f_GSL| / |f_GSL|): 1.9148846081414276e-15
12195// mean(f - f_GSL): 1.7475862807802462e+19
12196// variance(f - f_GSL): 6.4226791492038630e+39
12197// stddev(f - f_GSL): 8.0141619332303634e+19
2be75957
ESR
12198const testcase_hyperg<double>
12199data244[19] =
12200{
12201 { 1.0699067880816065e-10, 20.000000000000000, 20.000000000000000,
b4688136 12202 8.0000000000000000, -0.90000000000000002, 0.0 },
2be75957 12203 { 5.4297771645951943e-10, 20.000000000000000, 20.000000000000000,
b4688136 12204 8.0000000000000000, -0.80000000000000004, 0.0 },
2be75957 12205 { 9.7625476382187751e-10, 20.000000000000000, 20.000000000000000,
b4688136 12206 8.0000000000000000, -0.69999999999999996, 0.0 },
2be75957 12207 { -6.7257763949908548e-09, 20.000000000000000, 20.000000000000000,
b4688136 12208 8.0000000000000000, -0.59999999999999998, 0.0 },
2be75957 12209 { -5.4634571496409877e-08, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12210 8.0000000000000000, -0.50000000000000000, 0.0 },
12211 { 1.4595644217972025e-07, 20.000000000000000, 20.000000000000000,
12212 8.0000000000000000, -0.39999999999999991, 0.0 },
12213 { 3.3515966496921257e-06, 20.000000000000000, 20.000000000000000,
12214 8.0000000000000000, -0.29999999999999993, 0.0 },
2be75957 12215 { -6.5848086985738461e-05, 20.000000000000000, 20.000000000000000,
b4688136 12216 8.0000000000000000, -0.19999999999999996, 0.0 },
2be75957 12217 { 0.0034800171306214847, 20.000000000000000, 20.000000000000000,
b4688136 12218 8.0000000000000000, -0.099999999999999978, 0.0 },
2be75957 12219 { 1.0000000000000000, 20.000000000000000, 20.000000000000000,
b4688136 12220 8.0000000000000000, 0.0000000000000000, 0.0 },
2be75957 12221 { 130.93865856750304, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12222 8.0000000000000000, 0.10000000000000009, 0.0 },
12223 { 17850.203502975721, 20.000000000000000, 20.000000000000000,
12224 8.0000000000000000, 0.20000000000000018, 0.0 },
2be75957 12225 { 3307058.5655149994, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12226 8.0000000000000000, 0.30000000000000004, 0.0 },
12227 { 1041065396.2302928, 20.000000000000000, 20.000000000000000,
12228 8.0000000000000000, 0.40000000000000013, 0.0 },
2be75957 12229 { 735221357488.41736, 20.000000000000000, 20.000000000000000,
b4688136 12230 8.0000000000000000, 0.50000000000000000, 0.0 },
2be75957 12231 { 1785176805049585.2, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12232 8.0000000000000000, 0.60000000000000009, 0.0 },
12233 { 3.2302829930269979e+19, 20.000000000000000, 20.000000000000000,
12234 8.0000000000000000, 0.70000000000000018, 0.0 },
2be75957 12235 { 2.4184909805178299e+25, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12236 8.0000000000000000, 0.80000000000000004, 0.0 },
12237 { 1.7340021007795807e+35, 20.000000000000000, 20.000000000000000,
12238 8.0000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
12239};
12240const double toler244 = 2.5000000000000020e-13;
12241
12242// Test data for a=20.000000000000000, b=20.000000000000000, c=10.000000000000000.
b4688136
ESR
12243// max(|f - f_GSL|): 3.4227357168015770e+17 at index 18
12244// max(|f - f_GSL| / |f_GSL|): 2.2509396750113666e-15
12245// mean(f - f_GSL): 18014398513897048.
12246// variance(f - f_GSL): 6.1659968607222131e+33
12247// stddev(f - f_GSL): 78523861728281120.
2be75957
ESR
12248const testcase_hyperg<double>
12249data245[19] =
12250{
12251 { -1.7945360901577764e-10, 20.000000000000000, 20.000000000000000,
b4688136 12252 10.000000000000000, -0.90000000000000002, 0.0 },
2be75957 12253 { -4.4440665776938741e-10, 20.000000000000000, 20.000000000000000,
b4688136 12254 10.000000000000000, -0.80000000000000004, 0.0 },
2be75957 12255 { 6.6171615263373664e-10, 20.000000000000000, 20.000000000000000,
b4688136 12256 10.000000000000000, -0.69999999999999996, 0.0 },
2be75957 12257 { 1.5453889374050929e-08, 20.000000000000000, 20.000000000000000,
b4688136 12258 10.000000000000000, -0.59999999999999998, 0.0 },
2be75957 12259 { 7.5754083909301490e-08, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12260 10.000000000000000, -0.50000000000000000, 0.0 },
12261 { -4.1113628650335901e-07, 20.000000000000000, 20.000000000000000,
12262 10.000000000000000, -0.39999999999999991, 0.0 },
12263 { -9.5300704263777713e-06, 20.000000000000000, 20.000000000000000,
12264 10.000000000000000, -0.29999999999999993, 0.0 },
2be75957 12265 { 0.00016081533175773833, 20.000000000000000, 20.000000000000000,
b4688136 12266 10.000000000000000, -0.19999999999999996, 0.0 },
2be75957 12267 { 0.017684650940379586, 20.000000000000000, 20.000000000000000,
b4688136 12268 10.000000000000000, -0.099999999999999978, 0.0 },
2be75957 12269 { 1.0000000000000000, 20.000000000000000, 20.000000000000000,
b4688136 12270 10.000000000000000, 0.0000000000000000, 0.0 },
2be75957 12271 { 57.562247312454403, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12272 10.000000000000000, 0.10000000000000009, 0.0 },
12273 { 4124.4159820362947, 20.000000000000000, 20.000000000000000,
12274 10.000000000000000, 0.20000000000000018, 0.0 },
2be75957 12275 { 428774.21436196787, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12276 10.000000000000000, 0.30000000000000004, 0.0 },
12277 { 76996819.900893494, 20.000000000000000, 20.000000000000000,
12278 10.000000000000000, 0.40000000000000013, 0.0 },
2be75957 12279 { 30473174828.943691, 20.000000000000000, 20.000000000000000,
b4688136 12280 10.000000000000000, 0.50000000000000000, 0.0 },
2be75957 12281 { 39291970835753.094, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12282 10.000000000000000, 0.60000000000000009, 0.0 },
12283 { 3.3890331048069786e+17, 20.000000000000000, 20.000000000000000,
12284 10.000000000000000, 0.70000000000000018, 0.0 },
2be75957 12285 { 9.7157373454594049e+22, 20.000000000000000, 20.000000000000000,
b4688136
ESR
12286 10.000000000000000, 0.80000000000000004, 0.0 },
12287 { 1.5205808288861820e+32, 20.000000000000000, 20.000000000000000,
12288 10.000000000000000, 0.90000000000000013, 0.0 },
2be75957
ESR
12289};
12290const double toler245 = 2.5000000000000020e-13;
12291
b4688136 12292template<typename Ret, unsigned int Num>
2be75957 12293 void
b4688136 12294 test(const testcase_hyperg<Ret> (&data)[Num], Ret toler)
2be75957 12295 {
b4688136
ESR
12296 bool test __attribute__((unused)) = true;
12297 const Ret eps = std::numeric_limits<Ret>::epsilon();
12298 Ret max_abs_diff = -Ret(1);
12299 Ret max_abs_frac = -Ret(1);
2be75957
ESR
12300 unsigned int num_datum = Num;
12301 for (unsigned int i = 0; i < num_datum; ++i)
12302 {
b4688136 12303 const Ret f = __gnu_cxx::hyperg(data[i].a, data[i].b,
2be75957 12304 data[i].c, data[i].x);
b4688136
ESR
12305 const Ret f0 = data[i].f0;
12306 const Ret diff = f - f0;
2be75957 12307 if (std::abs(diff) > max_abs_diff)
b4688136
ESR
12308 max_abs_diff = std::abs(diff);
12309 if (std::abs(f0) > Ret(10) * eps
12310 && std::abs(f) > Ret(10) * eps)
2be75957 12311 {
b4688136 12312 const Ret frac = diff / f0;
2be75957
ESR
12313 if (std::abs(frac) > max_abs_frac)
12314 max_abs_frac = std::abs(frac);
12315 }
12316 }
12317 VERIFY(max_abs_frac < toler);
12318 }
12319
12320int
12321main()
12322{
12323 test(data001, toler001);
12324 test(data002, toler002);
12325 test(data003, toler003);
12326 test(data004, toler004);
12327 test(data005, toler005);
12328 test(data006, toler006);
12329 test(data007, toler007);
12330 test(data008, toler008);
12331 test(data009, toler009);
12332 test(data010, toler010);
12333 test(data011, toler011);
12334 test(data012, toler012);
12335 test(data013, toler013);
12336 test(data014, toler014);
12337 test(data015, toler015);
12338 test(data016, toler016);
12339 test(data017, toler017);
12340 test(data018, toler018);
12341 test(data019, toler019);
12342 test(data020, toler020);
12343 test(data021, toler021);
12344 test(data022, toler022);
12345 test(data023, toler023);
12346 test(data024, toler024);
12347 test(data025, toler025);
12348 test(data026, toler026);
12349 test(data027, toler027);
12350 test(data028, toler028);
12351 test(data029, toler029);
12352 test(data030, toler030);
12353 test(data031, toler031);
12354 test(data032, toler032);
12355 test(data033, toler033);
12356 test(data034, toler034);
12357 test(data035, toler035);
12358 test(data036, toler036);
12359 test(data037, toler037);
12360 test(data038, toler038);
12361 test(data039, toler039);
12362 test(data040, toler040);
12363 test(data041, toler041);
12364 test(data042, toler042);
12365 test(data043, toler043);
12366 test(data044, toler044);
12367 test(data045, toler045);
12368 test(data046, toler046);
12369 test(data047, toler047);
12370 test(data048, toler048);
12371 test(data049, toler049);
12372 test(data050, toler050);
12373 test(data051, toler051);
12374 test(data052, toler052);
12375 test(data053, toler053);
12376 test(data054, toler054);
12377 test(data055, toler055);
12378 test(data056, toler056);
12379 test(data057, toler057);
12380 test(data058, toler058);
12381 test(data059, toler059);
12382 test(data060, toler060);
12383 test(data061, toler061);
12384 test(data062, toler062);
12385 test(data063, toler063);
12386 test(data064, toler064);
12387 test(data065, toler065);
12388 test(data066, toler066);
12389 test(data067, toler067);
12390 test(data068, toler068);
12391 test(data069, toler069);
12392 test(data070, toler070);
12393 test(data071, toler071);
12394 test(data072, toler072);
12395 test(data073, toler073);
12396 test(data074, toler074);
12397 test(data075, toler075);
12398 test(data076, toler076);
12399 test(data077, toler077);
12400 test(data078, toler078);
12401 test(data079, toler079);
12402 test(data080, toler080);
12403 test(data081, toler081);
12404 test(data082, toler082);
12405 test(data083, toler083);
12406 test(data084, toler084);
12407 test(data085, toler085);
12408 test(data086, toler086);
12409 test(data087, toler087);
12410 test(data088, toler088);
12411 test(data089, toler089);
12412 test(data090, toler090);
12413 test(data091, toler091);
12414 test(data092, toler092);
12415 test(data093, toler093);
12416 test(data094, toler094);
12417 test(data095, toler095);
12418 test(data096, toler096);
12419 test(data097, toler097);
12420 test(data098, toler098);
12421 test(data099, toler099);
12422 test(data100, toler100);
12423 test(data101, toler101);
12424 test(data102, toler102);
12425 test(data103, toler103);
12426 test(data104, toler104);
12427 test(data105, toler105);
12428 test(data106, toler106);
12429 test(data107, toler107);
12430 test(data108, toler108);
12431 test(data109, toler109);
12432 test(data110, toler110);
12433 test(data111, toler111);
12434 test(data112, toler112);
12435 test(data113, toler113);
12436 test(data114, toler114);
12437 test(data115, toler115);
12438 test(data116, toler116);
12439 test(data117, toler117);
12440 test(data118, toler118);
12441 test(data119, toler119);
12442 test(data120, toler120);
12443 test(data121, toler121);
12444 test(data122, toler122);
12445 test(data123, toler123);
12446 test(data124, toler124);
12447 test(data125, toler125);
12448 test(data126, toler126);
12449 test(data127, toler127);
12450 test(data128, toler128);
12451 test(data129, toler129);
12452 test(data130, toler130);
12453 test(data131, toler131);
12454 test(data132, toler132);
12455 test(data133, toler133);
12456 test(data134, toler134);
12457 test(data135, toler135);
12458 test(data136, toler136);
12459 test(data137, toler137);
12460 test(data138, toler138);
12461 test(data139, toler139);
12462 test(data140, toler140);
12463 test(data141, toler141);
12464 test(data142, toler142);
12465 test(data143, toler143);
12466 test(data144, toler144);
12467 test(data145, toler145);
12468 test(data146, toler146);
12469 test(data147, toler147);
12470 test(data148, toler148);
12471 test(data149, toler149);
12472 test(data150, toler150);
12473 test(data151, toler151);
12474 test(data152, toler152);
12475 test(data153, toler153);
12476 test(data154, toler154);
12477 test(data155, toler155);
12478 test(data156, toler156);
12479 test(data157, toler157);
12480 test(data158, toler158);
12481 test(data159, toler159);
12482 test(data160, toler160);
12483 test(data161, toler161);
12484 test(data162, toler162);
12485 test(data163, toler163);
12486 test(data164, toler164);
12487 test(data165, toler165);
12488 test(data166, toler166);
12489 test(data167, toler167);
12490 test(data168, toler168);
12491 test(data169, toler169);
12492 test(data170, toler170);
12493 test(data171, toler171);
12494 test(data172, toler172);
12495 test(data173, toler173);
12496 test(data174, toler174);
12497 test(data175, toler175);
12498 test(data176, toler176);
12499 test(data177, toler177);
12500 test(data178, toler178);
12501 test(data179, toler179);
12502 test(data180, toler180);
12503 test(data181, toler181);
12504 test(data182, toler182);
12505 test(data183, toler183);
12506 test(data184, toler184);
12507 test(data185, toler185);
12508 test(data186, toler186);
12509 test(data187, toler187);
12510 test(data188, toler188);
12511 test(data189, toler189);
12512 test(data190, toler190);
12513 test(data191, toler191);
12514 test(data192, toler192);
12515 test(data193, toler193);
12516 test(data194, toler194);
12517 test(data195, toler195);
12518 test(data196, toler196);
12519 test(data197, toler197);
12520 test(data198, toler198);
12521 test(data199, toler199);
12522 test(data200, toler200);
12523 test(data201, toler201);
12524 test(data202, toler202);
12525 test(data203, toler203);
12526 test(data204, toler204);
12527 test(data205, toler205);
12528 test(data206, toler206);
12529 test(data207, toler207);
12530 test(data208, toler208);
12531 test(data209, toler209);
12532 test(data210, toler210);
12533 test(data211, toler211);
12534 test(data212, toler212);
12535 test(data213, toler213);
12536 test(data214, toler214);
12537 test(data215, toler215);
12538 test(data216, toler216);
12539 test(data217, toler217);
12540 test(data218, toler218);
12541 test(data219, toler219);
12542 test(data220, toler220);
12543 test(data221, toler221);
12544 test(data222, toler222);
12545 test(data223, toler223);
12546 test(data224, toler224);
12547 test(data225, toler225);
12548 test(data226, toler226);
12549 test(data227, toler227);
12550 test(data228, toler228);
12551 test(data229, toler229);
12552 test(data230, toler230);
12553 test(data231, toler231);
12554 test(data232, toler232);
12555 test(data233, toler233);
12556 test(data234, toler234);
12557 test(data235, toler235);
12558 test(data236, toler236);
12559 test(data237, toler237);
12560 test(data238, toler238);
12561 test(data239, toler239);
12562 test(data240, toler240);
12563 test(data241, toler241);
12564 test(data242, toler242);
12565 test(data243, toler243);
12566 test(data244, toler244);
12567 test(data245, toler245);
12568 return 0;
12569}