Skip to content

Commit bd1146e

Browse files
committed
Auto-generated commit
1 parent 1bb5e0d commit bd1146e

4 files changed

Lines changed: 78 additions & 131 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
<section class="release" id="unreleased">
66

7-
## Unreleased (2026-04-08)
7+
## Unreleased (2026-04-09)
88

99
<section class="features">
1010

@@ -725,6 +725,7 @@ A total of 92 issues were closed in this release:
725725

726726
<details>
727727

728+
- [`121f2c0`](https://github.com/stdlib-js/stdlib/commit/121f2c054f54a7e698da43ff6df554fd0ecae7da) - **test:** migrate `math/base/special/hyp2f1` to ULP-based testing [(#11297)](https://github.com/stdlib-js/stdlib/pull/11297) _(by Nirmal Jyoti Biswas)_
728729
- [`bd60a20`](https://github.com/stdlib-js/stdlib/commit/bd60a209ca4b0989663edbbc591bc7da80294827) - **build:** update R version to 4.2.0 in lint workflows [(#11262)](https://github.com/stdlib-js/stdlib/pull/11262) _(by Mara Averick)_
729730
- [`236975e`](https://github.com/stdlib-js/stdlib/commit/236975ef9628ac4c6b9e867325e37a2d9e641ba2) - **chore:** fix C lint errors [(#11313)](https://github.com/stdlib-js/stdlib/pull/11313) _(by Geo Daoyu)_
730731
- [`2840211`](https://github.com/stdlib-js/stdlib/commit/2840211cbf8ce9d996acdf0d798dcf5e59e5c075) - **test:** migrate `math/base/special/cos` to ULP-based testing [(#11281)](https://github.com/stdlib-js/stdlib/pull/11281) _(by Nirmal Jyoti Biswas, Karan Anand)_

LICENSE

Lines changed: 62 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,15 @@ The library links against the following external libraries or contains
181181
implementations from the following external libraries, which have their own
182182
licenses:
183183

184+
* FreeBSD <https://svnweb.freebsd.org/>
185+
186+
Copyright (C) 1993-2004 by Sun Microsystems, Inc. All rights reserved.
187+
188+
Developed at SunPro, a Sun Microsystems, Inc. business.
189+
Permission to use, copy, modify, and distribute this
190+
software is freely granted, provided that this notice
191+
is preserved.
192+
184193
* Boost <http://www.boost.org/LICENSE_1_0.txt>
185194

186195
Boost Software License - Version 1.0 - August 17th, 2003
@@ -207,42 +216,6 @@ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
207216
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
208217
DEALINGS IN THE SOFTWARE.
209218

210-
* SpecialFunctions.jl <https://raw.githubusercontent.com/JuliaMath/
211-
SpecialFunctions.jl/02a173fbe24a61c4b392aec17a9764ac5727feb1/LICENSE>
212-
213-
The MIT License (MIT)
214-
215-
Copyright (c) 2017 Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and others:
216-
217-
https://github.com/JuliaMath/SpecialFunctions.jl/graphs/contributors
218-
219-
Permission is hereby granted, free of charge, to any person obtaining a copy
220-
of this software and associated documentation files (the "Software"), to deal
221-
in the Software without restriction, including without limitation the rights
222-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
223-
copies of the Software, and to permit persons to whom the Software is
224-
furnished to do so, subject to the following conditions:
225-
226-
The above copyright notice and this permission notice shall be included in all
227-
copies or substantial portions of the Software.
228-
229-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
230-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
231-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
232-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
233-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
234-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
235-
SOFTWARE.
236-
237-
* FreeBSD <https://svnweb.freebsd.org/>
238-
239-
Copyright (C) 1993-2004 by Sun Microsystems, Inc. All rights reserved.
240-
241-
Developed at SunPro, a Sun Microsystems, Inc. business.
242-
Permission to use, copy, modify, and distribute this
243-
software is freely granted, provided that this notice
244-
is preserved.
245-
246219
* Go <https://raw.githubusercontent.com/golang/go/master/LICENSE>
247220

248221
Copyright (c) 2009 The Go Authors. All rights reserved.
@@ -285,34 +258,17 @@ comes with no support or guarantee.
285258

286259
Stephen L. Moshier
287260
moshier@na-net.ornl.gov
288-
289-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
290-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
291-
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
292-
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
293-
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
294-
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
295-
DEALINGS IN THE SOFTWARE.
296261
Apache License
297262
Version 2.0, January 2004
298263
http://www.apache.org/licenses/
299264

265+
Stephen L. Moshier
266+
moshier@na-net.ornl.gov
267+
300268
* FDLIBM <http://www.netlib.org/fdlibm/>
301269

302270
Copyright (C) 2004 by Sun Microsystems, Inc. All rights reserved.
303271

304-
Developed at SunPro, a Sun Microsystems, Inc. business.
305-
Permission to use, copy, modify, and distribute this
306-
software is freely granted, provided that this notice
307-
is preserved.
308-
Apache License
309-
Version 2.0, January 2004
310-
http://www.apache.org/licenses/
311-
312-
* SLATEC Common Mathematical Library <https://netlib.org/slatec/>
313-
314-
Public domain.
315-
316272
* Faddeeva <http://ab-initio.mit.edu/wiki/index.php/Faddeeva_Package#License>
317273

318274
Copyright (c) 2012 Massachusetts Institute of Technology
@@ -336,3 +292,53 @@ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
336292
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
337293
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
338294

295+
* SpecialFunctions.jl <https://raw.githubusercontent.com/JuliaMath/
296+
SpecialFunctions.jl/02a173fbe24a61c4b392aec17a9764ac5727feb1/LICENSE>
297+
298+
The MIT License (MIT)
299+
300+
Copyright (c) 2017 Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and others:
301+
302+
https://github.com/JuliaMath/SpecialFunctions.jl/graphs/contributors
303+
304+
Permission is hereby granted, free of charge, to any person obtaining a copy
305+
of this software and associated documentation files (the "Software"), to deal
306+
in the Software without restriction, including without limitation the rights
307+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
308+
copies of the Software, and to permit persons to whom the Software is
309+
furnished to do so, subject to the following conditions:
310+
311+
The above copyright notice and this permission notice shall be included in all
312+
copies or substantial portions of the Software.
313+
314+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
315+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
316+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
317+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
318+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
319+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
320+
SOFTWARE.
321+
322+
Developed at SunPro, a Sun Microsystems, Inc. business.
323+
Permission to use, copy, modify, and distribute this
324+
software is freely granted, provided that this notice
325+
is preserved.
326+
Apache License
327+
Version 2.0, January 2004
328+
http://www.apache.org/licenses/
329+
330+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
331+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
332+
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
333+
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
334+
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
335+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
336+
DEALINGS IN THE SOFTWARE.
337+
Apache License
338+
Version 2.0, January 2004
339+
http://www.apache.org/licenses/
340+
341+
* SLATEC Common Mathematical Library <https://netlib.org/slatec/>
342+
343+
Public domain.
344+

base/special/hyp2f1/test/test.js

Lines changed: 7 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,9 @@
2121
// MODULES //
2222

2323
var tape = require( 'tape' );
24-
var abs = require( './../../../../base/special/abs' );
2524
var isnanf = require( './../../../../base/assert/is-nanf' );
26-
var EPS = require( '@stdlib/constants/float64/eps' );
2725
var PINF = require( '@stdlib/constants/float64/pinf' );
26+
var isAlmostSameValue = require( '@stdlib/assert/is-almost-same-value' );
2827
var hyp2f1 = require( './../lib' );
2928

3029

@@ -111,8 +110,6 @@ tape( 'the function returns `PINF` when `c <= a + b`, `x === 1`, and neither `a`
111110

112111
tape( 'the function correctly evaluates the hypergeometric function', function test( t ) {
113112
var expected;
114-
var delta;
115-
var tol;
116113
var a;
117114
var b;
118115
var c;
@@ -132,17 +129,13 @@ tape( 'the function correctly evaluates the hypergeometric function', function t
132129
t.strictEqual( v, PINF, 'returns expected value' );
133130
continue;
134131
}
135-
delta = abs( v - expected[ i ] );
136-
tol = EPS * abs( expected[ i ] );
137-
t.ok( delta <= tol, 'within tolerance. a: ' + a[ i ] + ' b: ' + b[ i ] + ' c: ' + c[ i ] + ' x: ' + x[ i ] + '. Value: ' + v + '. Expected: ' + expected[ i ] + '. Delta: ' + delta + '. Tolerance: ' + tol + '.' );
132+
t.strictEqual( isAlmostSameValue( v, expected[ i ], 1 ), true, 'returns expected value' );
138133
}
139134
t.end();
140135
});
141136

142137
tape( 'the function correctly evaluates the hypergeometric function', function test( t ) {
143138
var expected;
144-
var delta;
145-
var tol;
146139
var a;
147140
var b;
148141
var c;
@@ -162,17 +155,13 @@ tape( 'the function correctly evaluates the hypergeometric function', function t
162155
t.strictEqual( v, PINF, 'returns expected value' );
163156
continue;
164157
}
165-
delta = abs( v - expected[ i ] );
166-
tol = EPS * abs( expected[ i ] );
167-
t.ok( delta <= tol, 'within tolerance. a: ' + a[ i ] + ' b: ' + b[ i ] + ' c: ' + c[ i ] + ' x: ' + x[ i ] + '. Value: ' + v + '. Expected: ' + expected[ i ] + '. Delta: ' + delta + '. Tolerance: ' + tol + '.' );
158+
t.strictEqual( isAlmostSameValue( v, expected[ i ], 1 ), true, 'returns expected value' );
168159
}
169160
t.end();
170161
});
171162

172163
tape( 'the function correctly evaluates the hypergeometric function', function test( t ) {
173164
var expected;
174-
var delta;
175-
var tol;
176165
var a;
177166
var b;
178167
var c;
@@ -192,17 +181,13 @@ tape( 'the function correctly evaluates the hypergeometric function', function t
192181
t.strictEqual( v, PINF, 'returns expected value' );
193182
continue;
194183
}
195-
delta = abs( v - expected[ i ] );
196-
tol = 7.0 * EPS * abs( expected[ i ] );
197-
t.ok( delta <= tol, 'within tolerance. a: ' + a[ i ] + ' b: ' + b[ i ] + ' c: ' + c[ i ] + ' x: ' + x[ i ] + '. Value: ' + v + '. Expected: ' + expected[ i ] + '. Delta: ' + delta + '. Tolerance: ' + tol + '.' );
184+
t.strictEqual( isAlmostSameValue( v, expected[ i ], 7 ), true, 'returns expected value' );
198185
}
199186
t.end();
200187
});
201188

202189
tape( 'the function correctly evaluates the hypergeometric function', function test( t ) {
203190
var expected;
204-
var delta;
205-
var tol;
206191
var a;
207192
var b;
208193
var c;
@@ -222,17 +207,13 @@ tape( 'the function correctly evaluates the hypergeometric function', function t
222207
t.strictEqual( v, PINF, 'returns expected value' );
223208
continue;
224209
}
225-
delta = abs( v - expected[ i ] );
226-
tol = 10.0 * EPS * abs( expected[ i ] );
227-
t.ok( delta <= tol, 'within tolerance. a: ' + a[ i ] + ' b: ' + b[ i ] + ' c: ' + c[ i ] + ' x: ' + x[ i ] + '. Value: ' + v + '. Expected: ' + expected[ i ] + '. Delta: ' + delta + '. Tolerance: ' + tol + '.' );
210+
t.strictEqual( isAlmostSameValue( v, expected[ i ], 18 ), true, 'returns expected value' );
228211
}
229212
t.end();
230213
});
231214

232215
tape( 'the function correctly evaluates the hypergeometric function', function test( t ) {
233216
var expected;
234-
var delta;
235-
var tol;
236217
var a;
237218
var b;
238219
var c;
@@ -252,17 +233,13 @@ tape( 'the function correctly evaluates the hypergeometric function', function t
252233
t.strictEqual( v, PINF, 'returns expected value' );
253234
continue;
254235
}
255-
delta = abs( v - expected[ i ] );
256-
tol = 17.0 * EPS * abs( expected[ i ] );
257-
t.ok( delta <= tol, 'within tolerance. a: ' + a[ i ] + ' b: ' + b[ i ] + ' c: ' + c[ i ] + ' x: ' + x[ i ] + '. Value: ' + v + '. Expected: ' + expected[ i ] + '. Delta: ' + delta + '. Tolerance: ' + tol + '.' );
236+
t.strictEqual( isAlmostSameValue( v, expected[ i ], 33 ), true, 'returns expected value' );
258237
}
259238
t.end();
260239
});
261240

