2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
[official-gcc.git] / libstdc++-v3 / testsuite / ext / special_functions / conf_hyperg / check_value.cc
blob276efd6db74eb08945cb00099f3b78ce8f8a5173
1 // { dg-options "-D__STDCPP_WANT_MATH_SPEC_FUNCS__" }
2 //
3 // Copyright (C) 2016 Free Software Foundation, Inc.
4 //
5 // This file is part of the GNU ISO C++ Library. This library is free
6 // software; you can redistribute it and/or modify it under the
7 // terms of the GNU General Public License as published by the
8 // Free Software Foundation; either version 3, or (at your option)
9 // any later version.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License along
17 // with this library; see the file COPYING3. If not see
18 // <http://www.gnu.org/licenses/>.
20 // conf_hyperg
21 // Compare against values generated by the GNU Scientific Library.
22 // The GSL can be found on the web: http://www.gnu.org/software/gsl/
23 #include <limits>
24 #include <cmath>
25 #if defined(__TEST_DEBUG)
26 # include <iostream>
27 # define VERIFY(A) \
28 if (!(A)) \
29 { \
30 std::cout << "line " << __LINE__ \
31 << " max_abs_frac = " << max_abs_frac \
32 << std::endl; \
34 #else
35 # include <testsuite_hooks.h>
36 #endif
37 #include <specfun_testcase.h>
40 // Test data for a=0.0000000000000000, c=1.0000000000000000.
41 // max(|f - f_GSL|): 0.0000000000000000
42 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
43 const testcase_conf_hyperg<double>
44 data001[21] =
46 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
47 -10.000000000000000 },
48 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
49 -9.0000000000000000 },
50 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
51 -8.0000000000000000 },
52 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
53 -7.0000000000000000 },
54 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
55 -6.0000000000000000 },
56 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
57 -5.0000000000000000 },
58 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
59 -4.0000000000000000 },
60 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
61 -3.0000000000000000 },
62 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
63 -2.0000000000000000 },
64 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
65 -1.0000000000000000 },
66 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
67 0.0000000000000000 },
68 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
69 1.0000000000000000 },
70 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
71 2.0000000000000000 },
72 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
73 3.0000000000000000 },
74 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
75 4.0000000000000000 },
76 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
77 5.0000000000000000 },
78 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
79 6.0000000000000000 },
80 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
81 7.0000000000000000 },
82 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
83 8.0000000000000000 },
84 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
85 9.0000000000000000 },
86 { 1.0000000000000000, 0.0000000000000000, 1.0000000000000000,
87 10.000000000000000 },
89 const double toler001 = 2.5000000000000020e-13;
91 // Test data for a=0.0000000000000000, c=2.0000000000000000.
92 // max(|f - f_GSL|): 0.0000000000000000
93 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
94 const testcase_conf_hyperg<double>
95 data002[21] =
97 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
98 -10.000000000000000 },
99 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
100 -9.0000000000000000 },
101 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
102 -8.0000000000000000 },
103 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
104 -7.0000000000000000 },
105 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
106 -6.0000000000000000 },
107 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
108 -5.0000000000000000 },
109 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
110 -4.0000000000000000 },
111 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
112 -3.0000000000000000 },
113 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
114 -2.0000000000000000 },
115 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
116 -1.0000000000000000 },
117 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
118 0.0000000000000000 },
119 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
120 1.0000000000000000 },
121 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
122 2.0000000000000000 },
123 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
124 3.0000000000000000 },
125 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
126 4.0000000000000000 },
127 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
128 5.0000000000000000 },
129 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
130 6.0000000000000000 },
131 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
132 7.0000000000000000 },
133 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
134 8.0000000000000000 },
135 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
136 9.0000000000000000 },
137 { 1.0000000000000000, 0.0000000000000000, 2.0000000000000000,
138 10.000000000000000 },
140 const double toler002 = 2.5000000000000020e-13;
142 // Test data for a=0.0000000000000000, c=3.0000000000000000.
143 // max(|f - f_GSL|): 0.0000000000000000
144 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
145 const testcase_conf_hyperg<double>
146 data003[21] =
148 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
149 -10.000000000000000 },
150 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
151 -9.0000000000000000 },
152 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
153 -8.0000000000000000 },
154 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
155 -7.0000000000000000 },
156 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
157 -6.0000000000000000 },
158 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
159 -5.0000000000000000 },
160 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
161 -4.0000000000000000 },
162 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
163 -3.0000000000000000 },
164 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
165 -2.0000000000000000 },
166 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
167 -1.0000000000000000 },
168 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
169 0.0000000000000000 },
170 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
171 1.0000000000000000 },
172 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
173 2.0000000000000000 },
174 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
175 3.0000000000000000 },
176 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
177 4.0000000000000000 },
178 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
179 5.0000000000000000 },
180 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
181 6.0000000000000000 },
182 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
183 7.0000000000000000 },
184 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
185 8.0000000000000000 },
186 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
187 9.0000000000000000 },
188 { 1.0000000000000000, 0.0000000000000000, 3.0000000000000000,
189 10.000000000000000 },
191 const double toler003 = 2.5000000000000020e-13;
193 // Test data for a=0.0000000000000000, c=4.0000000000000000.
194 // max(|f - f_GSL|): 0.0000000000000000
195 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
196 const testcase_conf_hyperg<double>
197 data004[21] =
199 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
200 -10.000000000000000 },
201 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
202 -9.0000000000000000 },
203 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
204 -8.0000000000000000 },
205 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
206 -7.0000000000000000 },
207 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
208 -6.0000000000000000 },
209 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
210 -5.0000000000000000 },
211 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
212 -4.0000000000000000 },
213 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
214 -3.0000000000000000 },
215 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
216 -2.0000000000000000 },
217 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
218 -1.0000000000000000 },
219 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
220 0.0000000000000000 },
221 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
222 1.0000000000000000 },
223 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
224 2.0000000000000000 },
225 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
226 3.0000000000000000 },
227 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
228 4.0000000000000000 },
229 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
230 5.0000000000000000 },
231 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
232 6.0000000000000000 },
233 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
234 7.0000000000000000 },
235 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
236 8.0000000000000000 },
237 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
238 9.0000000000000000 },
239 { 1.0000000000000000, 0.0000000000000000, 4.0000000000000000,
240 10.000000000000000 },
242 const double toler004 = 2.5000000000000020e-13;
244 // Test data for a=0.0000000000000000, c=5.0000000000000000.
245 // max(|f - f_GSL|): 0.0000000000000000
246 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
247 const testcase_conf_hyperg<double>
248 data005[21] =
250 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
251 -10.000000000000000 },
252 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
253 -9.0000000000000000 },
254 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
255 -8.0000000000000000 },
256 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
257 -7.0000000000000000 },
258 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
259 -6.0000000000000000 },
260 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
261 -5.0000000000000000 },
262 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
263 -4.0000000000000000 },
264 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
265 -3.0000000000000000 },
266 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
267 -2.0000000000000000 },
268 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
269 -1.0000000000000000 },
270 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
271 0.0000000000000000 },
272 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
273 1.0000000000000000 },
274 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
275 2.0000000000000000 },
276 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
277 3.0000000000000000 },
278 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
279 4.0000000000000000 },
280 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
281 5.0000000000000000 },
282 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
283 6.0000000000000000 },
284 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
285 7.0000000000000000 },
286 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
287 8.0000000000000000 },
288 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
289 9.0000000000000000 },
290 { 1.0000000000000000, 0.0000000000000000, 5.0000000000000000,
291 10.000000000000000 },
293 const double toler005 = 2.5000000000000020e-13;
295 // Test data for a=0.0000000000000000, c=6.0000000000000000.
296 // max(|f - f_GSL|): 0.0000000000000000
297 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
298 const testcase_conf_hyperg<double>
299 data006[21] =
301 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
302 -10.000000000000000 },
303 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
304 -9.0000000000000000 },
305 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
306 -8.0000000000000000 },
307 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
308 -7.0000000000000000 },
309 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
310 -6.0000000000000000 },
311 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
312 -5.0000000000000000 },
313 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
314 -4.0000000000000000 },
315 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
316 -3.0000000000000000 },
317 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
318 -2.0000000000000000 },
319 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
320 -1.0000000000000000 },
321 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
322 0.0000000000000000 },
323 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
324 1.0000000000000000 },
325 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
326 2.0000000000000000 },
327 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
328 3.0000000000000000 },
329 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
330 4.0000000000000000 },
331 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
332 5.0000000000000000 },
333 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
334 6.0000000000000000 },
335 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
336 7.0000000000000000 },
337 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
338 8.0000000000000000 },
339 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
340 9.0000000000000000 },
341 { 1.0000000000000000, 0.0000000000000000, 6.0000000000000000,
342 10.000000000000000 },
344 const double toler006 = 2.5000000000000020e-13;
346 // Test data for a=0.0000000000000000, c=7.0000000000000000.
347 // max(|f - f_GSL|): 0.0000000000000000
348 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
349 const testcase_conf_hyperg<double>
350 data007[21] =
352 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
353 -10.000000000000000 },
354 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
355 -9.0000000000000000 },
356 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
357 -8.0000000000000000 },
358 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
359 -7.0000000000000000 },
360 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
361 -6.0000000000000000 },
362 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
363 -5.0000000000000000 },
364 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
365 -4.0000000000000000 },
366 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
367 -3.0000000000000000 },
368 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
369 -2.0000000000000000 },
370 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
371 -1.0000000000000000 },
372 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
373 0.0000000000000000 },
374 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
375 1.0000000000000000 },
376 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
377 2.0000000000000000 },
378 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
379 3.0000000000000000 },
380 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
381 4.0000000000000000 },
382 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
383 5.0000000000000000 },
384 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
385 6.0000000000000000 },
386 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
387 7.0000000000000000 },
388 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
389 8.0000000000000000 },
390 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
391 9.0000000000000000 },
392 { 1.0000000000000000, 0.0000000000000000, 7.0000000000000000,
393 10.000000000000000 },
395 const double toler007 = 2.5000000000000020e-13;
397 // Test data for a=0.0000000000000000, c=8.0000000000000000.
398 // max(|f - f_GSL|): 0.0000000000000000
399 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
400 const testcase_conf_hyperg<double>
401 data008[21] =
403 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
404 -10.000000000000000 },
405 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
406 -9.0000000000000000 },
407 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
408 -8.0000000000000000 },
409 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
410 -7.0000000000000000 },
411 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
412 -6.0000000000000000 },
413 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
414 -5.0000000000000000 },
415 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
416 -4.0000000000000000 },
417 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
418 -3.0000000000000000 },
419 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
420 -2.0000000000000000 },
421 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
422 -1.0000000000000000 },
423 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
424 0.0000000000000000 },
425 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
426 1.0000000000000000 },
427 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
428 2.0000000000000000 },
429 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
430 3.0000000000000000 },
431 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
432 4.0000000000000000 },
433 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
434 5.0000000000000000 },
435 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
436 6.0000000000000000 },
437 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
438 7.0000000000000000 },
439 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
440 8.0000000000000000 },
441 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
442 9.0000000000000000 },
443 { 1.0000000000000000, 0.0000000000000000, 8.0000000000000000,
444 10.000000000000000 },
446 const double toler008 = 2.5000000000000020e-13;
448 // Test data for a=0.0000000000000000, c=9.0000000000000000.
449 // max(|f - f_GSL|): 0.0000000000000000
450 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
451 const testcase_conf_hyperg<double>
452 data009[21] =
454 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
455 -10.000000000000000 },
456 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
457 -9.0000000000000000 },
458 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
459 -8.0000000000000000 },
460 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
461 -7.0000000000000000 },
462 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
463 -6.0000000000000000 },
464 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
465 -5.0000000000000000 },
466 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
467 -4.0000000000000000 },
468 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
469 -3.0000000000000000 },
470 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
471 -2.0000000000000000 },
472 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
473 -1.0000000000000000 },
474 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
475 0.0000000000000000 },
476 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
477 1.0000000000000000 },
478 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
479 2.0000000000000000 },
480 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
481 3.0000000000000000 },
482 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
483 4.0000000000000000 },
484 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
485 5.0000000000000000 },
486 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
487 6.0000000000000000 },
488 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
489 7.0000000000000000 },
490 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
491 8.0000000000000000 },
492 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
493 9.0000000000000000 },
494 { 1.0000000000000000, 0.0000000000000000, 9.0000000000000000,
495 10.000000000000000 },
497 const double toler009 = 2.5000000000000020e-13;
499 // Test data for a=0.0000000000000000, c=10.000000000000000.
500 // max(|f - f_GSL|): 0.0000000000000000
501 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
502 const testcase_conf_hyperg<double>
503 data010[21] =
505 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
506 -10.000000000000000 },
507 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
508 -9.0000000000000000 },
509 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
510 -8.0000000000000000 },
511 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
512 -7.0000000000000000 },
513 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
514 -6.0000000000000000 },
515 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
516 -5.0000000000000000 },
517 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
518 -4.0000000000000000 },
519 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
520 -3.0000000000000000 },
521 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
522 -2.0000000000000000 },
523 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
524 -1.0000000000000000 },
525 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
526 0.0000000000000000 },
527 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
528 1.0000000000000000 },
529 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
530 2.0000000000000000 },
531 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
532 3.0000000000000000 },
533 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
534 4.0000000000000000 },
535 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
536 5.0000000000000000 },
537 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
538 6.0000000000000000 },
539 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
540 7.0000000000000000 },
541 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
542 8.0000000000000000 },
543 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
544 9.0000000000000000 },
545 { 1.0000000000000000, 0.0000000000000000, 10.000000000000000,
546 10.000000000000000 },
548 const double toler010 = 2.5000000000000020e-13;
550 // Test data for a=0.50000000000000000, c=1.0000000000000000.
551 // max(|f - f_GSL|): 1.1823431123048067e-11
552 // max(|f - f_GSL| / |f_GSL|): 1.8179920344425603e-13
553 const testcase_conf_hyperg<double>
554 data011[21] =
556 { 0.18354081260932842, 0.50000000000000000, 1.0000000000000000,
557 -10.000000000000000 },
558 { 0.19419827762834704, 0.50000000000000000, 1.0000000000000000,
559 -9.0000000000000000 },
560 { 0.20700192122398287, 0.50000000000000000, 1.0000000000000000,
561 -8.0000000000000000 },
562 { 0.22280243801078498, 0.50000000000000000, 1.0000000000000000,
563 -7.0000000000000000 },
564 { 0.24300035416182644, 0.50000000000000000, 1.0000000000000000,
565 -6.0000000000000000 },
566 { 0.27004644161220326, 0.50000000000000000, 1.0000000000000000,
567 -5.0000000000000000 },
568 { 0.30850832255367100, 0.50000000000000000, 1.0000000000000000,
569 -4.0000000000000000 },
570 { 0.36743360905415834, 0.50000000000000000, 1.0000000000000000,
571 -3.0000000000000000 },
572 { 0.46575960759364043, 0.50000000000000000, 1.0000000000000000,
573 -2.0000000000000000 },
574 { 0.64503527044915010, 0.50000000000000000, 1.0000000000000000,
575 -1.0000000000000000 },
576 { 1.0000000000000000, 0.50000000000000000, 1.0000000000000000,
577 0.0000000000000000 },
578 { 1.7533876543770910, 0.50000000000000000, 1.0000000000000000,
579 1.0000000000000000 },
580 { 3.4415238691253340, 0.50000000000000000, 1.0000000000000000,
581 2.0000000000000000 },
582 { 7.3801013214774045, 0.50000000000000000, 1.0000000000000000,
583 3.0000000000000000 },
584 { 16.843983681258987, 0.50000000000000000, 1.0000000000000000,
585 4.0000000000000000 },
586 { 40.078445504076420, 0.50000000000000000, 1.0000000000000000,
587 5.0000000000000000 },
588 { 98.033339697812693, 0.50000000000000000, 1.0000000000000000,
589 6.0000000000000000 },
590 { 244.33254130132138, 0.50000000000000000, 1.0000000000000000,
591 7.0000000000000000 },
592 { 617.06403040562441, 0.50000000000000000, 1.0000000000000000,
593 8.0000000000000000 },
594 { 1573.6049422133694, 0.50000000000000000, 1.0000000000000000,
595 9.0000000000000000 },
596 { 4042.7554308904109, 0.50000000000000000, 1.0000000000000000,
597 10.000000000000000 },
599 const double toler011 = 1.0000000000000006e-11;
601 // Test data for a=0.50000000000000000, c=2.0000000000000000.
602 // max(|f - f_GSL|): 1.0231815394945443e-12
603 // max(|f - f_GSL| / |f_GSL|): 2.3738284297189904e-15
604 const testcase_conf_hyperg<double>
605 data012[21] =
607 { 0.34751307955387056, 0.50000000000000000, 2.0000000000000000,
608 -10.000000000000000 },
609 { 0.36515709992587503, 0.50000000000000000, 2.0000000000000000,
610 -9.0000000000000000 },
611 { 0.38575276072642301, 0.50000000000000000, 2.0000000000000000,
612 -8.0000000000000000 },
613 { 0.41020241461382889, 0.50000000000000000, 2.0000000000000000,
614 -7.0000000000000000 },
615 { 0.43982706745912625, 0.50000000000000000, 2.0000000000000000,
616 -6.0000000000000000 },
617 { 0.47663109114346930, 0.50000000000000000, 2.0000000000000000,
618 -5.0000000000000000 },
619 { 0.52377761180260862, 0.50000000000000000, 2.0000000000000000,
620 -4.0000000000000000 },
621 { 0.58647299647508400, 0.50000000000000000, 2.0000000000000000,
622 -3.0000000000000000 },
623 { 0.67367002294334866, 0.50000000000000000, 2.0000000000000000,
624 -2.0000000000000000 },
625 { 0.80145607363402172, 0.50000000000000000, 2.0000000000000000,
626 -1.0000000000000000 },
627 { 1.0000000000000000, 0.50000000000000000, 2.0000000000000000,
628 0.0000000000000000 },
629 { 1.3281918274866849, 0.50000000000000000, 2.0000000000000000,
630 1.0000000000000000 },
631 { 1.9052621465543667, 0.50000000000000000, 2.0000000000000000,
632 2.0000000000000000 },
633 { 2.9805776178019903, 0.50000000000000000, 2.0000000000000000,
634 3.0000000000000000 },
635 { 5.0906787293171654, 0.50000000000000000, 2.0000000000000000,
636 4.0000000000000000 },
637 { 9.4185650450425982, 0.50000000000000000, 2.0000000000000000,
638 5.0000000000000000 },
639 { 18.627776225142014, 0.50000000000000000, 2.0000000000000000,
640 6.0000000000000000 },
641 { 38.823513069699622, 0.50000000000000000, 2.0000000000000000,
642 7.0000000000000000 },
643 { 84.215287700426956, 0.50000000000000000, 2.0000000000000000,
644 8.0000000000000000 },
645 { 188.31125697734257, 0.50000000000000000, 2.0000000000000000,
646 9.0000000000000000 },
647 { 431.02590173952319, 0.50000000000000000, 2.0000000000000000,
648 10.000000000000000 },
650 const double toler012 = 2.5000000000000020e-13;
652 // Test data for a=0.50000000000000000, c=3.0000000000000000.
653 // max(|f - f_GSL|): 2.4158453015843406e-13
654 // max(|f - f_GSL| / |f_GSL|): 2.5938546713928606e-15
655 const testcase_conf_hyperg<double>
656 data013[21] =
658 { 0.44148780381255504, 0.50000000000000000, 3.0000000000000000,
659 -10.000000000000000 },
660 { 0.46154890030153722, 0.50000000000000000, 3.0000000000000000,
661 -9.0000000000000000 },
662 { 0.48454520771815751, 0.50000000000000000, 3.0000000000000000,
663 -8.0000000000000000 },
664 { 0.51124131917976301, 0.50000000000000000, 3.0000000000000000,
665 -7.0000000000000000 },
666 { 0.54269682032387934, 0.50000000000000000, 3.0000000000000000,
667 -6.0000000000000000 },
668 { 0.58041888164962119, 0.50000000000000000, 3.0000000000000000,
669 -5.0000000000000000 },
670 { 0.62661371932049892, 0.50000000000000000, 3.0000000000000000,
671 -4.0000000000000000 },
672 { 0.68461315644636744, 0.50000000000000000, 3.0000000000000000,
673 -3.0000000000000000 },
674 { 0.75961975369132639, 0.50000000000000000, 3.0000000000000000,
675 -2.0000000000000000 },
676 { 0.86004702726553350, 0.50000000000000000, 3.0000000000000000,
677 -1.0000000000000000 },
678 { 1.0000000000000000, 0.50000000000000000, 3.0000000000000000,
679 0.0000000000000000 },
680 { 1.2039946674617061, 0.50000000000000000, 3.0000000000000000,
681 1.0000000000000000 },
682 { 1.5161750470251780, 0.50000000000000000, 3.0000000000000000,
683 2.0000000000000000 },
684 { 2.0187596221024697, 0.50000000000000000, 3.0000000000000000,
685 3.0000000000000000 },
686 { 2.8698033217756134, 0.50000000000000000, 3.0000000000000000,
687 4.0000000000000000 },
688 { 4.3821186043144449, 0.50000000000000000, 3.0000000000000000,
689 5.0000000000000000 },
690 { 7.1913541951514235, 0.50000000000000000, 3.0000000000000000,
691 6.0000000000000000 },
692 { 12.620107286909638, 0.50000000000000000, 3.0000000000000000,
693 7.0000000000000000 },
694 { 23.478926483036361, 0.50000000000000000, 3.0000000000000000,
695 8.0000000000000000 },
696 { 45.852981860749047, 0.50000000000000000, 3.0000000000000000,
697 9.0000000000000000 },
698 { 93.137265099245838, 0.50000000000000000, 3.0000000000000000,
699 10.000000000000000 },
701 const double toler013 = 2.5000000000000020e-13;
703 // Test data for a=0.50000000000000000, c=4.0000000000000000.
704 // max(|f - f_GSL|): 9.2370555648813024e-14
705 // max(|f - f_GSL| / |f_GSL|): 3.0116140491179400e-15
706 const testcase_conf_hyperg<double>
707 data014[21] =
709 { 0.50723143075298205, 0.50000000000000000, 4.0000000000000000,
710 -10.000000000000000 },
711 { 0.52815420026166782, 0.50000000000000000, 4.0000000000000000,
712 -9.0000000000000000 },
713 { 0.55181651516426766, 0.50000000000000000, 4.0000000000000000,
714 -8.0000000000000000 },
715 { 0.57884767287882366, 0.50000000000000000, 4.0000000000000000,
716 -7.0000000000000000 },
717 { 0.61008828324275399, 0.50000000000000000, 4.0000000000000000,
718 -6.0000000000000000 },
719 { 0.64668451853659259, 0.50000000000000000, 4.0000000000000000,
720 -5.0000000000000000 },
721 { 0.69023479867386495, 0.50000000000000000, 4.0000000000000000,
722 -4.0000000000000000 },
723 { 0.74302365975861406, 0.50000000000000000, 4.0000000000000000,
724 -3.0000000000000000 },
725 { 0.80840402753201868, 0.50000000000000000, 4.0000000000000000,
726 -2.0000000000000000 },
727 { 0.89143814400301236, 0.50000000000000000, 4.0000000000000000,
728 -1.0000000000000000 },
729 { 1.0000000000000000, 0.50000000000000000, 4.0000000000000000,
730 0.0000000000000000 },
731 { 1.1467204168940972, 0.50000000000000000, 4.0000000000000000,
732 1.0000000000000000 },
733 { 1.3525055369951857, 0.50000000000000000, 4.0000000000000000,
734 2.0000000000000000 },
735 { 1.6530571499633475, 0.50000000000000000, 4.0000000000000000,
736 3.0000000000000000 },
737 { 2.1112387416058045, 0.50000000000000000, 4.0000000000000000,
738 4.0000000000000000 },
739 { 2.8410480336278199, 0.50000000000000000, 4.0000000000000000,
740 5.0000000000000000 },
741 { 4.0550562221854713, 0.50000000000000000, 4.0000000000000000,
742 6.0000000000000000 },
743 { 6.1601039044778583, 0.50000000000000000, 4.0000000000000000,
744 7.0000000000000000 },
745 { 9.9538034144264511, 0.50000000000000000, 4.0000000000000000,
746 8.0000000000000000 },
747 { 17.034704868473916, 0.50000000000000000, 4.0000000000000000,
748 9.0000000000000000 },
749 { 30.671445325428429, 0.50000000000000000, 4.0000000000000000,
750 10.000000000000000 },
752 const double toler014 = 2.5000000000000020e-13;
754 // Test data for a=0.50000000000000000, c=5.0000000000000000.
755 // max(|f - f_GSL|): 3.5527136788005009e-14
756 // max(|f - f_GSL| / |f_GSL|): 2.6053493022967024e-15
757 const testcase_conf_hyperg<double>
758 data015[21] =
760 { 0.55715239162383312, 0.50000000000000000, 5.0000000000000000,
761 -10.000000000000000 },
762 { 0.57823135269518977, 0.50000000000000000, 5.0000000000000000,
763 -9.0000000000000000 },
764 { 0.60181688556797253, 0.50000000000000000, 5.0000000000000000,
765 -8.0000000000000000 },
766 { 0.62842688147829928, 0.50000000000000000, 5.0000000000000000,
767 -7.0000000000000000 },
768 { 0.65873434489521876, 0.50000000000000000, 5.0000000000000000,
769 -6.0000000000000000 },
770 { 0.69362872731932568, 0.50000000000000000, 5.0000000000000000,
771 -5.0000000000000000 },
772 { 0.73430741618153195, 0.50000000000000000, 5.0000000000000000,
773 -4.0000000000000000 },
774 { 0.78241503593870543, 0.50000000000000000, 5.0000000000000000,
775 -3.0000000000000000 },
776 { 0.84026013345254857, 0.50000000000000000, 5.0000000000000000,
777 -2.0000000000000000 },
778 { 0.91115976433208690, 0.50000000000000000, 5.0000000000000000,
779 -1.0000000000000000 },
780 { 1.0000000000000000, 0.50000000000000000, 5.0000000000000000,
781 0.0000000000000000 },
782 { 1.1141687602185972, 0.50000000000000000, 5.0000000000000000,
783 1.0000000000000000 },
784 { 1.2651443108002267, 0.50000000000000000, 5.0000000000000000,
785 2.0000000000000000 },
786 { 1.4712624889419719, 0.50000000000000000, 5.0000000000000000,
787 3.0000000000000000 },
788 { 1.7626460645467978, 0.50000000000000000, 5.0000000000000000,
789 4.0000000000000000 },
790 { 2.1901779328181084, 0.50000000000000000, 5.0000000000000000,
791 5.0000000000000000 },
792 { 2.8421796979457090, 0.50000000000000000, 5.0000000000000000,
793 6.0000000000000000 },
794 { 3.8760354586203540, 0.50000000000000000, 5.0000000000000000,
795 7.0000000000000000 },
796 { 5.5792940156545541, 0.50000000000000000, 5.0000000000000000,
797 8.0000000000000000 },
798 { 8.4898429002463303, 0.50000000000000000, 5.0000000000000000,
799 9.0000000000000000 },
800 { 13.636227878037948, 0.50000000000000000, 5.0000000000000000,
801 10.000000000000000 },
803 const double toler015 = 2.5000000000000020e-13;
805 // Test data for a=0.50000000000000000, c=6.0000000000000000.
806 // max(|f - f_GSL|): 2.1316282072803006e-14
807 // max(|f - f_GSL| / |f_GSL|): 2.8121163355193836e-15
808 const testcase_conf_hyperg<double>
809 data016[21] =
811 { 0.59687111919499192, 0.50000000000000000, 6.0000000000000000,
812 -10.000000000000000 },
813 { 0.61774982278057033, 0.50000000000000000, 6.0000000000000000,
814 -9.0000000000000000 },
815 { 0.64090744485124451, 0.50000000000000000, 6.0000000000000000,
816 -8.0000000000000000 },
817 { 0.66677322792860194, 0.50000000000000000, 6.0000000000000000,
818 -7.0000000000000000 },
819 { 0.69589293014100995, 0.50000000000000000, 6.0000000000000000,
820 -6.0000000000000000 },
821 { 0.72897040032571048, 0.50000000000000000, 6.0000000000000000,
822 -5.0000000000000000 },
823 { 0.76692755408207181, 0.50000000000000000, 6.0000000000000000,
824 -4.0000000000000000 },
825 { 0.81099244559101891, 0.50000000000000000, 6.0000000000000000,
826 -3.0000000000000000 },
827 { 0.86283102401276535, 0.50000000000000000, 6.0000000000000000,
828 -2.0000000000000000 },
829 { 0.92474809223976406, 0.50000000000000000, 6.0000000000000000,
830 -1.0000000000000000 },
831 { 1.0000000000000000, 0.50000000000000000, 6.0000000000000000,
832 0.0000000000000000 },
833 { 1.0932912594628821, 0.50000000000000000, 6.0000000000000000,
834 1.0000000000000000 },
835 { 1.2115798426781204, 0.50000000000000000, 6.0000000000000000,
836 2.0000000000000000 },
837 { 1.3654106750890422, 0.50000000000000000, 6.0000000000000000,
838 3.0000000000000000 },
839 { 1.5711704305419896, 0.50000000000000000, 6.0000000000000000,
840 4.0000000000000000 },
841 { 1.8549798357448213, 0.50000000000000000, 6.0000000000000000,
842 5.0000000000000000 },
843 { 2.2595503871694826, 0.50000000000000000, 6.0000000000000000,
844 6.0000000000000000 },
845 { 2.8565038772876932, 0.50000000000000000, 6.0000000000000000,
846 7.0000000000000000 },
847 { 3.7689325736317838, 0.50000000000000000, 6.0000000000000000,
848 8.0000000000000000 },
849 { 5.2134738554699531, 0.50000000000000000, 6.0000000000000000,
850 9.0000000000000000 },
851 { 7.5801565545352858, 0.50000000000000000, 6.0000000000000000,
852 10.000000000000000 },
854 const double toler016 = 2.5000000000000020e-13;
856 // Test data for a=0.50000000000000000, c=7.0000000000000000.
857 // max(|f - f_GSL|): 1.2434497875801753e-14
858 // max(|f - f_GSL| / |f_GSL|): 2.5039514520700816e-15
859 const testcase_conf_hyperg<double>
860 data017[21] =
862 { 0.62946736953754079, 0.50000000000000000, 7.0000000000000000,
863 -10.000000000000000 },
864 { 0.64995830964827050, 0.50000000000000000, 7.0000000000000000,
865 -9.0000000000000000 },
866 { 0.67251910396276349, 0.50000000000000000, 7.0000000000000000,
867 -8.0000000000000000 },
868 { 0.69750870596083636, 0.50000000000000000, 7.0000000000000000,
869 -7.0000000000000000 },
870 { 0.72537539174856436, 0.50000000000000000, 7.0000000000000000,
871 -6.0000000000000000 },
872 { 0.75668588434835504, 0.50000000000000000, 7.0000000000000000,
873 -5.0000000000000000 },
874 { 0.79216623458879654, 0.50000000000000000, 7.0000000000000000,
875 -4.0000000000000000 },
876 { 0.83276010491326891, 0.50000000000000000, 7.0000000000000000,
877 -3.0000000000000000 },
878 { 0.87971323375878940, 0.50000000000000000, 7.0000000000000000,
879 -2.0000000000000000 },
880 { 0.93469794840150233, 0.50000000000000000, 7.0000000000000000,
881 -1.0000000000000000 },
882 { 1.0000000000000000, 0.50000000000000000, 7.0000000000000000,
883 0.0000000000000000 },
884 { 1.0788040971101556, 0.50000000000000000, 7.0000000000000000,
885 1.0000000000000000 },
886 { 1.1756385516794761, 0.50000000000000000, 7.0000000000000000,
887 2.0000000000000000 },
888 { 1.2970810749099917, 0.50000000000000000, 7.0000000000000000,
889 3.0000000000000000 },
890 { 1.4529009687665237, 0.50000000000000000, 7.0000000000000000,
891 4.0000000000000000 },
892 { 1.6579437149144023, 0.50000000000000000, 7.0000000000000000,
893 5.0000000000000000 },
894 { 1.9353010489337754, 0.50000000000000000, 7.0000000000000000,
895 6.0000000000000000 },
896 { 2.3217458547039813, 0.50000000000000000, 7.0000000000000000,
897 7.0000000000000000 },
898 { 2.8772254607646022, 0.50000000000000000, 7.0000000000000000,
899 8.0000000000000000 },
900 { 3.7017478151936585, 0.50000000000000000, 7.0000000000000000,
901 9.0000000000000000 },
902 { 4.9659500648552237, 0.50000000000000000, 7.0000000000000000,
903 10.000000000000000 },
905 const double toler017 = 2.5000000000000020e-13;
907 // Test data for a=0.50000000000000000, c=8.0000000000000000.
908 // max(|f - f_GSL|): 1.0658141036401503e-14
909 // max(|f - f_GSL| / |f_GSL|): 2.9130420352995081e-15
910 const testcase_conf_hyperg<double>
911 data018[21] =
913 { 0.65682574389601267, 0.50000000000000000, 8.0000000000000000,
914 -10.000000000000000 },
915 { 0.67683106084440448, 0.50000000000000000, 8.0000000000000000,
916 -9.0000000000000000 },
917 { 0.69871884883136481, 0.50000000000000000, 8.0000000000000000,
918 -8.0000000000000000 },
919 { 0.72279201131268422, 0.50000000000000000, 8.0000000000000000,
920 -7.0000000000000000 },
921 { 0.74942315553647221, 0.50000000000000000, 8.0000000000000000,
922 -6.0000000000000000 },
923 { 0.77907555763819503, 0.50000000000000000, 8.0000000000000000,
924 -5.0000000000000000 },
925 { 0.81233192258476394, 0.50000000000000000, 8.0000000000000000,
926 -4.0000000000000000 },
927 { 0.84993438521252052, 0.50000000000000000, 8.0000000000000000,
928 -3.0000000000000000 },
929 { 0.89284095871461888, 0.50000000000000000, 8.0000000000000000,
930 -2.0000000000000000 },
931 { 0.94230641231038748, 0.50000000000000000, 8.0000000000000000,
932 -1.0000000000000000 },
933 { 1.0000000000000000, 0.50000000000000000, 8.0000000000000000,
934 0.0000000000000000 },
935 { 1.0681796709163929, 0.50000000000000000, 8.0000000000000000,
936 1.0000000000000000 },
937 { 1.1499542693515108, 0.50000000000000000, 8.0000000000000000,
938 2.0000000000000000 },
939 { 1.2496850956712680, 0.50000000000000000, 8.0000000000000000,
940 3.0000000000000000 },
941 { 1.3736119127266571, 0.50000000000000000, 8.0000000000000000,
942 4.0000000000000000 },
943 { 1.5308465522192733, 0.50000000000000000, 8.0000000000000000,
944 5.0000000000000000 },
945 { 1.7349787653671505, 0.50000000000000000, 8.0000000000000000,
946 6.0000000000000000 },
947 { 2.0067188996039378, 0.50000000000000000, 8.0000000000000000,
948 7.0000000000000000 },
949 { 2.3783255204306939, 0.50000000000000000, 8.0000000000000000,
950 8.0000000000000000 },
951 { 2.9011558746255748, 0.50000000000000000, 8.0000000000000000,
952 9.0000000000000000 },
953 { 3.6587666457431234, 0.50000000000000000, 8.0000000000000000,
954 10.000000000000000 },
956 const double toler018 = 2.5000000000000020e-13;
958 // Test data for a=0.50000000000000000, c=9.0000000000000000.
959 // max(|f - f_GSL|): 7.1054273576010019e-15
960 // max(|f - f_GSL| / |f_GSL|): 2.4278329545502228e-15
961 const testcase_conf_hyperg<double>
962 data019[21] =
964 { 0.68018654063475448, 0.50000000000000000, 9.0000000000000000,
965 -10.000000000000000 },
966 { 0.69965870094538662, 0.50000000000000000, 9.0000000000000000,
967 -9.0000000000000000 },
968 { 0.72084701020942776, 0.50000000000000000, 9.0000000000000000,
969 -8.0000000000000000 },
970 { 0.74400928635822572, 0.50000000000000000, 9.0000000000000000,
971 -7.0000000000000000 },
972 { 0.76945859319172982, 0.50000000000000000, 9.0000000000000000,
973 -6.0000000000000000 },
974 { 0.79757868270124699, 0.50000000000000000, 9.0000000000000000,
975 -5.0000000000000000 },
976 { 0.82884476649794248, 0.50000000000000000, 9.0000000000000000,
977 -4.0000000000000000 },
978 { 0.86385180214855140, 0.50000000000000000, 9.0000000000000000,
979 -3.0000000000000000 },
980 { 0.90335351612716308, 0.50000000000000000, 9.0000000000000000,
981 -2.0000000000000000 },
982 { 0.94831697594473685, 0.50000000000000000, 9.0000000000000000,
983 -1.0000000000000000 },
984 { 1.0000000000000000, 0.50000000000000000, 9.0000000000000000,
985 0.0000000000000000 },
986 { 1.0600626000640645, 0.50000000000000000, 9.0000000000000000,
987 1.0000000000000000 },
988 { 1.1307298999505393, 0.50000000000000000, 9.0000000000000000,
989 2.0000000000000000 },
990 { 1.2150341092774180, 0.50000000000000000, 9.0000000000000000,
991 3.0000000000000000 },
992 { 1.3171798023006840, 0.50000000000000000, 9.0000000000000000,
993 4.0000000000000000 },
994 { 1.4431045594091672, 0.50000000000000000, 9.0000000000000000,
995 5.0000000000000000 },
996 { 1.6013540635087158, 0.50000000000000000, 9.0000000000000000,
997 6.0000000000000000 },
998 { 1.8044714074708206, 0.50000000000000000, 9.0000000000000000,
999 7.0000000000000000 },
1000 { 2.0712406108144257, 0.50000000000000000, 9.0000000000000000,
1001 8.0000000000000000 },
1002 { 2.4303714711293143, 0.50000000000000000, 9.0000000000000000,
1003 9.0000000000000000 },
1004 { 2.9266541358556295, 0.50000000000000000, 9.0000000000000000,
1005 10.000000000000000 },
1007 const double toler019 = 2.5000000000000020e-13;
1009 // Test data for a=0.50000000000000000, c=10.000000000000000.
1010 // max(|f - f_GSL|): 5.3290705182007514e-15
1011 // max(|f - f_GSL| / |f_GSL|): 2.1499735877560022e-15
1012 const testcase_conf_hyperg<double>
1013 data020[21] =
1015 { 0.70040954461104099, 0.50000000000000000, 10.000000000000000,
1016 -10.000000000000000 },
1017 { 0.71933025737654444, 0.50000000000000000, 10.000000000000000,
1018 -9.0000000000000000 },
1019 { 0.73981995758615027, 0.50000000000000000, 10.000000000000000,
1020 -8.0000000000000000 },
1021 { 0.76209985272755054, 0.50000000000000000, 10.000000000000000,
1022 -7.0000000000000000 },
1023 { 0.78643553963087975, 0.50000000000000000, 10.000000000000000,
1024 -6.0000000000000000 },
1025 { 0.81314860510626796, 0.50000000000000000, 10.000000000000000,
1026 -5.0000000000000000 },
1027 { 0.84263196565226672, 0.50000000000000000, 10.000000000000000,
1028 -4.0000000000000000 },
1029 { 0.87537037798496642, 0.50000000000000000, 10.000000000000000,
1030 -3.0000000000000000 },
1031 { 0.91196818568151450, 0.50000000000000000, 10.000000000000000,
1032 -2.0000000000000000 },
1033 { 0.95318731786229316, 0.50000000000000000, 10.000000000000000,
1034 -1.0000000000000000 },
1035 { 1.0000000000000000, 0.50000000000000000, 10.000000000000000,
1036 0.0000000000000000 },
1037 { 1.0536628587304602, 0.50000000000000000, 10.000000000000000,
1038 1.0000000000000000 },
1039 { 1.1158225648376323, 0.50000000000000000, 10.000000000000000,
1040 2.0000000000000000 },
1041 { 1.1886686247111011, 0.50000000000000000, 10.000000000000000,
1042 3.0000000000000000 },
1043 { 1.2751576744751334, 0.50000000000000000, 10.000000000000000,
1044 4.0000000000000000 },
1045 { 1.3793478044961116, 0.50000000000000000, 10.000000000000000,
1046 5.0000000000000000 },
1047 { 1.5069047234443802, 0.50000000000000000, 10.000000000000000,
1048 6.0000000000000000 },
1049 { 1.6658803233122232, 0.50000000000000000, 10.000000000000000,
1050 7.0000000000000000 },
1051 { 1.8679295659745196, 0.50000000000000000, 10.000000000000000,
1052 8.0000000000000000 },
1053 { 2.1302432955522050, 0.50000000000000000, 10.000000000000000,
1054 9.0000000000000000 },
1055 { 2.4786679001777303, 0.50000000000000000, 10.000000000000000,
1056 10.000000000000000 },
1058 const double toler020 = 2.5000000000000020e-13;
1060 // Test data for a=1.0000000000000000, c=1.0000000000000000.
1061 // max(|f - f_GSL|): 0.0000000000000000
1062 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
1063 const testcase_conf_hyperg<double>
1064 data021[21] =
1066 { 4.5399929762484854e-05, 1.0000000000000000, 1.0000000000000000,
1067 -10.000000000000000 },
1068 { 0.00012340980408667956, 1.0000000000000000, 1.0000000000000000,
1069 -9.0000000000000000 },
1070 { 0.00033546262790251185, 1.0000000000000000, 1.0000000000000000,
1071 -8.0000000000000000 },
1072 { 0.00091188196555451624, 1.0000000000000000, 1.0000000000000000,
1073 -7.0000000000000000 },
1074 { 0.0024787521766663585, 1.0000000000000000, 1.0000000000000000,
1075 -6.0000000000000000 },
1076 { 0.0067379469990854670, 1.0000000000000000, 1.0000000000000000,
1077 -5.0000000000000000 },
1078 { 0.018315638888734179, 1.0000000000000000, 1.0000000000000000,
1079 -4.0000000000000000 },
1080 { 0.049787068367863944, 1.0000000000000000, 1.0000000000000000,
1081 -3.0000000000000000 },
1082 { 0.13533528323661270, 1.0000000000000000, 1.0000000000000000,
1083 -2.0000000000000000 },
1084 { 0.36787944117144233, 1.0000000000000000, 1.0000000000000000,
1085 -1.0000000000000000 },
1086 { 1.0000000000000000, 1.0000000000000000, 1.0000000000000000,
1087 0.0000000000000000 },
1088 { 2.7182818284590451, 1.0000000000000000, 1.0000000000000000,
1089 1.0000000000000000 },
1090 { 7.3890560989306504, 1.0000000000000000, 1.0000000000000000,
1091 2.0000000000000000 },
1092 { 20.085536923187668, 1.0000000000000000, 1.0000000000000000,
1093 3.0000000000000000 },
1094 { 54.598150033144236, 1.0000000000000000, 1.0000000000000000,
1095 4.0000000000000000 },
1096 { 148.41315910257660, 1.0000000000000000, 1.0000000000000000,
1097 5.0000000000000000 },
1098 { 403.42879349273511, 1.0000000000000000, 1.0000000000000000,
1099 6.0000000000000000 },
1100 { 1096.6331584284585, 1.0000000000000000, 1.0000000000000000,
1101 7.0000000000000000 },
1102 { 2980.9579870417283, 1.0000000000000000, 1.0000000000000000,
1103 8.0000000000000000 },
1104 { 8103.0839275753842, 1.0000000000000000, 1.0000000000000000,
1105 9.0000000000000000 },
1106 { 22026.465794806718, 1.0000000000000000, 1.0000000000000000,
1107 10.000000000000000 },
1109 const double toler021 = 2.5000000000000020e-13;
1111 // Test data for a=1.0000000000000000, c=2.0000000000000000.
1112 // max(|f - f_GSL|): 4.5474735088646412e-13
1113 // max(|f - f_GSL| / |f_GSL|): 2.3593310407919961e-15
1114 const testcase_conf_hyperg<double>
1115 data022[21] =
1117 { 0.099995460007023751, 1.0000000000000000, 2.0000000000000000,
1118 -10.000000000000000 },
1119 { 0.11109739891065704, 1.0000000000000000, 2.0000000000000000,
1120 -9.0000000000000000 },
1121 { 0.12495806717151219, 1.0000000000000000, 2.0000000000000000,
1122 -8.0000000000000000 },
1123 { 0.14272687400492079, 1.0000000000000000, 2.0000000000000000,
1124 -7.0000000000000000 },
1125 { 0.16625354130388895, 1.0000000000000000, 2.0000000000000000,
1126 -6.0000000000000000 },
1127 { 0.19865241060018290, 1.0000000000000000, 2.0000000000000000,
1128 -5.0000000000000000 },
1129 { 0.24542109027781644, 1.0000000000000000, 2.0000000000000000,
1130 -4.0000000000000000 },
1131 { 0.31673764387737868, 1.0000000000000000, 2.0000000000000000,
1132 -3.0000000000000000 },
1133 { 0.43233235838169365, 1.0000000000000000, 2.0000000000000000,
1134 -2.0000000000000000 },
1135 { 0.63212055882855767, 1.0000000000000000, 2.0000000000000000,
1136 -1.0000000000000000 },
1137 { 1.0000000000000000, 1.0000000000000000, 2.0000000000000000,
1138 0.0000000000000000 },
1139 { 1.7182818284590451, 1.0000000000000000, 2.0000000000000000,
1140 1.0000000000000000 },
1141 { 3.1945280494653252, 1.0000000000000000, 2.0000000000000000,
1142 2.0000000000000000 },
1143 { 6.3618456410625557, 1.0000000000000000, 2.0000000000000000,
1144 3.0000000000000000 },
1145 { 13.399537508286059, 1.0000000000000000, 2.0000000000000000,
1146 4.0000000000000000 },
1147 { 29.482631820515319, 1.0000000000000000, 2.0000000000000000,
1148 5.0000000000000000 },
1149 { 67.071465582122514, 1.0000000000000000, 2.0000000000000000,
1150 6.0000000000000000 },
1151 { 156.51902263263693, 1.0000000000000000, 2.0000000000000000,
1152 7.0000000000000000 },
1153 { 372.49474838021604, 1.0000000000000000, 2.0000000000000000,
1154 8.0000000000000000 },
1155 { 900.23154750837602, 1.0000000000000000, 2.0000000000000000,
1156 9.0000000000000000 },
1157 { 2202.5465794806719, 1.0000000000000000, 2.0000000000000000,
1158 10.000000000000000 },
1160 const double toler022 = 2.5000000000000020e-13;
1162 // Test data for a=1.0000000000000000, c=3.0000000000000000.
1163 // max(|f - f_GSL|): 5.6843418860808015e-14
1164 // max(|f - f_GSL| / |f_GSL|): 7.7098432236368283e-16
1165 const testcase_conf_hyperg<double>
1166 data023[21] =
1168 { 0.18000090799859525, 1.0000000000000000, 3.0000000000000000,
1169 -10.000000000000000 },
1170 { 0.19753391135318732, 1.0000000000000000, 3.0000000000000000,
1171 -9.0000000000000000 },
1172 { 0.21876048320712196, 1.0000000000000000, 3.0000000000000000,
1173 -8.0000000000000000 },
1174 { 0.24493517885573690, 1.0000000000000000, 3.0000000000000000,
1175 -7.0000000000000000 },
1176 { 0.27791548623203705, 1.0000000000000000, 3.0000000000000000,
1177 -6.0000000000000000 },
1178 { 0.32053903575992687, 1.0000000000000000, 3.0000000000000000,
1179 -5.0000000000000000 },
1180 { 0.37728945486109178, 1.0000000000000000, 3.0000000000000000,
1181 -4.0000000000000000 },
1182 { 0.45550823741508090, 1.0000000000000000, 3.0000000000000000,
1183 -3.0000000000000000 },
1184 { 0.56766764161830641, 1.0000000000000000, 3.0000000000000000,
1185 -2.0000000000000000 },
1186 { 0.73575888234288467, 1.0000000000000000, 3.0000000000000000,
1187 -1.0000000000000000 },
1188 { 1.0000000000000000, 1.0000000000000000, 3.0000000000000000,
1189 0.0000000000000000 },
1190 { 1.4365636569180902, 1.0000000000000000, 3.0000000000000000,
1191 1.0000000000000000 },
1192 { 2.1945280494653252, 1.0000000000000000, 3.0000000000000000,
1193 2.0000000000000000 },
1194 { 3.5745637607083705, 1.0000000000000000, 3.0000000000000000,
1195 3.0000000000000000 },
1196 { 6.1997687541430295, 1.0000000000000000, 3.0000000000000000,
1197 4.0000000000000000 },
1198 { 11.393052728206127, 1.0000000000000000, 3.0000000000000000,
1199 5.0000000000000000 },
1200 { 22.023821860707507, 1.0000000000000000, 3.0000000000000000,
1201 6.0000000000000000 },
1202 { 44.434006466467693, 1.0000000000000000, 3.0000000000000000,
1203 7.0000000000000000 },
1204 { 92.873687095054009, 1.0000000000000000, 3.0000000000000000,
1205 8.0000000000000000 },
1206 { 199.82923277963911, 1.0000000000000000, 3.0000000000000000,
1207 9.0000000000000000 },
1208 { 440.30931589613436, 1.0000000000000000, 3.0000000000000000,
1209 10.000000000000000 },
1211 const double toler023 = 2.5000000000000020e-13;
1213 // Test data for a=1.0000000000000000, c=4.0000000000000000.
1214 // max(|f - f_GSL|): 8.5265128291212022e-14
1215 // max(|f - f_GSL| / |f_GSL|): 8.2495029364968388e-16
1216 const testcase_conf_hyperg<double>
1217 data024[21] =
1219 { 0.24599972760042138, 1.0000000000000000, 4.0000000000000000,
1220 -10.000000000000000 },
1221 { 0.26748869621560417, 1.0000000000000000, 4.0000000000000000,
1222 -9.0000000000000000 },
1223 { 0.29296481879732927, 1.0000000000000000, 4.0000000000000000,
1224 -8.0000000000000000 },
1225 { 0.32359920906182715, 1.0000000000000000, 4.0000000000000000,
1226 -7.0000000000000000 },
1227 { 0.36104225688398156, 1.0000000000000000, 4.0000000000000000,
1228 -6.0000000000000000 },
1229 { 0.40767657854404388, 1.0000000000000000, 4.0000000000000000,
1230 -5.0000000000000000 },
1231 { 0.46703290885418114, 1.0000000000000000, 4.0000000000000000,
1232 -4.0000000000000000 },
1233 { 0.54449176258491916, 1.0000000000000000, 4.0000000000000000,
1234 -3.0000000000000000 },
1235 { 0.64849853757254050, 1.0000000000000000, 4.0000000000000000,
1236 -2.0000000000000000 },
1237 { 0.79272335297134611, 1.0000000000000000, 4.0000000000000000,
1238 -1.0000000000000000 },
1239 { 1.0000000000000000, 1.0000000000000000, 4.0000000000000000,
1240 0.0000000000000000 },
1241 { 1.3096909707542714, 1.0000000000000000, 4.0000000000000000,
1242 1.0000000000000000 },
1243 { 1.7917920741979876, 1.0000000000000000, 4.0000000000000000,
1244 2.0000000000000000 },
1245 { 2.5745637607083705, 1.0000000000000000, 4.0000000000000000,
1246 3.0000000000000000 },
1247 { 3.8998265656072717, 1.0000000000000000, 4.0000000000000000,
1248 4.0000000000000000 },
1249 { 6.2358316369236775, 1.0000000000000000, 4.0000000000000000,
1250 5.0000000000000000 },
1251 { 10.511910930353745, 1.0000000000000000, 4.0000000000000000,
1252 6.0000000000000000 },
1253 { 18.614574199914728, 1.0000000000000000, 4.0000000000000000,
1254 7.0000000000000000 },
1255 { 34.452632660645271, 1.0000000000000000, 4.0000000000000000,
1256 8.0000000000000000 },
1257 { 66.276410926546333, 1.0000000000000000, 4.0000000000000000,
1258 9.0000000000000000 },
1259 { 131.79279476884014, 1.0000000000000000, 4.0000000000000000,
1260 10.000000000000000 },
1262 const double toler024 = 2.5000000000000020e-13;
1264 // Test data for a=1.0000000000000000, c=5.0000000000000000.
1265 // max(|f - f_GSL|): 6.3948846218409017e-14
1266 // max(|f - f_GSL| / |f_GSL|): 1.3470358174143053e-15
1267 const testcase_conf_hyperg<double>
1268 data025[21] =
1270 { 0.30160010895983153, 1.0000000000000000, 5.0000000000000000,
1271 -10.000000000000000 },
1272 { 0.32556057945973133, 1.0000000000000000, 5.0000000000000000,
1273 -9.0000000000000000 },
1274 { 0.35351759060133559, 1.0000000000000000, 5.0000000000000000,
1275 -8.0000000000000000 },
1276 { 0.38651473767895589, 1.0000000000000000, 5.0000000000000000,
1277 -7.0000000000000000 },
1278 { 0.42597182874401246, 1.0000000000000000, 5.0000000000000000,
1279 -6.0000000000000000 },
1280 { 0.47385873716476473, 1.0000000000000000, 5.0000000000000000,
1281 -5.0000000000000000 },
1282 { 0.53296709114581886, 1.0000000000000000, 5.0000000000000000,
1283 -4.0000000000000000 },
1284 { 0.60734431655344123, 1.0000000000000000, 5.0000000000000000,
1285 -3.0000000000000000 },
1286 { 0.70300292485491900, 1.0000000000000000, 5.0000000000000000,
1287 -2.0000000000000000 },
1288 { 0.82910658811461568, 1.0000000000000000, 5.0000000000000000,
1289 -1.0000000000000000 },
1290 { 1.0000000000000000, 1.0000000000000000, 5.0000000000000000,
1291 0.0000000000000000 },
1292 { 1.2387638830170857, 1.0000000000000000, 5.0000000000000000,
1293 1.0000000000000000 },
1294 { 1.5835841483959754, 1.0000000000000000, 5.0000000000000000,
1295 2.0000000000000000 },
1296 { 2.0994183476111612, 1.0000000000000000, 5.0000000000000000,
1297 3.0000000000000000 },
1298 { 2.8998265656072730, 1.0000000000000000, 5.0000000000000000,
1299 4.0000000000000000 },
1300 { 4.1886653095389432, 1.0000000000000000, 5.0000000000000000,
1301 5.0000000000000000 },
1302 { 6.3412739535691678, 1.0000000000000000, 5.0000000000000000,
1303 6.0000000000000000 },
1304 { 10.065470971379844, 1.0000000000000000, 5.0000000000000000,
1305 7.0000000000000000 },
1306 { 16.726316330322632, 1.0000000000000000, 5.0000000000000000,
1307 8.0000000000000000 },
1308 { 29.011738189576135, 1.0000000000000000, 5.0000000000000000,
1309 9.0000000000000000 },
1310 { 52.317117907536058, 1.0000000000000000, 5.0000000000000000,
1311 10.000000000000000 },
1313 const double toler025 = 2.5000000000000020e-13;
1315 // Test data for a=1.0000000000000000, c=6.0000000000000000.
1316 // max(|f - f_GSL|): 8.1712414612411521e-14
1317 // max(|f - f_GSL| / |f_GSL|): 3.1846065384904241e-15
1318 const testcase_conf_hyperg<double>
1319 data026[21] =
1321 { 0.34919994552008421, 1.0000000000000000, 6.0000000000000000,
1322 -10.000000000000000 },
1323 { 0.37468856696681579, 1.0000000000000000, 6.0000000000000000,
1324 -9.0000000000000000 },
1325 { 0.40405150587416555, 1.0000000000000000, 6.0000000000000000,
1326 -8.0000000000000000 },
1327 { 0.43820375880074558, 1.0000000000000000, 6.0000000000000000,
1328 -7.0000000000000000 },
1329 { 0.47835680937998981, 1.0000000000000000, 6.0000000000000000,
1330 -6.0000000000000000 },
1331 { 0.52614126283523510, 1.0000000000000000, 6.0000000000000000,
1332 -5.0000000000000000 },
1333 { 0.58379113606772659, 1.0000000000000000, 6.0000000000000000,
1334 -4.0000000000000000 },
1335 { 0.65442613907759817, 1.0000000000000000, 6.0000000000000000,
1336 -3.0000000000000000 },
1337 { 0.74249268786270239, 1.0000000000000000, 6.0000000000000000,
1338 -2.0000000000000000 },
1339 { 0.85446705942692136, 1.0000000000000000, 6.0000000000000000,
1340 -1.0000000000000000 },
1341 { 1.0000000000000000, 1.0000000000000000, 6.0000000000000000,
1342 0.0000000000000000 },
1343 { 1.1938194150854282, 1.0000000000000000, 6.0000000000000000,
1344 1.0000000000000000 },
1345 { 1.4589603709899384, 1.0000000000000000, 6.0000000000000000,
1346 2.0000000000000000 },
1347 { 1.8323639126852680, 1.0000000000000000, 6.0000000000000000,
1348 3.0000000000000000 },
1349 { 2.3747832070090902, 1.0000000000000000, 6.0000000000000000,
1350 4.0000000000000000 },
1351 { 3.1886653095389423, 1.0000000000000000, 6.0000000000000000,
1352 5.0000000000000000 },
1353 { 4.4510616279743056, 1.0000000000000000, 6.0000000000000000,
1354 6.0000000000000000 },
1355 { 6.4753364081284595, 1.0000000000000000, 6.0000000000000000,
1356 7.0000000000000000 },
1357 { 9.8289477064516344, 1.0000000000000000, 6.0000000000000000,
1358 8.0000000000000000 },
1359 { 15.562076771986721, 1.0000000000000000, 6.0000000000000000,
1360 9.0000000000000000 },
1361 { 25.658558953767979, 1.0000000000000000, 6.0000000000000000,
1362 10.000000000000000 },
1364 const double toler026 = 2.5000000000000020e-13;
1366 // Test data for a=1.0000000000000000, c=7.0000000000000000.
1367 // max(|f - f_GSL|): 4.6185277824406512e-14
1368 // max(|f - f_GSL| / |f_GSL|): 3.1216529394518888e-15
1369 const testcase_conf_hyperg<double>
1370 data027[21] =
1372 { 0.39048003268794934, 1.0000000000000000, 7.0000000000000000,
1373 -10.000000000000000 },
1374 { 0.41687428868878917, 1.0000000000000000, 7.0000000000000000,
1375 -9.0000000000000000 },
1376 { 0.44696137059437591, 1.0000000000000000, 7.0000000000000000,
1377 -8.0000000000000000 },
1378 { 0.48153963531364674, 1.0000000000000000, 7.0000000000000000,
1379 -7.0000000000000000 },
1380 { 0.52164319062001030, 1.0000000000000000, 7.0000000000000000,
1381 -6.0000000000000000 },
1382 { 0.56863048459771781, 1.0000000000000000, 7.0000000000000000,
1383 -5.0000000000000000 },
1384 { 0.62431329589841034, 1.0000000000000000, 7.0000000000000000,
1385 -4.0000000000000000 },
1386 { 0.69114772184480389, 1.0000000000000000, 7.0000000000000000,
1387 -3.0000000000000000 },
1388 { 0.77252193641189282, 1.0000000000000000, 7.0000000000000000,
1389 -2.0000000000000000 },
1390 { 0.87319764343847150, 1.0000000000000000, 7.0000000000000000,
1391 -1.0000000000000000 },
1392 { 1.0000000000000000, 1.0000000000000000, 7.0000000000000000,
1393 0.0000000000000000 },
1394 { 1.1629164905125695, 1.0000000000000000, 7.0000000000000000,
1395 1.0000000000000000 },
1396 { 1.3768811129698151, 1.0000000000000000, 7.0000000000000000,
1397 2.0000000000000000 },
1398 { 1.6647278253705360, 1.0000000000000000, 7.0000000000000000,
1399 3.0000000000000000 },
1400 { 2.0621748105136359, 1.0000000000000000, 7.0000000000000000,
1401 4.0000000000000000 },
1402 { 2.6263983714467289, 1.0000000000000000, 7.0000000000000000,
1403 5.0000000000000000 },
1404 { 3.4510616279743087, 1.0000000000000000, 7.0000000000000000,
1405 6.0000000000000000 },
1406 { 4.6931454926815466, 1.0000000000000000, 7.0000000000000000,
1407 7.0000000000000000 },
1408 { 6.6217107798387467, 1.0000000000000000, 7.0000000000000000,
1409 8.0000000000000000 },
1410 { 9.7080511813245050, 1.0000000000000000, 7.0000000000000000,
1411 9.0000000000000000 },
1412 { 14.795135372260791, 1.0000000000000000, 7.0000000000000000,
1413 10.000000000000000 },
1415 const double toler027 = 2.5000000000000020e-13;
1417 // Test data for a=1.0000000000000000, c=8.0000000000000000.
1418 // max(|f - f_GSL|): 1.5099033134902129e-14
1419 // max(|f - f_GSL| / |f_GSL|): 3.0695349768517519e-15
1420 const testcase_conf_hyperg<double>
1421 data028[21] =
1423 { 0.42666397711843551, 1.0000000000000000, 8.0000000000000000,
1424 -10.000000000000000 },
1425 { 0.45354221990871935, 1.0000000000000000, 8.0000000000000000,
1426 -9.0000000000000000 },
1427 { 0.48390880072992098, 1.0000000000000000, 8.0000000000000000,
1428 -8.0000000000000000 },
1429 { 0.51846036468635348, 1.0000000000000000, 8.0000000000000000,
1430 -7.0000000000000000 },
1431 { 0.55808294427665472, 1.0000000000000000, 8.0000000000000000,
1432 -6.0000000000000000 },
1433 { 0.60391732156319500, 1.0000000000000000, 8.0000000000000000,
1434 -5.0000000000000000 },
1435 { 0.65745173217778197, 1.0000000000000000, 8.0000000000000000,
1436 -4.0000000000000000 },
1437 { 0.72065531569545760, 1.0000000000000000, 8.0000000000000000,
1438 -3.0000000000000000 },
1439 { 0.79617322255837530, 1.0000000000000000, 8.0000000000000000,
1440 -2.0000000000000000 },
1441 { 0.88761649593069913, 1.0000000000000000, 8.0000000000000000,
1442 -1.0000000000000000 },
1443 { 1.0000000000000000, 1.0000000000000000, 8.0000000000000000,
1444 0.0000000000000000 },
1445 { 1.1404154335879861, 1.0000000000000000, 8.0000000000000000,
1446 1.0000000000000000 },
1447 { 1.3190838953943527, 1.0000000000000000, 8.0000000000000000,
1448 2.0000000000000000 },
1449 { 1.5510315925312508, 1.0000000000000000, 8.0000000000000000,
1450 3.0000000000000000 },
1451 { 1.8588059183988626, 1.0000000000000000, 8.0000000000000000,
1452 4.0000000000000000 },
1453 { 2.2769577200254218, 1.0000000000000000, 8.0000000000000000,
1454 5.0000000000000000 },
1455 { 2.8595718993033583, 1.0000000000000000, 8.0000000000000000,
1456 6.0000000000000000 },
1457 { 3.6931454926815390, 1.0000000000000000, 8.0000000000000000,
1458 7.0000000000000000 },
1459 { 4.9189969323589047, 1.0000000000000000, 8.0000000000000000,
1460 8.0000000000000000 },
1461 { 6.7729286965857236, 1.0000000000000000, 8.0000000000000000,
1462 9.0000000000000000 },
1463 { 9.6565947605825802, 1.0000000000000000, 8.0000000000000000,
1464 10.000000000000000 },
1466 const double toler028 = 2.5000000000000020e-13;
1468 // Test data for a=1.0000000000000000, c=9.0000000000000000.
1469 // max(|f - f_GSL|): 2.1316282072803006e-14
1470 // max(|f - f_GSL| / |f_GSL|): 3.0780408841975893e-15
1471 const testcase_conf_hyperg<double>
1472 data029[21] =
1474 { 0.45866881830525147, 1.0000000000000000, 9.0000000000000000,
1475 -10.000000000000000 },
1476 { 0.48574024897002727, 1.0000000000000000, 9.0000000000000000,
1477 -9.0000000000000000 },
1478 { 0.51609119927007907, 1.0000000000000000, 9.0000000000000000,
1479 -8.0000000000000000 },
1480 { 0.55033101178702448, 1.0000000000000000, 9.0000000000000000,
1481 -7.0000000000000000 },
1482 { 0.58922274096446048, 1.0000000000000000, 9.0000000000000000,
1483 -6.0000000000000000 },
1484 { 0.63373228549888794, 1.0000000000000000, 9.0000000000000000,
1485 -5.0000000000000000 },
1486 { 0.68509653564443607, 1.0000000000000000, 9.0000000000000000,
1487 -4.0000000000000000 },
1488 { 0.74491915814544640, 1.0000000000000000, 9.0000000000000000,
1489 -3.0000000000000000 },
1490 { 0.81530710976649901, 1.0000000000000000, 9.0000000000000000,
1491 -2.0000000000000000 },
1492 { 0.89906803255440670, 1.0000000000000000, 9.0000000000000000,
1493 -1.0000000000000000 },
1494 { 1.0000000000000000, 1.0000000000000000, 9.0000000000000000,
1495 0.0000000000000000 },
1496 { 1.1233234687038898, 1.0000000000000000, 9.0000000000000000,
1497 1.0000000000000000 },
1498 { 1.2763355815774109, 1.0000000000000000, 9.0000000000000000,
1499 2.0000000000000000 },
1500 { 1.4694175800833351, 1.0000000000000000, 9.0000000000000000,
1501 3.0000000000000000 },
1502 { 1.7176118367977251, 1.0000000000000000, 9.0000000000000000,
1503 4.0000000000000000 },
1504 { 2.0431323520406743, 1.0000000000000000, 9.0000000000000000,
1505 5.0000000000000000 },
1506 { 2.4794291990711450, 1.0000000000000000, 9.0000000000000000,
1507 6.0000000000000000 },
1508 { 3.0778805630646149, 1.0000000000000000, 9.0000000000000000,
1509 7.0000000000000000 },
1510 { 3.9189969323588909, 1.0000000000000000, 9.0000000000000000,
1511 8.0000000000000000 },
1512 { 5.1314921747428537, 1.0000000000000000, 9.0000000000000000,
1513 9.0000000000000000 },
1514 { 6.9252758084660471, 1.0000000000000000, 9.0000000000000000,
1515 10.000000000000000 },
1517 const double toler029 = 2.5000000000000020e-13;
1519 // Test data for a=1.0000000000000000, c=10.000000000000000.
1520 // max(|f - f_GSL|): 1.5987211554602254e-14
1521 // max(|f - f_GSL| / |f_GSL|): 2.9979310614742812e-15
1522 const testcase_conf_hyperg<double>
1523 data030[21] =
1525 { 0.48719806352527351, 1.0000000000000000, 10.000000000000000,
1526 -10.000000000000000 },
1527 { 0.51425975102997290, 1.0000000000000000, 10.000000000000000,
1528 -9.0000000000000000 },
1529 { 0.54439740082116106, 1.0000000000000000, 10.000000000000000,
1530 -8.0000000000000000 },
1531 { 0.57814584198811136, 1.0000000000000000, 10.000000000000000,
1532 -7.0000000000000000 },
1533 { 0.61616588855330934, 1.0000000000000000, 10.000000000000000,
1534 -6.0000000000000000 },
1535 { 0.65928188610200156, 1.0000000000000000, 10.000000000000000,
1536 -5.0000000000000000 },
1537 { 0.70853279480001885, 1.0000000000000000, 10.000000000000000,
1538 -4.0000000000000000 },
1539 { 0.76524252556366068, 1.0000000000000000, 10.000000000000000,
1540 -3.0000000000000000 },
1541 { 0.83111800605075459, 1.0000000000000000, 10.000000000000000,
1542 -2.0000000000000000 },
1543 { 0.90838770701033944, 1.0000000000000000, 10.000000000000000,
1544 -1.0000000000000000 },
1545 { 1.0000000000000000, 1.0000000000000000, 10.000000000000000,
1546 0.0000000000000000 },
1547 { 1.1099112183350075, 1.0000000000000000, 10.000000000000000,
1548 1.0000000000000000 },
1549 { 1.2435101170983485, 1.0000000000000000, 10.000000000000000,
1550 2.0000000000000000 },
1551 { 1.4082527402500060, 1.0000000000000000, 10.000000000000000,
1552 3.0000000000000000 },
1553 { 1.6146266327948817, 1.0000000000000000, 10.000000000000000,
1554 4.0000000000000000 },
1555 { 1.8776382336732149, 1.0000000000000000, 10.000000000000000,
1556 5.0000000000000000 },
1557 { 2.2191437986067180, 1.0000000000000000, 10.000000000000000,
1558 6.0000000000000000 },
1559 { 2.6715607239402184, 1.0000000000000000, 10.000000000000000,
1560 7.0000000000000000 },
1561 { 3.2838715489037495, 1.0000000000000000, 10.000000000000000,
1562 8.0000000000000000 },
1563 { 4.1314921747428688, 1.0000000000000000, 10.000000000000000,
1564 9.0000000000000000 },
1565 { 5.3327482276194447, 1.0000000000000000, 10.000000000000000,
1566 10.000000000000000 },
1568 const double toler030 = 2.5000000000000020e-13;
1570 // Test data for a=2.0000000000000000, c=1.0000000000000000.
1571 // max(|f - f_GSL|): 1.8189894035458565e-12
1572 // max(|f - f_GSL| / |f_GSL|): 1.2338590067901998e-14
1573 const testcase_conf_hyperg<double>
1574 data031[20] =
1576 { -0.00040859936786236367, 2.0000000000000000, 1.0000000000000000,
1577 -10.000000000000000 },
1578 { -0.00098727843269343649, 2.0000000000000000, 1.0000000000000000,
1579 -9.0000000000000000 },
1580 { -0.0023482383953175828, 2.0000000000000000, 1.0000000000000000,
1581 -8.0000000000000000 },
1582 { -0.0054712917933270972, 2.0000000000000000, 1.0000000000000000,
1583 -7.0000000000000000 },
1584 { -0.012393760883331793, 2.0000000000000000, 1.0000000000000000,
1585 -6.0000000000000000 },
1586 { -0.026951787996341868, 2.0000000000000000, 1.0000000000000000,
1587 -5.0000000000000000 },
1588 { -0.054946916666202536, 2.0000000000000000, 1.0000000000000000,
1589 -4.0000000000000000 },
1590 { -0.099574136735727889, 2.0000000000000000, 1.0000000000000000,
1591 -3.0000000000000000 },
1592 { -0.13533528323661270, 2.0000000000000000, 1.0000000000000000,
1593 -2.0000000000000000 },
1594 { 1.0000000000000000, 2.0000000000000000, 1.0000000000000000,
1595 0.0000000000000000 },
1596 { 5.4365636569180902, 2.0000000000000000, 1.0000000000000000,
1597 1.0000000000000000 },
1598 { 22.167168296791949, 2.0000000000000000, 1.0000000000000000,
1599 2.0000000000000000 },
1600 { 80.342147692750672, 2.0000000000000000, 1.0000000000000000,
1601 3.0000000000000000 },
1602 { 272.99075016572118, 2.0000000000000000, 1.0000000000000000,
1603 4.0000000000000000 },
1604 { 890.47895461545954, 2.0000000000000000, 1.0000000000000000,
1605 5.0000000000000000 },
1606 { 2824.0015544491457, 2.0000000000000000, 1.0000000000000000,
1607 6.0000000000000000 },
1608 { 8773.0652674276680, 2.0000000000000000, 1.0000000000000000,
1609 7.0000000000000000 },
1610 { 26828.621883375556, 2.0000000000000000, 1.0000000000000000,
1611 8.0000000000000000 },
1612 { 81030.839275753839, 2.0000000000000000, 1.0000000000000000,
1613 9.0000000000000000 },
1614 { 242291.12374287390, 2.0000000000000000, 1.0000000000000000,
1615 10.000000000000000 },
1617 const double toler031 = 1.0000000000000008e-12;
1619 // Test data for a=2.0000000000000000, c=2.0000000000000000.
1620 // max(|f - f_GSL|): 0.0000000000000000
1621 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
1622 const testcase_conf_hyperg<double>
1623 data032[21] =
1625 { 4.5399929762484854e-05, 2.0000000000000000, 2.0000000000000000,
1626 -10.000000000000000 },
1627 { 0.00012340980408667956, 2.0000000000000000, 2.0000000000000000,
1628 -9.0000000000000000 },
1629 { 0.00033546262790251185, 2.0000000000000000, 2.0000000000000000,
1630 -8.0000000000000000 },
1631 { 0.00091188196555451624, 2.0000000000000000, 2.0000000000000000,
1632 -7.0000000000000000 },
1633 { 0.0024787521766663585, 2.0000000000000000, 2.0000000000000000,
1634 -6.0000000000000000 },
1635 { 0.0067379469990854670, 2.0000000000000000, 2.0000000000000000,
1636 -5.0000000000000000 },
1637 { 0.018315638888734179, 2.0000000000000000, 2.0000000000000000,
1638 -4.0000000000000000 },
1639 { 0.049787068367863944, 2.0000000000000000, 2.0000000000000000,
1640 -3.0000000000000000 },
1641 { 0.13533528323661270, 2.0000000000000000, 2.0000000000000000,
1642 -2.0000000000000000 },
1643 { 0.36787944117144233, 2.0000000000000000, 2.0000000000000000,
1644 -1.0000000000000000 },
1645 { 1.0000000000000000, 2.0000000000000000, 2.0000000000000000,
1646 0.0000000000000000 },
1647 { 2.7182818284590451, 2.0000000000000000, 2.0000000000000000,
1648 1.0000000000000000 },
1649 { 7.3890560989306504, 2.0000000000000000, 2.0000000000000000,
1650 2.0000000000000000 },
1651 { 20.085536923187668, 2.0000000000000000, 2.0000000000000000,
1652 3.0000000000000000 },
1653 { 54.598150033144236, 2.0000000000000000, 2.0000000000000000,
1654 4.0000000000000000 },
1655 { 148.41315910257660, 2.0000000000000000, 2.0000000000000000,
1656 5.0000000000000000 },
1657 { 403.42879349273511, 2.0000000000000000, 2.0000000000000000,
1658 6.0000000000000000 },
1659 { 1096.6331584284585, 2.0000000000000000, 2.0000000000000000,
1660 7.0000000000000000 },
1661 { 2980.9579870417283, 2.0000000000000000, 2.0000000000000000,
1662 8.0000000000000000 },
1663 { 8103.0839275753842, 2.0000000000000000, 2.0000000000000000,
1664 9.0000000000000000 },
1665 { 22026.465794806718, 2.0000000000000000, 2.0000000000000000,
1666 10.000000000000000 },
1668 const double toler032 = 2.5000000000000020e-13;
1670 // Test data for a=2.0000000000000000, c=3.0000000000000000.
1671 // max(|f - f_GSL|): 9.0949470177292824e-13
1672 // max(|f - f_GSL| / |f_GSL|): 3.7963989072999328e-15
1673 const testcase_conf_hyperg<double>
1674 data033[21] =
1676 { 0.019990012015452256, 2.0000000000000000, 3.0000000000000000,
1677 -10.000000000000000 },
1678 { 0.024660886468126749, 2.0000000000000000, 3.0000000000000000,
1679 -9.0000000000000000 },
1680 { 0.031155651135902421, 2.0000000000000000, 3.0000000000000000,
1681 -8.0000000000000000 },
1682 { 0.040518569154104643, 2.0000000000000000, 3.0000000000000000,
1683 -7.0000000000000000 },
1684 { 0.054591596375740861, 2.0000000000000000, 3.0000000000000000,
1685 -6.0000000000000000 },
1686 { 0.076765785440438966, 2.0000000000000000, 3.0000000000000000,
1687 -5.0000000000000000 },
1688 { 0.11355272569454113, 2.0000000000000000, 3.0000000000000000,
1689 -4.0000000000000000 },
1690 { 0.17796705033967650, 2.0000000000000000, 3.0000000000000000,
1691 -3.0000000000000000 },
1692 { 0.29699707514508100, 2.0000000000000000, 3.0000000000000000,
1693 -2.0000000000000000 },
1694 { 0.52848223531423066, 2.0000000000000000, 3.0000000000000000,
1695 -1.0000000000000000 },
1696 { 1.0000000000000000, 2.0000000000000000, 3.0000000000000000,
1697 0.0000000000000000 },
1698 { 2.0000000000000000, 2.0000000000000000, 3.0000000000000000,
1699 1.0000000000000000 },
1700 { 4.1945280494653261, 2.0000000000000000, 3.0000000000000000,
1701 2.0000000000000000 },
1702 { 9.1491275214167409, 2.0000000000000000, 3.0000000000000000,
1703 3.0000000000000000 },
1704 { 20.599306262429089, 2.0000000000000000, 3.0000000000000000,
1705 4.0000000000000000 },
1706 { 47.572210912824517, 2.0000000000000000, 3.0000000000000000,
1707 5.0000000000000000 },
1708 { 112.11910930353754, 2.0000000000000000, 3.0000000000000000,
1709 6.0000000000000000 },
1710 { 268.60403879880613, 2.0000000000000000, 3.0000000000000000,
1711 7.0000000000000000 },
1712 { 652.11580966537815, 2.0000000000000000, 3.0000000000000000,
1713 8.0000000000000000 },
1714 { 1600.6338622371129, 2.0000000000000000, 3.0000000000000000,
1715 9.0000000000000000 },
1716 { 3964.7838430652091, 2.0000000000000000, 3.0000000000000000,
1717 10.000000000000000 },
1719 const double toler033 = 2.5000000000000020e-13;
1721 // Test data for a=2.0000000000000000, c=4.0000000000000000.
1722 // max(|f - f_GSL|): 2.2737367544323206e-12
1723 // max(|f - f_GSL| / |f_GSL|): 2.1504262426495913e-15
1724 const testcase_conf_hyperg<double>
1725 data034[21] =
1727 { 0.048003268794942940, 2.0000000000000000, 4.0000000000000000,
1728 -10.000000000000000 },
1729 { 0.057624341628353531, 2.0000000000000000, 4.0000000000000000,
1730 -9.0000000000000000 },
1731 { 0.070351812026707330, 2.0000000000000000, 4.0000000000000000,
1732 -8.0000000000000000 },
1733 { 0.087607118443556703, 2.0000000000000000, 4.0000000000000000,
1734 -7.0000000000000000 },
1735 { 0.11166194492814813, 2.0000000000000000, 4.0000000000000000,
1736 -6.0000000000000000 },
1737 { 0.14626395019169278, 2.0000000000000000, 4.0000000000000000,
1738 -5.0000000000000000 },
1739 { 0.19780254687491294, 2.0000000000000000, 4.0000000000000000,
1740 -4.0000000000000000 },
1741 { 0.27754118707540443, 2.0000000000000000, 4.0000000000000000,
1742 -3.0000000000000000 },
1743 { 0.40600584970983811, 2.0000000000000000, 4.0000000000000000,
1744 -2.0000000000000000 },
1745 { 0.62182994108596168, 2.0000000000000000, 4.0000000000000000,
1746 -1.0000000000000000 },
1747 { 1.0000000000000000, 2.0000000000000000, 4.0000000000000000,
1748 0.0000000000000000 },
1749 { 1.6903090292457283, 2.0000000000000000, 4.0000000000000000,
1750 1.0000000000000000 },
1751 { 3.0000000000000000, 2.0000000000000000, 4.0000000000000000,
1752 2.0000000000000000 },
1753 { 5.5745637607083705, 2.0000000000000000, 4.0000000000000000,
1754 3.0000000000000000 },
1755 { 10.799653131214550, 2.0000000000000000, 4.0000000000000000,
1756 4.0000000000000000 },
1757 { 21.707494910771043, 2.0000000000000000, 4.0000000000000000,
1758 5.0000000000000000 },
1759 { 45.047643721415056, 2.0000000000000000, 4.0000000000000000,
1760 6.0000000000000000 },
1761 { 96.072870999573695, 2.0000000000000000, 4.0000000000000000,
1762 7.0000000000000000 },
1763 { 209.71579596387159, 2.0000000000000000, 4.0000000000000000,
1764 8.0000000000000000 },
1765 { 466.93487648582493, 2.0000000000000000, 4.0000000000000000,
1766 9.0000000000000000 },
1767 { 1057.3423581507243, 2.0000000000000000, 4.0000000000000000,
1768 10.000000000000000 },
1770 const double toler034 = 2.5000000000000020e-13;
1772 // Test data for a=2.0000000000000000, c=5.0000000000000000.
1773 // max(|f - f_GSL|): 2.8421709430404007e-13
1774 // max(|f - f_GSL| / |f_GSL|): 2.6284159117427726e-15
1775 const testcase_conf_hyperg<double>
1776 data035[21] =
1778 { 0.079198583522191404, 2.0000000000000000, 5.0000000000000000,
1779 -10.000000000000000 },
1780 { 0.093273046483222530, 2.0000000000000000, 5.0000000000000000,
1781 -9.0000000000000000 },
1782 { 0.11130650338531098, 2.0000000000000000, 5.0000000000000000,
1783 -8.0000000000000000 },
1784 { 0.13485262321044020, 2.0000000000000000, 5.0000000000000000,
1785 -7.0000000000000000 },
1786 { 0.16625354130388895, 2.0000000000000000, 5.0000000000000000,
1787 -6.0000000000000000 },
1788 { 0.20913010268188095, 2.0000000000000000, 5.0000000000000000,
1789 -5.0000000000000000 },
1790 { 0.26923036197926808, 2.0000000000000000, 5.0000000000000000,
1791 -4.0000000000000000 },
1792 { 0.35593410067935288, 2.0000000000000000, 5.0000000000000000,
1793 -3.0000000000000000 },
1794 { 0.48498537572540468, 2.0000000000000000, 5.0000000000000000,
1795 -2.0000000000000000 },
1796 { 0.68357364754153715, 2.0000000000000000, 5.0000000000000000,
1797 -1.0000000000000000 },
1798 { 1.0000000000000000, 2.0000000000000000, 5.0000000000000000,
1799 0.0000000000000000 },
1800 { 1.5224722339658285, 2.0000000000000000, 5.0000000000000000,
1801 1.0000000000000000 },
1802 { 2.4164158516040235, 2.0000000000000000, 5.0000000000000000,
1803 2.0000000000000000 },
1804 { 4.0000000000000009, 2.0000000000000000, 5.0000000000000000,
1805 3.0000000000000000 },
1806 { 6.8998265656072721, 2.0000000000000000, 5.0000000000000000,
1807 4.0000000000000000 },
1808 { 12.377330619077886, 2.0000000000000000, 5.0000000000000000,
1809 5.0000000000000000 },
1810 { 23.023821860707503, 2.0000000000000000, 5.0000000000000000,
1811 6.0000000000000000 },
1812 { 44.261883885519374, 2.0000000000000000, 5.0000000000000000,
1813 7.0000000000000000 },
1814 { 87.631581651613160, 2.0000000000000000, 5.0000000000000000,
1815 8.0000000000000000 },
1816 { 178.07042913745681, 2.0000000000000000, 5.0000000000000000,
1817 9.0000000000000000 },
1818 { 370.21982535275242, 2.0000000000000000, 5.0000000000000000,
1819 10.000000000000000 },
1821 const double toler035 = 2.5000000000000020e-13;
1823 // Test data for a=2.0000000000000000, c=6.0000000000000000.
1824 // max(|f - f_GSL|): 5.1159076974727213e-13
1825 // max(|f - f_GSL| / |f_GSL|): 3.2185367269036845e-15
1826 const testcase_conf_hyperg<double>
1827 data036[21] =
1829 { 0.11120076271882003, 2.0000000000000000, 6.0000000000000000,
1830 -10.000000000000000 },
1831 { 0.12904862943139384, 2.0000000000000000, 6.0000000000000000,
1832 -9.0000000000000000 },
1833 { 0.15138192951001525, 2.0000000000000000, 6.0000000000000000,
1834 -8.0000000000000000 },
1835 { 0.17975865319179699, 2.0000000000000000, 6.0000000000000000,
1836 -7.0000000000000000 },
1837 { 0.21643190620010283, 2.0000000000000000, 6.0000000000000000,
1838 -6.0000000000000000 },
1839 { 0.26472863448288397, 2.0000000000000000, 6.0000000000000000,
1840 -5.0000000000000000 },
1841 { 0.32967091145818839, 2.0000000000000000, 6.0000000000000000,
1842 -4.0000000000000000 },
1843 { 0.41901702645681349, 2.0000000000000000, 6.0000000000000000,
1844 -3.0000000000000000 },
1845 { 0.54504387282378575, 2.0000000000000000, 6.0000000000000000,
1846 -2.0000000000000000 },
1847 { 0.72766470286539298, 2.0000000000000000, 6.0000000000000000,
1848 -1.0000000000000000 },
1849 { 1.0000000000000000, 2.0000000000000000, 6.0000000000000000,
1850 0.0000000000000000 },
1851 { 1.4185417547437151, 2.0000000000000000, 6.0000000000000000,
1852 1.0000000000000000 },
1853 { 2.0820792580201224, 2.0000000000000000, 6.0000000000000000,
1854 2.0000000000000000 },
1855 { 3.1676360873147318, 2.0000000000000000, 6.0000000000000000,
1856 3.0000000000000000 },
1857 { 4.9999999999999982, 2.0000000000000000, 6.0000000000000000,
1858 4.0000000000000000 },
1859 { 8.1886653095389406, 2.0000000000000000, 6.0000000000000000,
1860 5.0000000000000000 },
1861 { 13.902123255948611, 2.0000000000000000, 6.0000000000000000,
1862 6.0000000000000000 },
1863 { 24.426009224385378, 2.0000000000000000, 6.0000000000000000,
1864 7.0000000000000000 },
1865 { 44.315790825806538, 2.0000000000000000, 6.0000000000000000,
1866 8.0000000000000000 },
1867 { 82.810383859933609, 2.0000000000000000, 6.0000000000000000,
1868 9.0000000000000000 },
1869 { 158.95135372260788, 2.0000000000000000, 6.0000000000000000,
1870 10.000000000000000 },
1872 const double toler036 = 2.5000000000000020e-13;
1874 // Test data for a=2.0000000000000000, c=7.0000000000000000.
1875 // max(|f - f_GSL|): 2.1316282072803006e-13
1876 // max(|f - f_GSL| / |f_GSL|): 2.6653456287428861e-15
1877 const testcase_conf_hyperg<double>
1878 data037[21] =
1880 { 0.14279950968075855, 2.0000000000000000, 7.0000000000000000,
1881 -10.000000000000000 },
1882 { 0.16375995835694801, 2.0000000000000000, 7.0000000000000000,
1883 -9.0000000000000000 },
1884 { 0.18950218227311263, 2.0000000000000000, 7.0000000000000000,
1885 -8.0000000000000000 },
1886 { 0.22152437623624174, 2.0000000000000000, 7.0000000000000000,
1887 -7.0000000000000000 },
1888 { 0.26192490317988687, 2.0000000000000000, 7.0000000000000000,
1889 -6.0000000000000000 },
1890 { 0.31369515402282139, 2.0000000000000000, 7.0000000000000000,
1891 -5.0000000000000000 },
1892 { 0.38118033691430731, 2.0000000000000000, 7.0000000000000000,
1893 -4.0000000000000000 },
1894 { 0.47081822524156886, 2.0000000000000000, 7.0000000000000000,
1895 -3.0000000000000000 },
1896 { 0.59234644511675072, 2.0000000000000000, 7.0000000000000000,
1897 -2.0000000000000000 },
1898 { 0.76081413936917086, 2.0000000000000000, 7.0000000000000000,
1899 -1.0000000000000000 },
1900 { 1.0000000000000000, 2.0000000000000000, 7.0000000000000000,
1901 0.0000000000000000 },
1902 { 1.3483340379497220, 2.0000000000000000, 7.0000000000000000,
1903 1.0000000000000000 },
1904 { 1.8693566610905543, 2.0000000000000000, 7.0000000000000000,
1905 2.0000000000000000 },
1906 { 2.6705443492589280, 2.0000000000000000, 7.0000000000000000,
1907 3.0000000000000000 },
1908 { 3.9378251894863650, 2.0000000000000000, 7.0000000000000000,
1909 4.0000000000000000 },
1910 { 6.0000000000000018, 2.0000000000000000, 7.0000000000000000,
1911 5.0000000000000000 },
1912 { 9.4510616279743118, 2.0000000000000000, 7.0000000000000000,
1913 6.0000000000000000 },
1914 { 15.386290985363093, 2.0000000000000000, 7.0000000000000000,
1915 7.0000000000000000 },
1916 { 25.865132339516240, 2.0000000000000000, 7.0000000000000000,
1917 8.0000000000000000 },
1918 { 44.832204725298020, 2.0000000000000000, 7.0000000000000000,
1919 9.0000000000000000 },
1920 { 79.975676861303953, 2.0000000000000000, 7.0000000000000000,
1921 10.000000000000000 },
1923 const double toler037 = 2.5000000000000020e-13;
1925 // Test data for a=2.0000000000000000, c=8.0000000000000000.
1926 // max(|f - f_GSL|): 3.9079850466805510e-14
1927 // max(|f - f_GSL| / |f_GSL|): 2.3209326942856951e-15
1928 const testcase_conf_hyperg<double>
1929 data038[21] =
1931 { 0.17337636610503362, 2.0000000000000000, 8.0000000000000000,
1932 -10.000000000000000 },
1933 { 0.19686670136921000, 2.0000000000000000, 8.0000000000000000,
1934 -9.0000000000000000 },
1935 { 0.22527678978110538, 2.0000000000000000, 8.0000000000000000,
1936 -8.0000000000000000 },
1937 { 0.26001525907740475, 2.0000000000000000, 8.0000000000000000,
1938 -7.0000000000000000 },
1939 { 0.30300466868014397, 2.0000000000000000, 8.0000000000000000,
1940 -6.0000000000000000 },
1941 { 0.35690946280485503, 2.0000000000000000, 8.0000000000000000,
1942 -5.0000000000000000 },
1943 { 0.42548267822218039, 2.0000000000000000, 8.0000000000000000,
1944 -4.0000000000000000 },
1945 { 0.51410215874088183, 2.0000000000000000, 8.0000000000000000,
1946 -3.0000000000000000 },
1947 { 0.63061421953299790, 2.0000000000000000, 8.0000000000000000,
1948 -2.0000000000000000 },
1949 { 0.78668452848510595, 2.0000000000000000, 8.0000000000000000,
1950 -1.0000000000000000 },
1951 { 1.0000000000000000, 2.0000000000000000, 8.0000000000000000,
1952 0.0000000000000000 },
1953 { 1.2979228320600693, 2.0000000000000000, 8.0000000000000000,
1954 1.0000000000000000 },
1955 { 1.7236644184225898, 2.0000000000000000, 8.0000000000000000,
1956 2.0000000000000000 },
1957 { 2.3469052224062485, 2.0000000000000000, 8.0000000000000000,
1958 3.0000000000000000 },
1959 { 3.2823881632022749, 2.0000000000000000, 8.0000000000000000,
1960 4.0000000000000000 },
1961 { 4.7230422799745782, 2.0000000000000000, 8.0000000000000000,
1962 5.0000000000000000 },
1963 { 7.0000000000000009, 2.0000000000000000, 8.0000000000000000,
1964 6.0000000000000000 },
1965 { 10.693145492681536, 2.0000000000000000, 8.0000000000000000,
1966 7.0000000000000000 },
1967 { 16.837993864717809, 2.0000000000000000, 8.0000000000000000,
1968 8.0000000000000000 },
1969 { 27.318786089757172, 2.0000000000000000, 8.0000000000000000,
1970 9.0000000000000000 },
1971 { 45.626379042330321, 2.0000000000000000, 8.0000000000000000,
1972 10.000000000000000 },
1974 const double toler038 = 2.5000000000000020e-13;
1976 // Test data for a=2.0000000000000000, c=9.0000000000000000.
1977 // max(|f - f_GSL|): 6.3948846218409017e-14
1978 // max(|f - f_GSL| / |f_GSL|): 2.2223112918020366e-15
1979 const testcase_conf_hyperg<double>
1980 data039[21] =
1982 { 0.20263008881072142, 2.0000000000000000, 9.0000000000000000,
1983 -10.000000000000000 },
1984 { 0.22815601647956382, 2.0000000000000000, 9.0000000000000000,
1985 -9.0000000000000000 },
1986 { 0.25863201094881560, 2.0000000000000000, 9.0000000000000000,
1987 -8.0000000000000000 },
1988 { 0.29536583498165569, 2.0000000000000000, 9.0000000000000000,
1989 -7.0000000000000000 },
1990 { 0.34010436746201422, 2.0000000000000000, 9.0000000000000000,
1991 -6.0000000000000000 },
1992 { 0.39521257401334392, 2.0000000000000000, 9.0000000000000000,
1993 -5.0000000000000000 },
1994 { 0.46393810791120338, 2.0000000000000000, 9.0000000000000000,
1995 -4.0000000000000000 },
1996 { 0.55080841854553553, 2.0000000000000000, 9.0000000000000000,
1997 -3.0000000000000000 },
1998 { 0.66223601210150940, 2.0000000000000000, 9.0000000000000000,
1999 -2.0000000000000000 },
2000 { 0.80745573956474603, 2.0000000000000000, 9.0000000000000000,
2001 -1.0000000000000000 },
2002 { 1.0000000000000000, 2.0000000000000000, 9.0000000000000000,
2003 0.0000000000000000 },
2004 { 1.2600591877766618, 2.0000000000000000, 9.0000000000000000,
2005 1.0000000000000000 },
2006 { 1.6183220921129462, 2.0000000000000000, 9.0000000000000000,
2007 2.0000000000000000 },
2008 { 2.1223296796666578, 2.0000000000000000, 9.0000000000000000,
2009 3.0000000000000000 },
2010 { 2.8471644896068233, 2.0000000000000000, 9.0000000000000000,
2011 4.0000000000000000 },
2012 { 3.9137352959186495, 2.0000000000000000, 9.0000000000000000,
2013 5.0000000000000000 },
2014 { 5.5205708009288541, 2.0000000000000000, 9.0000000000000000,
2015 6.0000000000000000 },
2016 { 7.9999999999999982, 2.0000000000000000, 9.0000000000000000,
2017 7.0000000000000000 },
2018 { 11.918996932358892, 2.0000000000000000, 9.0000000000000000,
2019 8.0000000000000000 },
2020 { 18.262984349485706, 2.0000000000000000, 9.0000000000000000,
2021 9.0000000000000000 },
2022 { 28.775827425398141, 2.0000000000000000, 9.0000000000000000,
2023 10.000000000000000 },
2025 const double toler039 = 2.5000000000000020e-13;
2027 // Test data for a=2.0000000000000000, c=10.000000000000000.
2028 // max(|f - f_GSL|): 3.5527136788005009e-14
2029 // max(|f - f_GSL| / |f_GSL|): 1.8065720775912871e-15
2030 const testcase_conf_hyperg<double>
2031 data040[21] =
2033 { 0.23043485654507717, 2.0000000000000000, 10.000000000000000,
2034 -10.000000000000000 },
2035 { 0.25758423249046342, 2.0000000000000000, 10.000000000000000,
2036 -9.0000000000000000 },
2037 { 0.28964158686142122, 2.0000000000000000, 10.000000000000000,
2038 -8.0000000000000000 },
2039 { 0.32781237017833142, 2.0000000000000000, 10.000000000000000,
2040 -7.0000000000000000 },
2041 { 0.37367756025366927, 2.0000000000000000, 10.000000000000000,
2042 -6.0000000000000000 },
2043 { 0.42933548067397925, 2.0000000000000000, 10.000000000000000,
2044 -5.0000000000000000 },
2045 { 0.49760646239977369, 2.0000000000000000, 10.000000000000000,
2046 -4.0000000000000000 },
2047 { 0.58233221879973318, 2.0000000000000000, 10.000000000000000,
2048 -3.0000000000000000 },
2049 { 0.68881993949245379, 2.0000000000000000, 10.000000000000000,
2050 -2.0000000000000000 },
2051 { 0.82451063690694526, 2.0000000000000000, 10.000000000000000,
2052 -1.0000000000000000 },
2053 { 1.0000000000000000, 2.0000000000000000, 10.000000000000000,
2054 0.0000000000000000 },
2055 { 1.2306214716549471, 2.0000000000000000, 10.000000000000000,
2056 1.0000000000000000 },
2057 { 1.5389392974099088, 2.0000000000000000, 10.000000000000000,
2058 2.0000000000000000 },
2059 { 1.9587362987499699, 2.0000000000000000, 10.000000000000000,
2060 3.0000000000000000 },
2061 { 2.5414934688204727, 2.0000000000000000, 10.000000000000000,
2062 4.0000000000000000 },
2063 { 3.3670852989803555, 2.0000000000000000, 10.000000000000000,
2064 5.0000000000000000 },
2065 { 4.5617124027865650, 2.0000000000000000, 10.000000000000000,
2066 6.0000000000000000 },
2067 { 6.3284392760597825, 2.0000000000000000, 10.000000000000000,
2068 7.0000000000000000 },
2069 { 9.0000000000000036, 2.0000000000000000, 10.000000000000000,
2070 8.0000000000000000 },
2071 { 13.131492174742865, 2.0000000000000000, 10.000000000000000,
2072 9.0000000000000000 },
2073 { 19.665496455238888, 2.0000000000000000, 10.000000000000000,
2074 10.000000000000000 },
2076 const double toler040 = 2.5000000000000020e-13;
2078 // Test data for a=5.0000000000000000, c=1.0000000000000000.
2079 // max(|f - f_GSL|): 1.1175870895385742e-08
2080 // max(|f - f_GSL| / |f_GSL|): 5.3427429899548483e-12
2081 const testcase_conf_hyperg<double>
2082 data041[21] =
2084 { 0.00049939922738733290, 5.0000000000000000, 1.0000000000000000,
2085 -10.000000000000000 },
2086 { -0.00057077034390089253, 5.0000000000000000, 1.0000000000000000,
2087 -9.0000000000000000 },
2088 { -0.0032428054030576147, 5.0000000000000000, 1.0000000000000000,
2089 -8.0000000000000000 },
2090 { -0.0078649819529077025, 5.0000000000000000, 1.0000000000000000,
2091 -7.0000000000000000 },
2092 { -0.012393760883331793, 5.0000000000000000, 1.0000000000000000,
2093 -6.0000000000000000 },
2094 { -0.0087031815404853934, 5.0000000000000000, 1.0000000000000000,
2095 -5.0000000000000000 },
2096 { 0.018315638888832021, 5.0000000000000000, 1.0000000000000000,
2097 -4.0000000000000000 },
2098 { 0.068457219005814696, 5.0000000000000000, 1.0000000000000000,
2099 -3.0000000000000000 },
2100 { 0.045111761078875295, 5.0000000000000000, 1.0000000000000000,
2101 -2.0000000000000000 },
2102 { -0.22992465073215118, 5.0000000000000000, 1.0000000000000000,
2103 -1.0000000000000000 },
2104 { 1.0000000000000000, 5.0000000000000000, 1.0000000000000000,
2105 0.0000000000000000 },
2106 { 23.671704256164183, 5.0000000000000000, 1.0000000000000000,
2107 1.0000000000000000 },
2108 { 199.50451467112745, 5.0000000000000000, 1.0000000000000000,
2109 2.0000000000000000 },
2110 { 1232.7498286606428, 5.0000000000000000, 1.0000000000000000,
2111 3.0000000000000000 },
2112 { 6460.7810872554019, 5.0000000000000000, 1.0000000000000000,
2113 4.0000000000000000 },
2114 { 30480.352550691663, 5.0000000000000000, 1.0000000000000000,
2115 5.0000000000000000 },
2116 { 133534.93064609537, 5.0000000000000000, 1.0000000000000000,
2117 6.0000000000000000 },
2118 { 553479.89366849652, 5.0000000000000000, 1.0000000000000000,
2119 7.0000000000000000 },
2120 { 2196966.0364497532, 5.0000000000000000, 1.0000000000000000,
2121 8.0000000000000000 },
2122 { 8422142.8572236635, 5.0000000000000000, 1.0000000000000000,
2123 9.0000000000000000 },
2124 { 31373029.447069697, 5.0000000000000000, 1.0000000000000000,
2125 10.000000000000000 },
2127 const double toler041 = 5.0000000000000034e-10;
2129 // Test data for a=5.0000000000000000, c=2.0000000000000000.
2130 // max(|f - f_GSL|): 1.8626451492309570e-09
2131 // max(|f - f_GSL| / |f_GSL|): 1.4711248979266200e-12
2132 const testcase_conf_hyperg<double>
2133 data042[21] =
2135 { -0.00025726626865408078, 5.0000000000000000, 2.0000000000000000,
2136 -10.000000000000000 },
2137 { -0.00029309828470586396, 5.0000000000000000, 2.0000000000000000,
2138 -9.0000000000000000 },
2139 { -0.00011182087596750400, 5.0000000000000000, 2.0000000000000000,
2140 -8.0000000000000000 },
2141 { 0.00064591639226778245, 5.0000000000000000, 2.0000000000000000,
2142 -7.0000000000000000 },
2143 { 0.0024787521766663585, 5.0000000000000000, 2.0000000000000000,
2144 -6.0000000000000000 },
2145 { 0.0053342080409426616, 5.0000000000000000, 2.0000000000000000,
2146 -5.0000000000000000 },
2147 { 0.0061052129629022966, 5.0000000000000000, 2.0000000000000000,
2148 -4.0000000000000000 },
2149 { -0.0062233835459823200, 5.0000000000000000, 2.0000000000000000,
2150 -3.0000000000000000 },
2151 { -0.045111761078871798, 5.0000000000000000, 2.0000000000000000,
2152 -2.0000000000000000 },
2153 { -0.015328310048810216, 5.0000000000000000, 2.0000000000000000,
2154 -1.0000000000000000 },
2155 { 1.0000000000000000, 5.0000000000000000, 2.0000000000000000,
2156 0.0000000000000000 },
2157 { 8.2681072282295975, 5.0000000000000000, 2.0000000000000000,
2158 1.0000000000000000 },
2159 { 46.797355293227440, 5.0000000000000000, 2.0000000000000000,
2160 2.0000000000000000 },
2161 { 223.45159827046285, 5.0000000000000000, 2.0000000000000000,
2162 3.0000000000000000 },
2163 { 964.56731725221459, 5.0000000000000000, 2.0000000000000000,
2164 4.0000000000000000 },
2165 { 3889.6615448133625, 5.0000000000000000, 2.0000000000000000,
2166 5.0000000000000000 },
2167 { 14926.865359231202, 5.0000000000000000, 2.0000000000000000,
2168 6.0000000000000000 },
2169 { 55151.509259297891, 5.0000000000000000, 2.0000000000000000,
2170 7.0000000000000000 },
2171 { 197736.87980710136, 5.0000000000000000, 2.0000000000000000,
2172 8.0000000000000000 },
2173 { 691800.79031674843, 5.0000000000000000, 2.0000000000000000,
2174 9.0000000000000000 },
2175 { 2371516.1505741901, 5.0000000000000000, 2.0000000000000000,
2176 10.000000000000000 },
2178 const double toler042 = 1.0000000000000006e-10;
2180 // Test data for a=5.0000000000000000, c=3.0000000000000000.
2181 // max(|f - f_GSL|): 5.8207660913467407e-11
2182 // max(|f - f_GSL| / |f_GSL|): 7.8471940260477516e-13
2183 const testcase_conf_hyperg<double>
2184 data043[21] =
2186 { 0.00012106647936662629, 5.0000000000000000, 3.0000000000000000,
2187 -10.000000000000000 },
2188 { 0.00021596715715168925, 5.0000000000000000, 3.0000000000000000,
2189 -9.0000000000000000 },
2190 { 0.00033546262790251185, 5.0000000000000000, 3.0000000000000000,
2191 -8.0000000000000000 },
2192 { 0.00037995081898104839, 5.0000000000000000, 3.0000000000000000,
2193 -7.0000000000000000 },
2194 { 0.0000000000000000, 5.0000000000000000, 3.0000000000000000,
2195 -6.0000000000000000 },
2196 { -0.0016844867497713668, 5.0000000000000000, 3.0000000000000000,
2197 -5.0000000000000000 },
2198 { -0.0061052129629113917, 5.0000000000000000, 3.0000000000000000,
2199 -4.0000000000000000 },
2200 { -0.012446767091965986, 5.0000000000000000, 3.0000000000000000,
2201 -3.0000000000000000 },
2202 { 0.0000000000000000, 5.0000000000000000, 3.0000000000000000,
2203 -2.0000000000000000 },
2204 { 0.15328310048810101, 5.0000000000000000, 3.0000000000000000,
2205 -1.0000000000000000 },
2206 { 1.0000000000000000, 5.0000000000000000, 3.0000000000000000,
2207 0.0000000000000000 },
2208 { 4.7569931998033290, 5.0000000000000000, 3.0000000000000000,
2209 1.0000000000000000 },
2210 { 19.704149597148401, 5.0000000000000000, 3.0000000000000000,
2211 2.0000000000000000 },
2212 { 75.320763461953760, 5.0000000000000000, 3.0000000000000000,
2213 3.0000000000000000 },
2214 { 272.99075016572118, 5.0000000000000000, 3.0000000000000000,
2215 4.0000000000000000 },
2216 { 952.31777090819992, 5.0000000000000000, 3.0000000000000000,
2217 5.0000000000000000 },
2218 { 3227.4303479418809, 5.0000000000000000, 3.0000000000000000,
2219 6.0000000000000000 },
2220 { 10692.173294677470, 5.0000000000000000, 3.0000000000000000,
2221 7.0000000000000000 },
2222 { 34777.843182153498, 5.0000000000000000, 3.0000000000000000,
2223 8.0000000000000000 },
2224 { 111417.40400416154, 5.0000000000000000, 3.0000000000000000,
2225 9.0000000000000000 },
2226 { 352423.45271690749, 5.0000000000000000, 3.0000000000000000,
2227 10.000000000000000 },
2229 const double toler043 = 5.0000000000000028e-11;
2231 // Test data for a=5.0000000000000000, c=4.0000000000000000.
2232 // max(|f - f_GSL|): 1.4551915228366852e-11
2233 // max(|f - f_GSL| / |f_GSL|): 4.8846719461489400e-13
2234 const testcase_conf_hyperg<double>
2235 data044[21] =
2237 { -6.8099894643727278e-05, 5.0000000000000000, 4.0000000000000000,
2238 -10.000000000000000 },
2239 { -0.00015426225510834944, 5.0000000000000000, 4.0000000000000000,
2240 -9.0000000000000000 },
2241 { -0.00033546262790251185, 5.0000000000000000, 4.0000000000000000,
2242 -8.0000000000000000 },
2243 { -0.00068391147416588716, 5.0000000000000000, 4.0000000000000000,
2244 -7.0000000000000000 },
2245 { -0.0012393760883331792, 5.0000000000000000, 4.0000000000000000,
2246 -6.0000000000000000 },
2247 { -0.0016844867497713668, 5.0000000000000000, 4.0000000000000000,
2248 -5.0000000000000000 },
2249 { 0.0000000000000000, 5.0000000000000000, 4.0000000000000000,
2250 -4.0000000000000000 },
2251 { 0.012446767091965986, 5.0000000000000000, 4.0000000000000000,
2252 -3.0000000000000000 },
2253 { 0.067667641618306351, 5.0000000000000000, 4.0000000000000000,
2254 -2.0000000000000000 },
2255 { 0.27590958087858175, 5.0000000000000000, 4.0000000000000000,
2256 -1.0000000000000000 },
2257 { 1.0000000000000000, 5.0000000000000000, 4.0000000000000000,
2258 0.0000000000000000 },
2259 { 3.3978522855738063, 5.0000000000000000, 4.0000000000000000,
2260 1.0000000000000000 },
2261 { 11.083584148395975, 5.0000000000000000, 4.0000000000000000,
2262 2.0000000000000000 },
2263 { 35.149689615578417, 5.0000000000000000, 4.0000000000000000,
2264 3.0000000000000000 },
2265 { 109.19630006628847, 5.0000000000000000, 4.0000000000000000,
2266 4.0000000000000000 },
2267 { 333.92960798079736, 5.0000000000000000, 4.0000000000000000,
2268 5.0000000000000000 },
2269 { 1008.5719837318378, 5.0000000000000000, 4.0000000000000000,
2270 6.0000000000000000 },
2271 { 3015.7411856782610, 5.0000000000000000, 4.0000000000000000,
2272 7.0000000000000000 },
2273 { 8942.8739611251840, 5.0000000000000000, 4.0000000000000000,
2274 8.0000000000000000 },
2275 { 26335.022764620000, 5.0000000000000000, 4.0000000000000000,
2276 9.0000000000000000 },
2277 { 77092.630281823513, 5.0000000000000000, 4.0000000000000000,
2278 10.000000000000000 },
2280 const double toler044 = 2.5000000000000014e-11;
2282 // Test data for a=5.0000000000000000, c=5.0000000000000000.
2283 // max(|f - f_GSL|): 0.0000000000000000
2284 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
2285 const testcase_conf_hyperg<double>
2286 data045[21] =
2288 { 4.5399929762484854e-05, 5.0000000000000000, 5.0000000000000000,
2289 -10.000000000000000 },
2290 { 0.00012340980408667956, 5.0000000000000000, 5.0000000000000000,
2291 -9.0000000000000000 },
2292 { 0.00033546262790251185, 5.0000000000000000, 5.0000000000000000,
2293 -8.0000000000000000 },
2294 { 0.00091188196555451624, 5.0000000000000000, 5.0000000000000000,
2295 -7.0000000000000000 },
2296 { 0.0024787521766663585, 5.0000000000000000, 5.0000000000000000,
2297 -6.0000000000000000 },
2298 { 0.0067379469990854670, 5.0000000000000000, 5.0000000000000000,
2299 -5.0000000000000000 },
2300 { 0.018315638888734179, 5.0000000000000000, 5.0000000000000000,
2301 -4.0000000000000000 },
2302 { 0.049787068367863944, 5.0000000000000000, 5.0000000000000000,
2303 -3.0000000000000000 },
2304 { 0.13533528323661270, 5.0000000000000000, 5.0000000000000000,
2305 -2.0000000000000000 },
2306 { 0.36787944117144233, 5.0000000000000000, 5.0000000000000000,
2307 -1.0000000000000000 },
2308 { 1.0000000000000000, 5.0000000000000000, 5.0000000000000000,
2309 0.0000000000000000 },
2310 { 2.7182818284590451, 5.0000000000000000, 5.0000000000000000,
2311 1.0000000000000000 },
2312 { 7.3890560989306504, 5.0000000000000000, 5.0000000000000000,
2313 2.0000000000000000 },
2314 { 20.085536923187668, 5.0000000000000000, 5.0000000000000000,
2315 3.0000000000000000 },
2316 { 54.598150033144236, 5.0000000000000000, 5.0000000000000000,
2317 4.0000000000000000 },
2318 { 148.41315910257660, 5.0000000000000000, 5.0000000000000000,
2319 5.0000000000000000 },
2320 { 403.42879349273511, 5.0000000000000000, 5.0000000000000000,
2321 6.0000000000000000 },
2322 { 1096.6331584284585, 5.0000000000000000, 5.0000000000000000,
2323 7.0000000000000000 },
2324 { 2980.9579870417283, 5.0000000000000000, 5.0000000000000000,
2325 8.0000000000000000 },
2326 { 8103.0839275753842, 5.0000000000000000, 5.0000000000000000,
2327 9.0000000000000000 },
2328 { 22026.465794806718, 5.0000000000000000, 5.0000000000000000,
2329 10.000000000000000 },
2331 const double toler045 = 2.5000000000000020e-13;
2333 // Test data for a=5.0000000000000000, c=6.0000000000000000.
2334 // max(|f - f_GSL|): 9.0949470177292824e-13
2335 // max(|f - f_GSL| / |f_GSL|): 1.4537973070007893e-13
2336 const testcase_conf_hyperg<double>
2337 data046[21] =
2339 { 0.0011648967743076431, 5.0000000000000000, 6.0000000000000000,
2340 -10.000000000000000 },
2341 { 0.0019205128456127479, 5.0000000000000000, 6.0000000000000000,
2342 -9.0000000000000000 },
2343 { 0.0032972446271226320, 5.0000000000000000, 6.0000000000000000,
2344 -8.0000000000000000 },
2345 { 0.0059047424914709006, 5.0000000000000000, 6.0000000000000000,
2346 -7.0000000000000000 },
2347 { 0.011033078698817415, 5.0000000000000000, 6.0000000000000000,
2348 -6.0000000000000000 },
2349 { 0.021485057853495849, 5.0000000000000000, 6.0000000000000000,
2350 -5.0000000000000000 },
2351 { 0.043495671658608563, 5.0000000000000000, 6.0000000000000000,
2352 -4.0000000000000000 },
2353 { 0.091228027395668113, 5.0000000000000000, 6.0000000000000000,
2354 -3.0000000000000000 },
2355 { 0.19744881503891684, 5.0000000000000000, 6.0000000000000000,
2356 -2.0000000000000000 },
2357 { 0.43918161928124549, 5.0000000000000000, 6.0000000000000000,
2358 -1.0000000000000000 },
2359 { 1.0000000000000000, 5.0000000000000000, 6.0000000000000000,
2360 0.0000000000000000 },
2361 { 2.3226822806570353, 5.0000000000000000, 6.0000000000000000,
2362 1.0000000000000000 },
2363 { 5.4863201236633126, 5.0000000000000000, 6.0000000000000000,
2364 2.0000000000000000 },
2365 { 13.144500379942246, 5.0000000000000000, 6.0000000000000000,
2366 3.0000000000000000 },
2367 { 31.873916035045458, 5.0000000000000000, 6.0000000000000000,
2368 4.0000000000000000 },
2369 { 78.086286951596321, 5.0000000000000000, 6.0000000000000000,
2370 5.0000000000000000 },
2371 { 192.98291046720357, 5.0000000000000000, 6.0000000000000000,
2372 6.0000000000000000 },
2373 { 480.54877204888402, 5.0000000000000000, 6.0000000000000000,
2374 7.0000000000000000 },
2375 { 1204.4605636118315, 5.0000000000000000, 6.0000000000000000,
2376 8.0000000000000000 },
2377 { 3036.1329048350581, 5.0000000000000000, 6.0000000000000000,
2378 9.0000000000000000 },
2379 { 7691.6406555465046, 5.0000000000000000, 6.0000000000000000,
2380 10.000000000000000 },
2382 const double toler046 = 1.0000000000000006e-11;
2384 // Test data for a=5.0000000000000000, c=7.0000000000000000.
2385 // max(|f - f_GSL|): 1.0004441719502211e-11
2386 // max(|f - f_GSL| / |f_GSL|): 5.0762860793473551e-14
2387 const testcase_conf_hyperg<double>
2388 data047[21] =
2390 { 0.0036308901122103932, 5.0000000000000000, 7.0000000000000000,
2391 -10.000000000000000 },
2392 { 0.0055327336019229401, 5.0000000000000000, 7.0000000000000000,
2393 -9.0000000000000000 },
2394 { 0.0086767852656603455, 5.0000000000000000, 7.0000000000000000,
2395 -8.0000000000000000 },
2396 { 0.014030481266326614, 5.0000000000000000, 7.0000000000000000,
2397 -7.0000000000000000 },
2398 { 0.023426839582149212, 5.0000000000000000, 7.0000000000000000,
2399 -6.0000000000000000 },
2400 { 0.040427681994512799, 5.0000000000000000, 7.0000000000000000,
2401 -5.0000000000000000 },
2402 { 0.072123784177593755, 5.0000000000000000, 7.0000000000000000,
2403 -4.0000000000000000 },
2404 { 0.13295857409596740, 5.0000000000000000, 7.0000000000000000,
2405 -3.0000000000000000 },
2406 { 0.25298991319893882, 5.0000000000000000, 7.0000000000000000,
2407 -2.0000000000000000 },
2408 { 0.49602437239337821, 5.0000000000000000, 7.0000000000000000,
2409 -1.0000000000000000 },
2410 { 1.0000000000000000, 5.0000000000000000, 7.0000000000000000,
2411 0.0000000000000000 },
2412 { 2.0681072498819240, 5.0000000000000000, 7.0000000000000000,
2413 1.0000000000000000 },
2414 { 4.3768811129698140, 5.0000000000000000, 7.0000000000000000,
2415 2.0000000000000000 },
2416 { 9.4566368471992224, 5.0000000000000000, 7.0000000000000000,
2417 3.0000000000000000 },
2418 { 20.811741224531826, 5.0000000000000000, 7.0000000000000000,
2419 4.0000000000000000 },
2420 { 46.556488803696276, 5.0000000000000000, 7.0000000000000000,
2421 5.0000000000000000 },
2422 { 105.66804767556316, 5.0000000000000000, 7.0000000000000000,
2423 6.0000000000000000 },
2424 { 242.93097638084433, 5.0000000000000000, 7.0000000000000000,
2425 7.0000000000000000 },
2426 { 564.89804380887358, 5.0000000000000000, 7.0000000000000000,
2427 8.0000000000000000 },
2428 { 1326.9606865425994, 5.0000000000000000, 7.0000000000000000,
2429 9.0000000000000000 },
2430 { 3145.3685154983905, 5.0000000000000000, 7.0000000000000000,
2431 10.000000000000000 },
2433 const double toler047 = 5.0000000000000029e-12;
2435 // Test data for a=5.0000000000000000, c=8.0000000000000000.
2436 // max(|f - f_GSL|): 6.2527760746888816e-13
2437 // max(|f - f_GSL| / |f_GSL|): 3.7668660800670828e-14
2438 const testcase_conf_hyperg<double>
2439 data048[21] =
2441 { 0.0075295293831406113, 5.0000000000000000, 8.0000000000000000,
2442 -10.000000000000000 },
2443 { 0.010936052508673187, 5.0000000000000000, 8.0000000000000000,
2444 -9.0000000000000000 },
2445 { 0.016247454253649721, 5.0000000000000000, 8.0000000000000000,
2446 -8.0000000000000000 },
2447 { 0.024729468107576008, 5.0000000000000000, 8.0000000000000000,
2448 -7.0000000000000000 },
2449 { 0.038615775445860964, 5.0000000000000000, 8.0000000000000000,
2450 -6.0000000000000000 },
2451 { 0.061937865588523586, 5.0000000000000000, 8.0000000000000000,
2452 -5.0000000000000000 },
2453 { 0.10213565389690644, 5.0000000000000000, 8.0000000000000000,
2454 -4.0000000000000000 },
2455 { 0.17324118243379236, 5.0000000000000000, 8.0000000000000000,
2456 -3.0000000000000000 },
2457 { 0.30228316551605494, 5.0000000000000000, 8.0000000000000000,
2458 -2.0000000000000000 },
2459 { 0.54238748802203829, 5.0000000000000000, 8.0000000000000000,
2460 -1.0000000000000000 },
2461 { 1.0000000000000000, 5.0000000000000000, 8.0000000000000000,
2462 0.0000000000000000 },
2463 { 1.8922997283093959, 5.0000000000000000, 8.0000000000000000,
2464 1.0000000000000000 },
2465 { 3.6699742831126270, 5.0000000000000000, 8.0000000000000000,
2466 2.0000000000000000 },
2467 { 7.2831842359960941, 5.0000000000000000, 8.0000000000000000,
2468 3.0000000000000000 },
2469 { 14.764676530664770, 5.0000000000000000, 8.0000000000000000,
2470 4.0000000000000000 },
2471 { 30.522558591756702, 5.0000000000000000, 8.0000000000000000,
2472 5.0000000000000000 },
2473 { 64.236147093730224, 5.0000000000000000, 8.0000000000000000,
2474 6.0000000000000000 },
2475 { 137.40503032883331, 5.0000000000000000, 8.0000000000000000,
2476 7.0000000000000000 },
2477 { 298.29153884828770, 5.0000000000000000, 8.0000000000000000,
2478 8.0000000000000000 },
2479 { 656.29389355002752, 5.0000000000000000, 8.0000000000000000,
2480 9.0000000000000000 },
2481 { 1461.6183101433730, 5.0000000000000000, 8.0000000000000000,
2482 10.000000000000000 },
2484 const double toler048 = 2.5000000000000015e-12;
2486 // Test data for a=5.0000000000000000, c=9.0000000000000000.
2487 // max(|f - f_GSL|): 1.4779288903810084e-12
2488 // max(|f - f_GSL| / |f_GSL|): 1.3332193464342236e-14
2489 const testcase_conf_hyperg<double>
2490 data049[21] =
2492 { 0.012801285049305222, 5.0000000000000000, 9.0000000000000000,
2493 -10.000000000000000 },
2494 { 0.017955923031350202, 5.0000000000000000, 9.0000000000000000,
2495 -9.0000000000000000 },
2496 { 0.025661650371090718, 5.0000000000000000, 9.0000000000000000,
2497 -8.0000000000000000 },
2498 { 0.037414616710204310, 5.0000000000000000, 9.0000000000000000,
2499 -7.0000000000000000 },
2500 { 0.055720934057414885, 5.0000000000000000, 9.0000000000000000,
2501 -6.0000000000000000 },
2502 { 0.084862956151756000, 5.0000000000000000, 9.0000000000000000,
2503 -5.0000000000000000 },
2504 { 0.13230635170162319, 5.0000000000000000, 9.0000000000000000,
2505 -4.0000000000000000 },
2506 { 0.21132914572142125, 5.0000000000000000, 9.0000000000000000,
2507 -3.0000000000000000 },
2508 { 0.34601808641639625, 5.0000000000000000, 9.0000000000000000,
2509 -2.0000000000000000 },
2510 { 0.58092180965710882, 5.0000000000000000, 9.0000000000000000,
2511 -1.0000000000000000 },
2512 { 1.0000000000000000, 5.0000000000000000, 9.0000000000000000,
2513 0.0000000000000000 },
2514 { 1.7643922061378634, 5.0000000000000000, 9.0000000000000000,
2515 1.0000000000000000 },
2516 { 3.1888010096332451, 5.0000000000000000, 9.0000000000000000,
2517 2.0000000000000000 },
2518 { 5.8981194929479273, 5.0000000000000000, 9.0000000000000000,
2519 3.0000000000000000 },
2520 { 11.152835510393174, 5.0000000000000000, 9.0000000000000000,
2521 4.0000000000000000 },
2522 { 21.533483453443495, 5.0000000000000000, 9.0000000000000000,
2523 5.0000000000000000 },
2524 { 42.397145995355721, 5.0000000000000000, 9.0000000000000000,
2525 6.0000000000000000 },
2526 { 85.010891404859976, 5.0000000000000000, 9.0000000000000000,
2527 7.0000000000000000 },
2528 { 173.36225868739959, 5.0000000000000000, 9.0000000000000000,
2529 8.0000000000000000 },
2530 { 359.10444177844266, 5.0000000000000000, 9.0000000000000000,
2531 9.0000000000000000 },
2532 { 754.64844371961408, 5.0000000000000000, 9.0000000000000000,
2533 10.000000000000000 },
2535 const double toler049 = 1.0000000000000008e-12;
2537 // Test data for a=5.0000000000000000, c=10.000000000000000.
2538 // max(|f - f_GSL|): 5.1159076974727213e-13
2539 // max(|f - f_GSL| / |f_GSL|): 7.5019093654907020e-15
2540 const testcase_conf_hyperg<double>
2541 data050[21] =
2543 { 0.019313731161840469, 5.0000000000000000, 10.000000000000000,
2544 -10.000000000000000 },
2545 { 0.026361085775183927, 5.0000000000000000, 10.000000000000000,
2546 -9.0000000000000000 },
2547 { 0.036556772070711910, 5.0000000000000000, 10.000000000000000,
2548 -8.0000000000000000 },
2549 { 0.051563934048344140, 5.0000000000000000, 10.000000000000000,
2550 -7.0000000000000000 },
2551 { 0.074056625794521824, 5.0000000000000000, 10.000000000000000,
2552 -6.0000000000000000 },
2553 { 0.10841132531381445, 5.0000000000000000, 10.000000000000000,
2554 -5.0000000000000000 },
2555 { 0.16192115120742598, 5.0000000000000000, 10.000000000000000,
2556 -4.0000000000000000 },
2557 { 0.24696279814742436, 5.0000000000000000, 10.000000000000000,
2558 -3.0000000000000000 },
2559 { 0.38492640633381947, 5.0000000000000000, 10.000000000000000,
2560 -2.0000000000000000 },
2561 { 0.61345628229723270, 5.0000000000000000, 10.000000000000000,
2562 -1.0000000000000000 },
2563 { 1.0000000000000000, 5.0000000000000000, 10.000000000000000,
2564 0.0000000000000000 },
2565 { 1.6675470647226096, 5.0000000000000000, 10.000000000000000,
2566 1.0000000000000000 },
2567 { 2.8442428103603667, 5.0000000000000000, 10.000000000000000,
2568 2.0000000000000000 },
2569 { 4.9603804008438397, 5.0000000000000000, 10.000000000000000,
2570 3.0000000000000000 },
2571 { 8.8405953071624790, 5.0000000000000000, 10.000000000000000,
2572 4.0000000000000000 },
2573 { 16.089667272320334, 5.0000000000000000, 10.000000000000000,
2574 5.0000000000000000 },
2575 { 29.876575194426895, 5.0000000000000000, 10.000000000000000,
2576 6.0000000000000000 },
2577 { 56.546719856432318, 5.0000000000000000, 10.000000000000000,
2578 7.0000000000000000 },
2579 { 108.97420168465270, 5.0000000000000000, 10.000000000000000,
2580 8.0000000000000000 },
2581 { 213.60609045832913, 5.0000000000000000, 10.000000000000000,
2582 9.0000000000000000 },
2583 { 425.41323880637168, 5.0000000000000000, 10.000000000000000,
2584 10.000000000000000 },
2586 const double toler050 = 5.0000000000000039e-13;
2588 // Test data for a=10.000000000000000, c=1.0000000000000000.
2589 // max(|f - f_GSL|): 4.7683715820312500e-06
2590 // max(|f - f_GSL| / |f_GSL|): 3.9070311524604618e-14
2591 const testcase_conf_hyperg<double>
2592 data051[21] =
2594 { 0.00067155063653961294, 10.000000000000000, 1.0000000000000000,
2595 -10.000000000000000 },
2596 { -0.00071555648905258684, 10.000000000000000, 1.0000000000000000,
2597 -9.0000000000000000 },
2598 { -0.0035372078786207375, 10.000000000000000, 1.0000000000000000,
2599 -8.0000000000000000 },
2600 { -0.0047884005574714370, 10.000000000000000, 1.0000000000000000,
2601 -7.0000000000000000 },
2602 { 0.0024787521766663585, 10.000000000000000, 1.0000000000000000,
2603 -6.0000000000000000 },
2604 { 0.018136827242522881, 10.000000000000000, 1.0000000000000000,
2605 -5.0000000000000000 },
2606 { 0.0099686175680129968, 10.000000000000000, 1.0000000000000000,
2607 -4.0000000000000000 },
2608 { -0.052832081031434205, 10.000000000000000, 1.0000000000000000,
2609 -3.0000000000000000 },
2610 { 0.0010979582061523968, 10.000000000000000, 1.0000000000000000,
2611 -2.0000000000000000 },
2612 { 0.11394854824644544, 10.000000000000000, 1.0000000000000000,
2613 -1.0000000000000000 },
2614 { 1.0000000000000000, 10.000000000000000, 1.0000000000000000,
2615 0.0000000000000000 },
2616 { 131.63017574352619, 10.000000000000000, 1.0000000000000000,
2617 1.0000000000000000 },
2618 { 2431.2913698755478, 10.000000000000000, 1.0000000000000000,
2619 2.0000000000000000 },
2620 { 27127.328899791049, 10.000000000000000, 1.0000000000000000,
2621 3.0000000000000000 },
2622 { 232066.49977835570, 10.000000000000000, 1.0000000000000000,
2623 4.0000000000000000 },
2624 { 1674401.3794931530, 10.000000000000000, 1.0000000000000000,
2625 5.0000000000000000 },
2626 { 10707495.820386341, 10.000000000000000, 1.0000000000000000,
2627 6.0000000000000000 },
2628 { 62515499.242815509, 10.000000000000000, 1.0000000000000000,
2629 7.0000000000000000 },
2630 { 339773485.00937450, 10.000000000000000, 1.0000000000000000,
2631 8.0000000000000000 },
2632 { 1742442474.2135217, 10.000000000000000, 1.0000000000000000,
2633 9.0000000000000000 },
2634 { 8514625476.5462780, 10.000000000000000, 1.0000000000000000,
2635 10.000000000000000 },
2637 const double toler051 = 2.5000000000000015e-12;
2639 // Test data for a=10.000000000000000, c=2.0000000000000000.
2640 // max(|f - f_GSL|): 1.7881393432617188e-07
2641 // max(|f - f_GSL| / |f_GSL|): 3.0525079910466156e-12
2642 const testcase_conf_hyperg<double>
2643 data052[21] =
2645 { -0.00014116415550486912, 10.000000000000000, 2.0000000000000000,
2646 -10.000000000000000 },
2647 { -0.00016988130843806985, 10.000000000000000, 2.0000000000000000,
2648 -9.0000000000000000 },
2649 { 6.6619209703391378e-05, 10.000000000000000, 2.0000000000000000,
2650 -8.0000000000000000 },
2651 { 0.00072582919646365740, 10.000000000000000, 2.0000000000000000,
2652 -7.0000000000000000 },
2653 { 0.0012039653429522313, 10.000000000000000, 2.0000000000000000,
2654 -6.0000000000000000 },
2655 { -0.00061450715370021329, 10.000000000000000, 2.0000000000000000,
2656 -5.0000000000000000 },
2657 { -0.0053557899960354968, 10.000000000000000, 2.0000000000000000,
2658 -4.0000000000000000 },
2659 { -0.00078903612815141473, 10.000000000000000, 2.0000000000000000,
2660 -3.0000000000000000 },
2661 { 0.023725444715554326, 10.000000000000000, 2.0000000000000000,
2662 -2.0000000000000000 },
2663 { -0.057297669024384767, 10.000000000000000, 2.0000000000000000,
2664 -1.0000000000000000 },
2665 { 1.0000000000000000, 10.000000000000000, 2.0000000000000000,
2666 0.0000000000000000 },
2667 { 34.432116659636534, 10.000000000000000, 2.0000000000000000,
2668 1.0000000000000000 },
2669 { 432.53475371634494, 10.000000000000000, 2.0000000000000000,
2670 2.0000000000000000 },
2671 { 3789.1768909683506, 10.000000000000000, 2.0000000000000000,
2672 3.0000000000000000 },
2673 { 27089.676185774806, 10.000000000000000, 2.0000000000000000,
2674 4.0000000000000000 },
2675 { 169243.72183073507, 10.000000000000000, 2.0000000000000000,
2676 5.0000000000000000 },
2677 { 959019.40135397331, 10.000000000000000, 2.0000000000000000,
2678 6.0000000000000000 },
2679 { 5043073.3458297960, 10.000000000000000, 2.0000000000000000,
2680 7.0000000000000000 },
2681 { 24989309.819281481, 10.000000000000000, 2.0000000000000000,
2682 8.0000000000000000 },
2683 { 117948708.50540228, 10.000000000000000, 2.0000000000000000,
2684 9.0000000000000000 },
2685 { 534524325.69810420, 10.000000000000000, 2.0000000000000000,
2686 10.000000000000000 },
2688 const double toler052 = 2.5000000000000017e-10;
2690 // Test data for a=10.000000000000000, c=3.0000000000000000.
2691 // max(|f - f_GSL|): 4.4703483581542969e-08
2692 // max(|f - f_GSL| / |f_GSL|): 3.1351462019253111e-11
2693 const testcase_conf_hyperg<double>
2694 data053[21] =
2696 { 1.4973169075105227e-05, 10.000000000000000, 3.0000000000000000,
2697 -10.000000000000000 },
2698 { 5.7627971015476266e-05, 10.000000000000000, 3.0000000000000000,
2699 -9.0000000000000000 },
2700 { 9.5964794084281178e-05, 10.000000000000000, 3.0000000000000000,
2701 -8.0000000000000000 },
2702 { 1.5479477810339013e-05, 10.000000000000000, 3.0000000000000000,
2703 -7.0000000000000000 },
2704 { -0.00035410745380947978, 10.000000000000000, 3.0000000000000000,
2705 -6.0000000000000000 },
2706 { -0.00078393993138610137, 10.000000000000000, 3.0000000000000000,
2707 -5.0000000000000000 },
2708 { 0.00038117202625584330, 10.000000000000000, 3.0000000000000000,
2709 -4.0000000000000000 },
2710 { 0.0045341794406447526, 10.000000000000000, 3.0000000000000000,
2711 -3.0000000000000000 },
2712 { -0.0031029253652133403, 10.000000000000000, 3.0000000000000000,
2713 -2.0000000000000000 },
2714 { -0.028487137061611361, 10.000000000000000, 3.0000000000000000,
2715 -1.0000000000000000 },
2716 { 1.0000000000000000, 10.000000000000000, 3.0000000000000000,
2717 0.0000000000000000 },
2718 { 15.691485606063274, 10.000000000000000, 3.0000000000000000,
2719 1.0000000000000000 },
2720 { 141.71088859081416, 10.000000000000000, 3.0000000000000000,
2721 2.0000000000000000 },
2722 { 997.55177799313731, 10.000000000000000, 3.0000000000000000,
2723 3.0000000000000000 },
2724 { 6038.6324280926056, 10.000000000000000, 3.0000000000000000,
2725 4.0000000000000000 },
2726 { 32946.952425437150, 10.000000000000000, 3.0000000000000000,
2727 5.0000000000000000 },
2728 { 166431.66712118863, 10.000000000000000, 3.0000000000000000,
2729 6.0000000000000000 },
2730 { 791818.30272061308, 10.000000000000000, 3.0000000000000000,
2731 7.0000000000000000 },
2732 { 3589678.0198700386, 10.000000000000000, 3.0000000000000000,
2733 8.0000000000000000 },
2734 { 15637649.698874988, 10.000000000000000, 3.0000000000000000,
2735 9.0000000000000000 },
2736 { 65871447.346678361, 10.000000000000000, 3.0000000000000000,
2737 10.000000000000000 },
2739 const double toler053 = 2.5000000000000013e-09;
2741 // Test data for a=10.000000000000000, c=4.0000000000000000.
2742 // max(|f - f_GSL|): 3.7252902984619141e-09
2743 // max(|f - f_GSL| / |f_GSL|): 7.5580354912480585e-11
2744 const testcase_conf_hyperg<double>
2745 data054[21] =
2747 { 6.9661267889527048e-06, 10.000000000000000, 4.0000000000000000,
2748 -10.000000000000000 },
2749 { -3.0301514396282942e-06, 10.000000000000000, 4.0000000000000000,
2750 -9.0000000000000000 },
2751 { -3.7983599138168025e-05, 10.000000000000000, 4.0000000000000000,
2752 -8.0000000000000000 },
2753 { -9.3615660121163871e-05, 10.000000000000000, 4.0000000000000000,
2754 -7.0000000000000000 },
2755 { -7.0821490761895943e-05, 10.000000000000000, 4.0000000000000000,
2756 -6.0000000000000000 },
2757 { 0.00030692863727646260, 10.000000000000000, 4.0000000000000000,
2758 -5.0000000000000000 },
2759 { 0.0010659895649527829, 10.000000000000000, 4.0000000000000000,
2760 -4.0000000000000000 },
2761 { -0.00042230102633456049, 10.000000000000000, 4.0000000000000000,
2762 -3.0000000000000000 },
2763 { -0.010168047735237568, 10.000000000000000, 4.0000000000000000,
2764 -2.0000000000000000 },
2765 { 0.036903514708782073, 10.000000000000000, 4.0000000000000000,
2766 -1.0000000000000000 },
2767 { 1.0000000000000000, 10.000000000000000, 4.0000000000000000,
2768 0.0000000000000000 },
2769 { 9.3384756433214022, 10.000000000000000, 4.0000000000000000,
2770 1.0000000000000000 },
2771 { 63.905561372021388, 10.000000000000000, 4.0000000000000000,
2772 2.0000000000000000 },
2773 { 370.08498456728779, 10.000000000000000, 4.0000000000000000,
2774 3.0000000000000000 },
2775 { 1922.9526217493540, 10.000000000000000, 4.0000000000000000,
2776 4.0000000000000000 },
2777 { 9245.0380014351485, 10.000000000000000, 4.0000000000000000,
2778 5.0000000000000000 },
2779 { 41898.961838459785, 10.000000000000000, 4.0000000000000000,
2780 6.0000000000000000 },
2781 { 181211.14084739226, 10.000000000000000, 4.0000000000000000,
2782 7.0000000000000000 },
2783 { 754384.25570692308, 10.000000000000000, 4.0000000000000000,
2784 8.0000000000000000 },
2785 { 3042060.4915799876, 10.000000000000000, 4.0000000000000000,
2786 9.0000000000000000 },
2787 { 11939626.424402930, 10.000000000000000, 4.0000000000000000,
2788 10.000000000000000 },
2790 const double toler054 = 5.0000000000000026e-09;
2792 // Test data for a=10.000000000000000, c=5.0000000000000000.
2793 // max(|f - f_GSL|): 1.1641532182693481e-10
2794 // max(|f - f_GSL| / |f_GSL|): 4.6734083284321249e-11
2795 const testcase_conf_hyperg<double>
2796 data055[21] =
2798 { -6.2454929831989742e-06, 10.000000000000000, 5.0000000000000000,
2799 -10.000000000000000 },
2800 { -1.1459481808048817e-05, 10.000000000000000, 5.0000000000000000,
2801 -9.0000000000000000 },
2802 { -8.1646988801669512e-06, 10.000000000000000, 5.0000000000000000,
2803 -8.0000000000000000 },
2804 { 3.1240400671775088e-05, 10.000000000000000, 5.0000000000000000,
2805 -7.0000000000000000 },
2806 { 0.00014164298152379191, 10.000000000000000, 5.0000000000000000,
2807 -6.0000000000000000 },
2808 { 0.00023172833594738382, 10.000000000000000, 5.0000000000000000,
2809 -5.0000000000000000 },
2810 { -0.00036825094062005215, 10.000000000000000, 5.0000000000000000,
2811 -4.0000000000000000 },
2812 { -0.0030227862937631683, 10.000000000000000, 5.0000000000000000,
2813 -3.0000000000000000 },
2814 { -0.00028642387986584918, 10.000000000000000, 5.0000000000000000,
2815 -2.0000000000000000 },
2816 { 0.10617896040159881, 10.000000000000000, 5.0000000000000000,
2817 -1.0000000000000000 },
2818 { 1.0000000000000000, 10.000000000000000, 5.0000000000000000,
2819 0.0000000000000000 },
2820 { 6.4803694966028260, 10.000000000000000, 5.0000000000000000,
2821 1.0000000000000000 },
2822 { 35.201619637445276, 10.000000000000000, 5.0000000000000000,
2823 2.0000000000000000 },
2824 { 171.58787257237464, 10.000000000000000, 5.0000000000000000,
2825 3.0000000000000000 },
2826 { 775.87148867205678, 10.000000000000000, 5.0000000000000000,
2827 4.0000000000000000 },
2828 { 3317.4071019773678, 10.000000000000000, 5.0000000000000000,
2829 5.0000000000000000 },
2830 { 13578.260535269774, 10.000000000000000, 5.0000000000000000,
2831 6.0000000000000000 },
2832 { 53651.761875039716, 10.000000000000000, 5.0000000000000000,
2833 7.0000000000000000 },
2834 { 205900.60390283042, 10.000000000000000, 5.0000000000000000,
2835 8.0000000000000000 },
2836 { 770979.49612334219, 10.000000000000000, 5.0000000000000000,
2837 9.0000000000000000 },
2838 { 2826613.2348531331, 10.000000000000000, 5.0000000000000000,
2839 10.000000000000000 },
2841 const double toler055 = 2.5000000000000013e-09;
2843 // Test data for a=10.000000000000000, c=6.0000000000000000.
2844 // max(|f - f_GSL|): 2.3283064365386963e-10
2845 // max(|f - f_GSL| / |f_GSL|): 2.5542822249778647e-10
2846 const testcase_conf_hyperg<double>
2847 data056[21] =
2849 { 9.6084507433830306e-07, 10.000000000000000, 6.0000000000000000,
2850 -10.000000000000000 },
2851 { 7.7131127554174726e-06, 10.000000000000000, 6.0000000000000000,
2852 -9.0000000000000000 },
2853 { 2.3074149009167486e-05, 10.000000000000000, 6.0000000000000000,
2854 -8.0000000000000000 },
2855 { 4.0105919781332888e-05, 10.000000000000000, 6.0000000000000000,
2856 -7.0000000000000000 },
2857 { -1.0325734976052423e-20, 10.000000000000000, 6.0000000000000000,
2858 -6.0000000000000000 },
2859 { -0.00029188857701064686, 10.000000000000000, 6.0000000000000000,
2860 -5.0000000000000000 },
2861 { -0.0010659895649527829, 10.000000000000000, 6.0000000000000000,
2862 -4.0000000000000000 },
2863 { -0.00044452739614164207, 10.000000000000000, 6.0000000000000000,
2864 -3.0000000000000000 },
2865 { 0.020049671590609285, 10.000000000000000, 6.0000000000000000,
2866 -2.0000000000000000 },
2867 { 0.17092282236966813, 10.000000000000000, 6.0000000000000000,
2868 -1.0000000000000000 },
2869 { 1.0000000000000000, 10.000000000000000, 6.0000000000000000,
2870 0.0000000000000000 },
2871 { 4.9520550902714549, 10.000000000000000, 6.0000000000000000,
2872 1.0000000000000000 },
2873 { 22.206263831706924, 10.000000000000000, 6.0000000000000000,
2874 2.0000000000000000 },
2875 { 93.074943420842843, 10.000000000000000, 6.0000000000000000,
2876 3.0000000000000000 },
2877 { 371.20964440523989, 10.000000000000000, 6.0000000000000000,
2878 4.0000000000000000 },
2879 { 1424.6976175888547, 10.000000000000000, 6.0000000000000000,
2880 5.0000000000000000 },
2881 { 5302.2070001902330, 10.000000000000000, 6.0000000000000000,
2882 6.0000000000000000 },
2883 { 19239.311823447424, 10.000000000000000, 6.0000000000000000,
2884 7.0000000000000000 },
2885 { 68341.221999215923, 10.000000000000000, 6.0000000000000000,
2886 8.0000000000000000 },
2887 { 238389.83519072225, 10.000000000000000, 6.0000000000000000,
2888 9.0000000000000000 },
2889 { 818592.04096678528, 10.000000000000000, 6.0000000000000000,
2890 10.000000000000000 },
2892 const double toler056 = 2.5000000000000012e-08;
2894 // Test data for a=10.000000000000000, c=7.0000000000000000.
2895 // max(|f - f_GSL|): 2.3283064365386963e-10
2896 // max(|f - f_GSL| / |f_GSL|): 1.7003920117988582e-08
2897 const testcase_conf_hyperg<double>
2898 data057[21] =
2900 { 3.9634859316455036e-06, 10.000000000000000, 7.0000000000000000,
2901 -10.000000000000000 },
2902 { 4.4074930030956985e-06, 10.000000000000000, 7.0000000000000000,
2903 -9.0000000000000000 },
2904 { -5.3248036175001926e-06, 10.000000000000000, 7.0000000000000000,
2905 -8.0000000000000000 },
2906 { -5.0660109197473119e-05, 10.000000000000000, 7.0000000000000000,
2907 -7.0000000000000000 },
2908 { -0.00017705372690473989, 10.000000000000000, 7.0000000000000000,
2909 -6.0000000000000000 },
2910 { -0.00034759250392107574, 10.000000000000000, 7.0000000000000000,
2911 -5.0000000000000000 },
2912 { 0.00029072442680530428, 10.000000000000000, 7.0000000000000000,
2913 -4.0000000000000000 },
2914 { 0.0071124383382662791, 10.000000000000000, 7.0000000000000000,
2915 -3.0000000000000000 },
2916 { 0.046185850628367824, 10.000000000000000, 7.0000000000000000,
2917 -2.0000000000000000 },
2918 { 0.22919473120601763, 10.000000000000000, 7.0000000000000000,
2919 -1.0000000000000000 },
2920 { 1.0000000000000000, 10.000000000000000, 7.0000000000000000,
2921 0.0000000000000000 },
2922 { 4.0342754120781059, 10.000000000000000, 7.0000000000000000,
2923 1.0000000000000000 },
2924 { 15.423188523958418, 10.000000000000000, 7.0000000000000000,
2925 2.0000000000000000 },
2926 { 56.669907747565212, 10.000000000000000, 7.0000000000000000,
2927 3.0000000000000000 },
2928 { 201.92649139242229, 10.000000000000000, 7.0000000000000000,
2929 4.0000000000000000 },
2930 { 702.01780019948944, 10.000000000000000, 7.0000000000000000,
2931 5.0000000000000000 },
2932 { 2391.7564185640726, 10.000000000000000, 7.0000000000000000,
2933 6.0000000000000000 },
2934 { 8011.5144629634615, 10.000000000000000, 7.0000000000000000,
2935 7.0000000000000000 },
2936 { 26450.087535814702, 10.000000000000000, 7.0000000000000000,
2937 8.0000000000000000 },
2938 { 86239.964657766584, 10.000000000000000, 7.0000000000000000,
2939 9.0000000000000000 },
2940 { 278127.83396458329, 10.000000000000000, 7.0000000000000000,
2941 10.000000000000000 },
2943 const double toler057 = 1.0000000000000004e-06;
2945 // Test data for a=10.000000000000000, c=8.0000000000000000.
2946 // max(|f - f_GSL|): 2.9103830456733704e-11
2947 // max(|f - f_GSL| / |f_GSL|): 3.9656315544900790e-11
2948 const testcase_conf_hyperg<double>
2949 data058[21] =
2951 { -5.0444366402760974e-06, 10.000000000000000, 8.0000000000000000,
2952 -10.000000000000000 },
2953 { -1.5426225510834945e-05, 10.000000000000000, 8.0000000000000000,
2954 -9.0000000000000000 },
2955 { -3.7273625322501334e-05, 10.000000000000000, 8.0000000000000000,
2956 -8.0000000000000000 },
2957 { -6.3325136496841588e-05, 10.000000000000000, 8.0000000000000000,
2958 -7.0000000000000000 },
2959 { 0.0000000000000000, 10.000000000000000, 8.0000000000000000,
2960 -6.0000000000000000 },
2961 { 0.00065507818046664252, 10.000000000000000, 8.0000000000000000,
2962 -5.0000000000000000 },
2963 { 0.0040701419752742617, 10.000000000000000, 8.0000000000000000,
2964 -4.0000000000000000 },
2965 { 0.018670150637948978, 10.000000000000000, 8.0000000000000000,
2966 -3.0000000000000000 },
2967 { 0.075186268464784836, 10.000000000000000, 8.0000000000000000,
2968 -2.0000000000000000 },
2969 { 0.28101901756151842, 10.000000000000000, 8.0000000000000000,
2970 -1.0000000000000000 },
2971 { 1.0000000000000000, 10.000000000000000, 8.0000000000000000,
2972 0.0000000000000000 },
2973 { 3.4356061998579595, 10.000000000000000, 8.0000000000000000,
2974 1.0000000000000000 },
2975 { 11.494087265003234, 10.000000000000000, 8.0000000000000000,
2976 2.0000000000000000 },
2977 { 37.660381730976880, 10.000000000000000, 8.0000000000000000,
2978 3.0000000000000000 },
2979 { 121.32922229587608, 10.000000000000000, 8.0000000000000000,
2980 4.0000000000000000 },
2981 { 385.46195489141422, 10.000000000000000, 8.0000000000000000,
2982 5.0000000000000000 },
2983 { 1210.2863804782053, 10.000000000000000, 8.0000000000000000,
2984 6.0000000000000000 },
2985 { 3762.0609740531836, 10.000000000000000, 8.0000000000000000,
2986 7.0000000000000000 },
2987 { 11592.614394051165, 10.000000000000000, 8.0000000000000000,
2988 8.0000000000000000 },
2989 { 35450.992183142305, 10.000000000000000, 8.0000000000000000,
2990 9.0000000000000000 },
2991 { 107684.94388572175, 10.000000000000000, 8.0000000000000000,
2992 10.000000000000000 },
2994 const double toler058 = 2.5000000000000013e-09;
2996 // Test data for a=10.000000000000000, c=9.0000000000000000.
2997 // max(|f - f_GSL|): 9.0949470177292824e-12
2998 // max(|f - f_GSL| / |f_GSL|): 3.7408279162146281e-11
2999 const testcase_conf_hyperg<double>
3000 data059[21] =
3002 { -5.0444366402760974e-06, 10.000000000000000, 9.0000000000000000,
3003 -10.000000000000000 },
3004 { 0.0000000000000000, 10.000000000000000, 9.0000000000000000,
3005 -9.0000000000000000 },
3006 { 3.7273625322501334e-05, 10.000000000000000, 9.0000000000000000,
3007 -8.0000000000000000 },
3008 { 0.00020264043678989247, 10.000000000000000, 9.0000000000000000,
3009 -7.0000000000000000 },
3010 { 0.00082625072555545290, 10.000000000000000, 9.0000000000000000,
3011 -6.0000000000000000 },
3012 { 0.0029946431107046520, 10.000000000000000, 9.0000000000000000,
3013 -5.0000000000000000 },
3014 { 0.010175354938185655, 10.000000000000000, 9.0000000000000000,
3015 -4.0000000000000000 },
3016 { 0.033191378911909299, 10.000000000000000, 9.0000000000000000,
3017 -3.0000000000000000 },
3018 { 0.10526077585069878, 10.000000000000000, 9.0000000000000000,
3019 -2.0000000000000000 },
3020 { 0.32700394770794872, 10.000000000000000, 9.0000000000000000,
3021 -1.0000000000000000 },
3022 { 1.0000000000000000, 10.000000000000000, 9.0000000000000000,
3023 0.0000000000000000 },
3024 { 3.0203131427322725, 10.000000000000000, 9.0000000000000000,
3025 1.0000000000000000 },
3026 { 9.0310685653596838, 10.000000000000000, 9.0000000000000000,
3027 2.0000000000000000 },
3028 { 26.780715897583555, 10.000000000000000, 9.0000000000000000,
3029 3.0000000000000000 },
3030 { 78.863994492319449, 10.000000000000000, 9.0000000000000000,
3031 4.0000000000000000 },
3032 { 230.86491415956360, 10.000000000000000, 9.0000000000000000,
3033 5.0000000000000000 },
3034 { 672.38132248789179, 10.000000000000000, 9.0000000000000000,
3035 6.0000000000000000 },
3036 { 1949.5700594283705, 10.000000000000000, 9.0000000000000000,
3037 7.0000000000000000 },
3038 { 5630.6984199677090, 10.000000000000000, 9.0000000000000000,
3039 8.0000000000000000 },
3040 { 16206.167855150768, 10.000000000000000, 9.0000000000000000,
3041 9.0000000000000000 },
3042 { 46500.316677925293, 10.000000000000000, 9.0000000000000000,
3043 10.000000000000000 },
3045 const double toler059 = 2.5000000000000013e-09;
3047 // Test data for a=10.000000000000000, c=10.000000000000000.
3048 // max(|f - f_GSL|): 0.0000000000000000
3049 // max(|f - f_GSL| / |f_GSL|): 0.0000000000000000
3050 const testcase_conf_hyperg<double>
3051 data060[21] =
3053 { 4.5399929762484854e-05, 10.000000000000000, 10.000000000000000,
3054 -10.000000000000000 },
3055 { 0.00012340980408667956, 10.000000000000000, 10.000000000000000,
3056 -9.0000000000000000 },
3057 { 0.00033546262790251185, 10.000000000000000, 10.000000000000000,
3058 -8.0000000000000000 },
3059 { 0.00091188196555451624, 10.000000000000000, 10.000000000000000,
3060 -7.0000000000000000 },
3061 { 0.0024787521766663585, 10.000000000000000, 10.000000000000000,
3062 -6.0000000000000000 },
3063 { 0.0067379469990854670, 10.000000000000000, 10.000000000000000,
3064 -5.0000000000000000 },
3065 { 0.018315638888734179, 10.000000000000000, 10.000000000000000,
3066 -4.0000000000000000 },
3067 { 0.049787068367863944, 10.000000000000000, 10.000000000000000,
3068 -3.0000000000000000 },
3069 { 0.13533528323661270, 10.000000000000000, 10.000000000000000,
3070 -2.0000000000000000 },
3071 { 0.36787944117144233, 10.000000000000000, 10.000000000000000,
3072 -1.0000000000000000 },
3073 { 1.0000000000000000, 10.000000000000000, 10.000000000000000,
3074 0.0000000000000000 },
3075 { 2.7182818284590451, 10.000000000000000, 10.000000000000000,
3076 1.0000000000000000 },
3077 { 7.3890560989306504, 10.000000000000000, 10.000000000000000,
3078 2.0000000000000000 },
3079 { 20.085536923187668, 10.000000000000000, 10.000000000000000,
3080 3.0000000000000000 },
3081 { 54.598150033144236, 10.000000000000000, 10.000000000000000,
3082 4.0000000000000000 },
3083 { 148.41315910257660, 10.000000000000000, 10.000000000000000,
3084 5.0000000000000000 },
3085 { 403.42879349273511, 10.000000000000000, 10.000000000000000,
3086 6.0000000000000000 },
3087 { 1096.6331584284585, 10.000000000000000, 10.000000000000000,
3088 7.0000000000000000 },
3089 { 2980.9579870417283, 10.000000000000000, 10.000000000000000,
3090 8.0000000000000000 },
3091 { 8103.0839275753842, 10.000000000000000, 10.000000000000000,
3092 9.0000000000000000 },
3093 { 22026.465794806718, 10.000000000000000, 10.000000000000000,
3094 10.000000000000000 },
3096 const double toler060 = 2.5000000000000020e-13;
3098 // Test data for a=20.000000000000000, c=1.0000000000000000.
3099 // max(|f - f_GSL|): 0.0039062500000000000
3100 // max(|f - f_GSL| / |f_GSL|): 3.8043537688323639e-14
3101 const testcase_conf_hyperg<double>
3102 data061[21] =
3104 { 0.00018021852293239509, 20.000000000000000, 1.0000000000000000,
3105 -10.000000000000000 },
3106 { 0.0017726368057851866, 20.000000000000000, 1.0000000000000000,
3107 -9.0000000000000000 },
3108 { 0.00058280040382329280, 20.000000000000000, 1.0000000000000000,
3109 -8.0000000000000000 },
3110 { -0.0049657717020590141, 20.000000000000000, 1.0000000000000000,
3111 -7.0000000000000000 },
3112 { -0.0012360336087128597, 20.000000000000000, 1.0000000000000000,
3113 -6.0000000000000000 },
3114 { 0.014898894139255305, 20.000000000000000, 1.0000000000000000,
3115 -5.0000000000000000 },
3116 { -0.013800784612552078, 20.000000000000000, 1.0000000000000000,
3117 -4.0000000000000000 },
3118 { -0.012192213426039619, 20.000000000000000, 1.0000000000000000,
3119 -3.0000000000000000 },
3120 { 0.050311246773136212, 20.000000000000000, 1.0000000000000000,
3121 -2.0000000000000000 },
3122 { -0.025985814502838493, 20.000000000000000, 1.0000000000000000,
3123 -1.0000000000000000 },
3124 { 1.0000000000000000, 20.000000000000000, 1.0000000000000000,
3125 0.0000000000000000 },
3126 { 1563.6577385252017, 20.000000000000000, 1.0000000000000000,
3127 1.0000000000000000 },
3128 { 86377.091910766088, 20.000000000000000, 1.0000000000000000,
3129 2.0000000000000000 },
3130 { 2216718.8789979252, 20.000000000000000, 1.0000000000000000,
3131 3.0000000000000000 },
3132 { 38045018.520647161, 20.000000000000000, 1.0000000000000000,
3133 4.0000000000000000 },
3134 { 504376263.68346804, 20.000000000000000, 1.0000000000000000,
3135 5.0000000000000000 },
3136 { 5565635666.7972050, 20.000000000000000, 1.0000000000000000,
3137 6.0000000000000000 },
3138 { 53451562646.544518, 20.000000000000000, 1.0000000000000000,
3139 7.0000000000000000 },
3140 { 460009135340.33832, 20.000000000000000, 1.0000000000000000,
3141 8.0000000000000000 },
3142 { 3620401937301.4907, 20.000000000000000, 1.0000000000000000,
3143 9.0000000000000000 },
3144 { 26446266822604.152, 20.000000000000000, 1.0000000000000000,
3145 10.000000000000000 },
3147 const double toler061 = 2.5000000000000015e-12;
3149 // Test data for a=20.000000000000000, c=2.0000000000000000.
3150 // max(|f - f_GSL|): 0.00097656250000000000
3151 // max(|f - f_GSL| / |f_GSL|): 3.3638062074418344e-12
3152 const testcase_conf_hyperg<double>
3153 data062[21] =
3155 { 6.6647681992684102e-05, 20.000000000000000, 2.0000000000000000,
3156 -10.000000000000000 },
3157 { -3.7248253270227151e-05, 20.000000000000000, 2.0000000000000000,
3158 -9.0000000000000000 },
3159 { -0.00024392611307344034, 20.000000000000000, 2.0000000000000000,
3160 -8.0000000000000000 },
3161 { 2.4034559592246202e-05, 20.000000000000000, 2.0000000000000000,
3162 -7.0000000000000000 },
3163 { 0.00081645960584843073, 20.000000000000000, 2.0000000000000000,
3164 -6.0000000000000000 },
3165 { -0.00051326387116462039, 20.000000000000000, 2.0000000000000000,
3166 -5.0000000000000000 },
3167 { -0.0021786279856333920, 20.000000000000000, 2.0000000000000000,
3168 -4.0000000000000000 },
3169 { 0.0061029380625179973, 20.000000000000000, 2.0000000000000000,
3170 -3.0000000000000000 },
3171 { -0.011834301617155166, 20.000000000000000, 2.0000000000000000,
3172 -2.0000000000000000 },
3173 { 0.037622016973681061, 20.000000000000000, 2.0000000000000000,
3174 -1.0000000000000000 },
3175 { 1.0000000000000000, 20.000000000000000, 2.0000000000000000,
3176 0.0000000000000000 },
3177 { 303.10954080179744, 20.000000000000000, 2.0000000000000000,
3178 1.0000000000000000 },
3179 { 11508.923130556599, 20.000000000000000, 2.0000000000000000,
3180 2.0000000000000000 },
3181 { 234541.86023461280, 20.000000000000000, 2.0000000000000000,
3182 3.0000000000000000 },
3183 { 3398931.2897027107, 20.000000000000000, 2.0000000000000000,
3184 4.0000000000000000 },
3185 { 39382712.287920594, 20.000000000000000, 2.0000000000000000,
3186 5.0000000000000000 },
3187 { 388350500.37087941, 20.000000000000000, 2.0000000000000000,
3188 6.0000000000000000 },
3189 { 3385284070.5527182, 20.000000000000000, 2.0000000000000000,
3190 7.0000000000000000 },
3191 { 26751585258.405773, 20.000000000000000, 2.0000000000000000,
3192 8.0000000000000000 },
3193 { 195061928138.27676, 20.000000000000000, 2.0000000000000000,
3194 9.0000000000000000 },
3195 { 1329571695324.3132, 20.000000000000000, 2.0000000000000000,
3196 10.000000000000000 },
3198 const double toler062 = 2.5000000000000017e-10;
3200 // Test data for a=20.000000000000000, c=3.0000000000000000.
3201 // max(|f - f_GSL|): 1.5258789062500000e-05
3202 // max(|f - f_GSL| / |f_GSL|): 1.0636412229856690e-11
3203 const testcase_conf_hyperg<double>
3204 data063[21] =
3206 { -8.6671962318505780e-06, 20.000000000000000, 3.0000000000000000,
3207 -10.000000000000000 },
3208 { -1.8205565180535425e-05, 20.000000000000000, 3.0000000000000000,
3209 -9.0000000000000000 },
3210 { 1.5620588717927631e-05, 20.000000000000000, 3.0000000000000000,
3211 -8.0000000000000000 },
3212 { 7.6532767373103759e-05, 20.000000000000000, 3.0000000000000000,
3213 -7.0000000000000000 },
3214 { -5.2708600380172109e-05, 20.000000000000000, 3.0000000000000000,
3215 -6.0000000000000000 },
3216 { -0.00028546308121326275, 20.000000000000000, 3.0000000000000000,
3217 -5.0000000000000000 },
3218 { 0.00056490746026256267, 20.000000000000000, 3.0000000000000000,
3219 -4.0000000000000000 },
3220 { -5.0602588875468348e-07, 20.000000000000000, 3.0000000000000000,
3221 -3.0000000000000000 },
3222 { -0.0021376080642211692, 20.000000000000000, 3.0000000000000000,
3223 -2.0000000000000000 },
3224 { 0.0028873127225376104, 20.000000000000000, 3.0000000000000000,
3225 -1.0000000000000000 },
3226 { 1.0000000000000000, 20.000000000000000, 3.0000000000000000,
3227 0.0000000000000000 },
3228 { 106.38207299128948, 20.000000000000000, 3.0000000000000000,
3229 1.0000000000000000 },
3230 { 2880.5734732831320, 20.000000000000000, 3.0000000000000000,
3231 2.0000000000000000 },
3232 { 47353.756965165718, 20.000000000000000, 3.0000000000000000,
3233 3.0000000000000000 },
3234 { 584732.27978148905, 20.000000000000000, 3.0000000000000000,
3235 4.0000000000000000 },
3236 { 5957333.1101320982, 20.000000000000000, 3.0000000000000000,
3237 5.0000000000000000 },
3238 { 52725595.633352734, 20.000000000000000, 3.0000000000000000,
3239 6.0000000000000000 },
3240 { 418560160.03369552, 20.000000000000000, 3.0000000000000000,
3241 7.0000000000000000 },
3242 { 3045067611.3150902, 20.000000000000000, 3.0000000000000000,
3243 8.0000000000000000 },
3244 { 20614600690.354652, 20.000000000000000, 3.0000000000000000,
3245 9.0000000000000000 },
3246 { 131344201933.74118, 20.000000000000000, 3.0000000000000000,
3247 10.000000000000000 },
3249 const double toler063 = 1.0000000000000007e-09;
3251 // Test data for a=20.000000000000000, c=4.0000000000000000.
3252 // max(|f - f_GSL|): 1.5258789062500000e-05
3253 // max(|f - f_GSL| / |f_GSL|): 1.8743522900030841e-11
3254 const testcase_conf_hyperg<double>
3255 data064[21] =
3257 { -1.1286669552452399e-06, 20.000000000000000, 4.0000000000000000,
3258 -10.000000000000000 },
3259 { 3.9595188785137704e-06, 20.000000000000000, 4.0000000000000000,
3260 -9.0000000000000000 },
3261 { 8.6940153052790051e-06, 20.000000000000000, 4.0000000000000000,
3262 -8.0000000000000000 },
3263 { -1.0858814018067509e-05, 20.000000000000000, 4.0000000000000000,
3264 -7.0000000000000000 },
3265 { -4.1826023828710966e-05, 20.000000000000000, 4.0000000000000000,
3266 -6.0000000000000000 },
3267 { 6.6455893622436316e-05, 20.000000000000000, 4.0000000000000000,
3268 -5.0000000000000000 },
3269 { 0.00014238710517977906, 20.000000000000000, 4.0000000000000000,
3270 -4.0000000000000000 },
3271 { -0.00071796294700866132, 20.000000000000000, 4.0000000000000000,
3272 -3.0000000000000000 },
3273 { 0.0020884061677332645, 20.000000000000000, 4.0000000000000000,
3274 -2.0000000000000000 },
3275 { -0.012768833157321973, 20.000000000000000, 4.0000000000000000,
3276 -1.0000000000000000 },
3277 { 1.0000000000000000, 20.000000000000000, 4.0000000000000000,
3278 0.0000000000000000 },
3279 { 50.659916934657808, 20.000000000000000, 4.0000000000000000,
3280 1.0000000000000000 },
3281 { 1014.3134442335910, 20.000000000000000, 4.0000000000000000,
3282 2.0000000000000000 },
3283 { 13665.584449611577, 20.000000000000000, 4.0000000000000000,
3284 3.0000000000000000 },
3285 { 145123.62797278623, 20.000000000000000, 4.0000000000000000,
3286 4.0000000000000000 },
3287 { 1308144.4519382305, 20.000000000000000, 4.0000000000000000,
3288 5.0000000000000000 },
3289 { 10438124.578674613, 20.000000000000000, 4.0000000000000000,
3290 6.0000000000000000 },
3291 { 75719160.524424627, 20.000000000000000, 4.0000000000000000,
3292 7.0000000000000000 },
3293 { 508510905.96310252, 20.000000000000000, 4.0000000000000000,
3294 8.0000000000000000 },
3295 { 3203200954.5618095, 20.000000000000000, 4.0000000000000000,
3296 9.0000000000000000 },
3297 { 19111993543.124691, 20.000000000000000, 4.0000000000000000,
3298 10.000000000000000 },
3300 const double toler064 = 1.0000000000000007e-09;
3302 // Test data for a=20.000000000000000, c=5.0000000000000000.
3303 // max(|f - f_GSL|): 3.3378601074218750e-06
3304 // max(|f - f_GSL| / |f_GSL|): 1.7481076775232650e-09
3305 const testcase_conf_hyperg<double>
3306 data065[21] =
3308 { 8.4755643455671027e-07, 20.000000000000000, 5.0000000000000000,
3309 -10.000000000000000 },
3310 { 8.5721061862565697e-07, 20.000000000000000, 5.0000000000000000,
3311 -9.0000000000000000 },
3312 { -2.8228700837555599e-06, 20.000000000000000, 5.0000000000000000,
3313 -8.0000000000000000 },
3314 { -6.6486802159657585e-06, 20.000000000000000, 5.0000000000000000,
3315 -7.0000000000000000 },
3316 { 1.1816828026110384e-05, 20.000000000000000, 5.0000000000000000,
3317 -6.0000000000000000 },
3318 { 3.6173872819745774e-05, 20.000000000000000, 5.0000000000000000,
3319 -5.0000000000000000 },
3320 { -0.00011481934287296670, 20.000000000000000, 5.0000000000000000,
3321 -4.0000000000000000 },
3322 { 1.2650647218867087e-07, 20.000000000000000, 5.0000000000000000,
3323 -3.0000000000000000 },
3324 { 0.0010626537950495965, 20.000000000000000, 5.0000000000000000,
3325 -2.0000000000000000 },
3326 { -0.0085499011205641944, 20.000000000000000, 5.0000000000000000,
3327 -1.0000000000000000 },
3328 { 1.0000000000000000, 20.000000000000000, 5.0000000000000000,
3329 0.0000000000000000 },
3330 { 29.126637808809392, 20.000000000000000, 5.0000000000000000,
3331 1.0000000000000000 },
3332 { 446.26914983518060, 20.000000000000000, 5.0000000000000000,
3333 2.0000000000000000 },
3334 { 5005.6470164856382, 20.000000000000000, 5.0000000000000000,
3335 3.0000000000000000 },
3336 { 46145.715220935184, 20.000000000000000, 5.0000000000000000,
3337 4.0000000000000000 },
3338 { 370342.18574452243, 20.000000000000000, 5.0000000000000000,
3339 5.0000000000000000 },
3340 { 2676402.7371661114, 20.000000000000000, 5.0000000000000000,
3341 6.0000000000000000 },
3342 { 17803174.102030005, 20.000000000000000, 5.0000000000000000,
3343 7.0000000000000000 },
3344 { 110674464.63597310, 20.000000000000000, 5.0000000000000000,
3345 8.0000000000000000 },
3346 { 650149739.34228492, 20.000000000000000, 5.0000000000000000,
3347 9.0000000000000000 },
3348 { 3639417243.5150661, 20.000000000000000, 5.0000000000000000,
3349 10.000000000000000 },
3351 const double toler065 = 1.0000000000000005e-07;
3353 // Test data for a=20.000000000000000, c=6.0000000000000000.
3354 // max(|f - f_GSL|): 3.5762786865234375e-07
3355 // max(|f - f_GSL| / |f_GSL|): 7.4494573571551227e-09
3356 const testcase_conf_hyperg<double>
3357 data066[21] =
3359 { -1.9022359545310046e-08, 20.000000000000000, 6.0000000000000000,
3360 -10.000000000000000 },
3361 { -7.4533809656234698e-07, 20.000000000000000, 6.0000000000000000,
3362 -9.0000000000000000 },
3363 { -9.7852420358724080e-07, 20.000000000000000, 6.0000000000000000,
3364 -8.0000000000000000 },
3365 { 3.0181569866746340e-06, 20.000000000000000, 6.0000000000000000,
3366 -7.0000000000000000 },
3367 { 7.9816910701457280e-06, 20.000000000000000, 6.0000000000000000,
3368 -6.0000000000000000 },
3369 { -2.0133163153966071e-05, 20.000000000000000, 6.0000000000000000,
3370 -5.0000000000000000 },
3371 { -4.7462368393259685e-05, 20.000000000000000, 6.0000000000000000,
3372 -4.0000000000000000 },
3373 { 0.00031910869938964821, 20.000000000000000, 6.0000000000000000,
3374 -3.0000000000000000 },
3375 { -0.0010380528468056441, 20.000000000000000, 6.0000000000000000,
3376 -2.0000000000000000 },
3377 { 0.0084752097558651058, 20.000000000000000, 6.0000000000000000,
3378 -1.0000000000000000 },
3379 { 1.0000000000000000, 20.000000000000000, 6.0000000000000000,
3380 0.0000000000000000 },
3381 { 19.002159564861387, 20.000000000000000, 6.0000000000000000,
3382 1.0000000000000000 },
3383 { 229.93981298721295, 20.000000000000000, 6.0000000000000000,
3384 2.0000000000000000 },
3385 { 2180.3120758940972, 20.000000000000000, 6.0000000000000000,
3386 3.0000000000000000 },
3387 { 17610.732510305290, 20.000000000000000, 6.0000000000000000,
3388 4.0000000000000000 },
3389 { 126633.20907014767, 20.000000000000000, 6.0000000000000000,
3390 5.0000000000000000 },
3391 { 832692.83016874129, 20.000000000000000, 6.0000000000000000,
3392 6.0000000000000000 },
3393 { 5097225.0940651651, 20.000000000000000, 6.0000000000000000,
3394 7.0000000000000000 },
3395 { 29414585.342530526, 20.000000000000000, 6.0000000000000000,
3396 8.0000000000000000 },
3397 { 161513229.88138971, 20.000000000000000, 6.0000000000000000,
3398 9.0000000000000000 },
3399 { 849871092.10959554, 20.000000000000000, 6.0000000000000000,
3400 10.000000000000000 },
3402 const double toler066 = 5.0000000000000019e-07;
3404 // Test data for a=20.000000000000000, c=7.0000000000000000.
3405 // max(|f - f_GSL|): 1.7881393432617188e-07
3406 // max(|f - f_GSL| / |f_GSL|): 2.3690711970375556e-09
3407 const testcase_conf_hyperg<double>
3408 data067[21] =
3410 { -1.7754301607387146e-07, 20.000000000000000, 7.0000000000000000,
3411 -10.000000000000000 },
3412 { -6.2128605089471266e-08, 20.000000000000000, 7.0000000000000000,
3413 -9.0000000000000000 },
3414 { 9.1338873372533148e-07, 20.000000000000000, 7.0000000000000000,
3415 -8.0000000000000000 },
3416 { 1.6657400269273180e-06, 20.000000000000000, 7.0000000000000000,
3417 -7.0000000000000000 },
3418 { -4.7904165143355465e-06, 20.000000000000000, 7.0000000000000000,
3419 -6.0000000000000000 },
3420 { -1.5503088351319618e-05, 20.000000000000000, 7.0000000000000000,
3421 -5.0000000000000000 },
3422 { 5.6425108496954337e-05, 20.000000000000000, 7.0000000000000000,
3423 -4.0000000000000000 },
3424 { 9.1083552345479015e-05, 20.000000000000000, 7.0000000000000000,
3425 -3.0000000000000000 },
3426 { -0.0018058773247853388, 20.000000000000000, 7.0000000000000000,
3427 -2.0000000000000000 },
3428 { 0.032850147696977743, 20.000000000000000, 7.0000000000000000,
3429 -1.0000000000000000 },
3430 { 1.0000000000000000, 20.000000000000000, 7.0000000000000000,
3431 0.0000000000000000 },
3432 { 13.551527852090807, 20.000000000000000, 7.0000000000000000,
3433 1.0000000000000000 },
3434 { 133.23579819973105, 20.000000000000000, 7.0000000000000000,
3435 2.0000000000000000 },
3436 { 1083.6769250393436, 20.000000000000000, 7.0000000000000000,
3437 3.0000000000000000 },
3438 { 7739.1410905637622, 20.000000000000000, 7.0000000000000000,
3439 4.0000000000000000 },
3440 { 50175.328973240226, 20.000000000000000, 7.0000000000000000,
3441 5.0000000000000000 },
3442 { 301599.46814102860, 20.000000000000000, 7.0000000000000000,
3443 6.0000000000000000 },
3444 { 1705051.1866143662, 20.000000000000000, 7.0000000000000000,
3445 7.0000000000000000 },
3446 { 9159788.2353733145, 20.000000000000000, 7.0000000000000000,
3447 8.0000000000000000 },
3448 { 47122070.398665302, 20.000000000000000, 7.0000000000000000,
3449 9.0000000000000000 },
3450 { 233529421.53991735, 20.000000000000000, 7.0000000000000000,
3451 10.000000000000000 },
3453 const double toler067 = 2.5000000000000009e-07;
3455 // Test data for a=20.000000000000000, c=8.0000000000000000.
3456 // max(|f - f_GSL|): 5.9604644775390625e-08
3457 // max(|f - f_GSL| / |f_GSL|): 1.2249590184458766e-09
3458 const testcase_conf_hyperg<double>
3459 data068[21] =
3461 { 4.4385719622857099e-08, 20.000000000000000, 8.0000000000000000,
3462 -10.000000000000000 },
3463 { 2.7870855352561944e-07, 20.000000000000000, 8.0000000000000000,
3464 -9.0000000000000000 },
3465 { 2.7221706037028333e-07, 20.000000000000000, 8.0000000000000000,
3466 -8.0000000000000000 },
3467 { -1.5211293805365477e-06, 20.000000000000000, 8.0000000000000000,
3468 -7.0000000000000000 },
3469 { -4.2978336531553913e-06, 20.000000000000000, 8.0000000000000000,
3470 -6.0000000000000000 },
3471 { 1.1339557446266733e-05, 20.000000000000000, 8.0000000000000000,
3472 -5.0000000000000000 },
3473 { 5.3526365220658988e-05, 20.000000000000000, 8.0000000000000000,
3474 -4.0000000000000000 },
3475 { -0.00029461053269513242, 20.000000000000000, 8.0000000000000000,
3476 -3.0000000000000000 },
3477 { -0.00026793636646740143, 20.000000000000000, 8.0000000000000000,
3478 -2.0000000000000000 },
3479 { 0.061061258434452807, 20.000000000000000, 8.0000000000000000,
3480 -1.0000000000000000 },
3481 { 1.0000000000000000, 20.000000000000000, 8.0000000000000000,
3482 0.0000000000000000 },
3483 { 10.312756690132909, 20.000000000000000, 8.0000000000000000,
3484 1.0000000000000000 },
3485 { 84.471824856846425, 20.000000000000000, 8.0000000000000000,
3486 2.0000000000000000 },
3487 { 597.47335666854985, 20.000000000000000, 8.0000000000000000,
3488 3.0000000000000000 },
3489 { 3805.9786364107408, 20.000000000000000, 8.0000000000000000,
3490 4.0000000000000000 },
3491 { 22386.068461641658, 20.000000000000000, 8.0000000000000000,
3492 5.0000000000000000 },
3493 { 123573.63516975302, 20.000000000000000, 8.0000000000000000,
3494 6.0000000000000000 },
3495 { 647514.24141570868, 20.000000000000000, 8.0000000000000000,
3496 7.0000000000000000 },
3497 { 3247628.2434586394, 20.000000000000000, 8.0000000000000000,
3498 8.0000000000000000 },
3499 { 15690070.625286419, 20.000000000000000, 8.0000000000000000,
3500 9.0000000000000000 },
3501 { 73379158.893325046, 20.000000000000000, 8.0000000000000000,
3502 10.000000000000000 },
3504 const double toler068 = 1.0000000000000005e-07;
3506 // Test data for a=20.000000000000000, c=9.0000000000000000.
3507 // max(|f - f_GSL|): 7.4505805969238281e-09
3508 // max(|f - f_GSL| / |f_GSL|): 1.7712852063552690e-08
3509 const testcase_conf_hyperg<double>
3510 data069[21] =
3512 { 7.3976263576568592e-08, 20.000000000000000, 9.0000000000000000,
3513 -10.000000000000000 },
3514 { -9.0753238092548168e-09, 20.000000000000000, 9.0000000000000000,
3515 -9.0000000000000000 },
3516 { -5.5549484970396693e-07, 20.000000000000000, 9.0000000000000000,
3517 -8.0000000000000000 },
3518 { -1.1104933512848787e-06, 20.000000000000000, 9.0000000000000000,
3519 -7.0000000000000000 },
3520 { 3.2483424385770483e-06, 20.000000000000000, 9.0000000000000000,
3521 -6.0000000000000000 },
3522 { 1.7493431113569438e-05, 20.000000000000000, 9.0000000000000000,
3523 -5.0000000000000000 },
3524 { -3.9066110636117233e-05, 20.000000000000000, 9.0000000000000000,
3525 -4.0000000000000000 },
3526 { -0.00040356155493308509, 20.000000000000000, 9.0000000000000000,
3527 -3.0000000000000000 },
3528 { 0.0037671531470534550, 20.000000000000000, 9.0000000000000000,
3529 -2.0000000000000000 },
3530 { 0.090944344485248435, 20.000000000000000, 9.0000000000000000,
3531 -1.0000000000000000 },
3532 { 1.0000000000000000, 20.000000000000000, 9.0000000000000000,
3533 0.0000000000000000 },
3534 { 8.2390942957149722, 20.000000000000000, 9.0000000000000000,
3535 1.0000000000000000 },
3536 { 57.468054562166706, 20.000000000000000, 9.0000000000000000,
3537 2.0000000000000000 },
3538 { 358.00109079775746, 20.000000000000000, 9.0000000000000000,
3539 3.0000000000000000 },
3540 { 2051.3704389047002, 20.000000000000000, 9.0000000000000000,
3541 4.0000000000000000 },
3542 { 11012.597503064209, 20.000000000000000, 9.0000000000000000,
3543 5.0000000000000000 },
3544 { 56082.113308934473, 20.000000000000000, 9.0000000000000000,
3545 6.0000000000000000 },
3546 { 273348.46918863337, 20.000000000000000, 9.0000000000000000,
3547 7.0000000000000000 },
3548 { 1283674.4996444662, 20.000000000000000, 9.0000000000000000,
3549 8.0000000000000000 },
3550 { 5838026.8730425332, 20.000000000000000, 9.0000000000000000,
3551 9.0000000000000000 },
3552 { 25817349.972859699, 20.000000000000000, 9.0000000000000000,
3553 10.000000000000000 },
3555 const double toler069 = 1.0000000000000004e-06;
3557 // Test data for a=20.000000000000000, c=10.000000000000000.
3558 // max(|f - f_GSL|): 1.8626451492309570e-09
3559 // max(|f - f_GSL| / |f_GSL|): 3.6960743356593788e-09
3560 const testcase_conf_hyperg<double>
3561 data070[21] =
3563 { -4.1157677792944960e-08, 20.000000000000000, 10.000000000000000,
3564 -10.000000000000000 },
3565 { -2.0187210039960914e-07, 20.000000000000000, 10.000000000000000,
3566 -9.0000000000000000 },
3567 { -2.2272304939386817e-07, 20.000000000000000, 10.000000000000000,
3568 -8.0000000000000000 },
3569 { 1.2925568212606171e-06, 20.000000000000000, 10.000000000000000,
3570 -7.0000000000000000 },
3571 { 5.5744573775996210e-06, 20.000000000000000, 10.000000000000000,
3572 -6.0000000000000000 },
3573 { -6.2568272011787289e-06, 20.000000000000000, 10.000000000000000,
3574 -5.0000000000000000 },
3575 { -0.00011955177906335608, 20.000000000000000, 10.000000000000000,
3576 -4.0000000000000000 },
3577 { 9.2475405516991146e-05, 20.000000000000000, 10.000000000000000,
3578 -3.0000000000000000 },
3579 { 0.010123531287569976, 20.000000000000000, 10.000000000000000,
3580 -2.0000000000000000 },
3581 { 0.12118937229909534, 20.000000000000000, 10.000000000000000,
3582 -1.0000000000000000 },
3583 { 1.0000000000000000, 20.000000000000000, 10.000000000000000,
3584 0.0000000000000000 },
3585 { 6.8319857942415538, 20.000000000000000, 10.000000000000000,
3586 1.0000000000000000 },
3587 { 41.356658140815220, 20.000000000000000, 10.000000000000000,
3588 2.0000000000000000 },
3589 { 229.57496033810904, 20.000000000000000, 10.000000000000000,
3590 3.0000000000000000 },
3591 { 1192.7830549969501, 20.000000000000000, 10.000000000000000,
3592 4.0000000000000000 },
3593 { 5878.6003887215920, 20.000000000000000, 10.000000000000000,
3594 5.0000000000000000 },
3595 { 27741.749322673899, 20.000000000000000, 10.000000000000000,
3596 6.0000000000000000 },
3597 { 126220.54599305880, 20.000000000000000, 10.000000000000000,
3598 7.0000000000000000 },
3599 { 556592.10886612453, 20.000000000000000, 10.000000000000000,
3600 8.0000000000000000 },
3601 { 2388555.2873243927, 20.000000000000000, 10.000000000000000,
3602 9.0000000000000000 },
3603 { 10008079.497419352, 20.000000000000000, 10.000000000000000,
3604 10.000000000000000 },
3606 const double toler070 = 2.5000000000000009e-07;
3608 template<typename Tp, unsigned int Num>
3609 void
3610 test(const testcase_conf_hyperg<Tp> (&data)[Num], Tp toler)
3612 bool test __attribute__((unused)) = true;
3613 const Tp eps = std::numeric_limits<Tp>::epsilon();
3614 Tp max_abs_diff = -Tp(1);
3615 Tp max_abs_frac = -Tp(1);
3616 unsigned int num_datum = Num;
3617 for (unsigned int i = 0; i < num_datum; ++i)
3619 const Tp f = __gnu_cxx::conf_hyperg(data[i].a, data[i].c,
3620 data[i].x);
3621 const Tp f0 = data[i].f0;
3622 const Tp diff = f - f0;
3623 if (std::abs(diff) > max_abs_diff)
3624 max_abs_diff = std::abs(diff);
3625 if (std::abs(f0) > Tp(10) * eps
3626 && std::abs(f) > Tp(10) * eps)
3628 const Tp frac = diff / f0;
3629 if (std::abs(frac) > max_abs_frac)
3630 max_abs_frac = std::abs(frac);
3633 VERIFY(max_abs_frac < toler);
3637 main()
3639 test(data001, toler001);
3640 test(data002, toler002);
3641 test(data003, toler003);
3642 test(data004, toler004);
3643 test(data005, toler005);
3644 test(data006, toler006);
3645 test(data007, toler007);
3646 test(data008, toler008);
3647 test(data009, toler009);
3648 test(data010, toler010);
3649 test(data011, toler011);
3650 test(data012, toler012);
3651 test(data013, toler013);
3652 test(data014, toler014);
3653 test(data015, toler015);
3654 test(data016, toler016);
3655 test(data017, toler017);
3656 test(data018, toler018);
3657 test(data019, toler019);
3658 test(data020, toler020);
3659 test(data021, toler021);
3660 test(data022, toler022);
3661 test(data023, toler023);
3662 test(data024, toler024);
3663 test(data025, toler025);
3664 test(data026, toler026);
3665 test(data027, toler027);
3666 test(data028, toler028);
3667 test(data029, toler029);
3668 test(data030, toler030);
3669 test(data031, toler031);
3670 test(data032, toler032);
3671 test(data033, toler033);
3672 test(data034, toler034);
3673 test(data035, toler035);
3674 test(data036, toler036);
3675 test(data037, toler037);
3676 test(data038, toler038);
3677 test(data039, toler039);
3678 test(data040, toler040);
3679 test(data041, toler041);
3680 test(data042, toler042);
3681 test(data043, toler043);
3682 test(data044, toler044);
3683 test(data045, toler045);
3684 test(data046, toler046);
3685 test(data047, toler047);
3686 test(data048, toler048);
3687 test(data049, toler049);
3688 test(data050, toler050);
3689 test(data051, toler051);
3690 test(data052, toler052);
3691 test(data053, toler053);
3692 test(data054, toler054);
3693 test(data055, toler055);
3694 test(data056, toler056);
3695 test(data057, toler057);
3696 test(data058, toler058);
3697 test(data059, toler059);
3698 test(data060, toler060);
3699 test(data061, toler061);
3700 test(data062, toler062);
3701 test(data063, toler063);
3702 test(data064, toler064);
3703 test(data065, toler065);
3704 test(data066, toler066);
3705 test(data067, toler067);
3706 test(data068, toler068);
3707 test(data069, toler069);
3708 test(data070, toler070);
3709 return 0;