262241
tape( 'the function correctly evaluates the hypergeometric function', function test( t ) {
263242
var expected;
264-
var delta;
265-
var tol;
266243
var a;
267244
var b;
268245
var c;
@@ -278,16 +255,14 @@ tape( 'the function correctly evaluates the hypergeometric function', function t
278255

279256
for ( i = 0; i < x.length; i++ ) {
280257
v = hyp2f1( a[ i ], b[ i ], c[ i ], x[ i ] );
281-
delta = abs( v - expected[ i ] );
282258

283259
/*
284260
* NOTE: the tolerance is set high in this case due to:
285261
*
286262
* 1. The expected values having a very large range, being either very small or very large.
287263
* 2. The function making a large number of internal calls, leading to accumulated numerical errors.
288264
*/
289-
tol = 260000.0 * EPS * abs( expected[ i ] );
290-
t.ok( delta <= tol, 'within tolerance. a: ' + a[ i ] + ' b: ' + b[ i ] + ' c: ' + c[ i ] + ' x: ' + x[ i ] + '. Value: ' + v + '. Expected: ' + expected[ i ] + '. Delta: ' + delta + '. Tolerance: ' + tol + '.' );
265+
t.strictEqual( isAlmostSameValue( v, expected[ i ], 294333 ), true, 'returns expected value' );
291266
}
292267
t.end();
293268
});

0 commit comments

Comments
 (0)