Skip to content

Commit a615900

Browse files
authored
feat: update math/base/tools TypeScript declarations
PR-URL: #12165 Reviewed-by: Athan Reines <kgryte@gmail.com>
1 parent b2eb5da commit a615900

1 file changed

Lines changed: 58 additions & 0 deletions

File tree

  • lib/node_modules/@stdlib/math/base/tools/docs/types

lib/node_modules/@stdlib/math/base/tools/docs/types/index.d.ts

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020

2121
/* eslint-disable max-lines */
2222

23+
import chebyshevSeries = require( '@stdlib/math/base/tools/chebyshev-series' );
24+
import chebyshevSeriesf = require( '@stdlib/math/base/tools/chebyshev-seriesf' );
2325
import continuedFraction = require( '@stdlib/math/base/tools/continued-fraction' );
2426
import evalpoly = require( '@stdlib/math/base/tools/evalpoly' );
2527
import evalpolyf = require( '@stdlib/math/base/tools/evalpolyf' );
@@ -36,6 +38,62 @@ import sumSeries = require( '@stdlib/math/base/tools/sum-series' );
3638
* Interface describing the `tools` namespace.
3739
*/
3840
interface Namespace {
41+
/**
42+
* Evaluates a Chebyshev series using double-precision floating-point arithmetic.
43+
*
44+
* ## Notes
45+
*
46+
* - The implementation uses [Clenshaw's recurrence algorithm][clenshaw].
47+
* - The function evaluates Chebyshev polynomials at `x/2`.
48+
*
49+
* [clenshaw]: https://en.wikipedia.org/wiki/Clenshaw_algorithm
50+
*
51+
* @param x - value at which to evaluate the Chebyshev series (expected to be in `[-2, 2]`)
52+
* @param c - Chebyshev series coefficients ordered in descending degree
53+
* @returns evaluated Chebyshev series
54+
*
55+
* @example
56+
* var v = ns.chebyshevSeries( 1.0, [ 1.0, 0.5 ] ); // 1*T_0(1/2) + 0.5*T_1(1/2)
57+
* // returns 0.75
58+
*
59+
* @example
60+
* var evaluate = ns.chebyshevSeries.factory( [ 1.0, 0.5 ] ); // 1*T_0(1/2) + 0.5*T_1(1/2)
61+
*
62+
* var v = evaluate( 1.0 );
63+
* // returns 0.75
64+
*/
65+
chebyshevSeries: typeof chebyshevSeries;
66+
67+
/**
68+
* Evaluates a Chebyshev series using single-precision floating-point arithmetic.
69+
*
70+
* ## Notes
71+
*
72+
* - The implementation uses [Clenshaw's recurrence algorithm][clenshaw].
73+
* - The function evaluates Chebyshev polynomials at `x/2`.
74+
*
75+
* [clenshaw]: https://en.wikipedia.org/wiki/Clenshaw_algorithm
76+
*
77+
* @param x - value at which to evaluate the Chebyshev series (expected to be in `[-2, 2]`)
78+
* @param c - Chebyshev series coefficients ordered in descending degree
79+
* @returns evaluated Chebyshev series
80+
*
81+
* @example
82+
* var Float32Array = require( '@stdlib/array/float32' );
83+
*
84+
* var v = ns.chebyshevSeriesf( 1.0, new Float32Array( [ 1.0, 0.5 ] ) ); // 1*T_0(1/2) + 0.5*T_1(1/2)
85+
* // returns 0.75
86+
*
87+
* @example
88+
* var Float32Array = require( '@stdlib/array/float32' );
89+
*
90+
* var evaluate = ns.chebyshevSeriesf.factory( new Float32Array( [ 1.0, 0.5 ] ) ); // 1*T_0(1/2) + 0.5*T_1(1/2)
91+
*
92+
* var v = evaluate( 1.0 );
93+
* // returns 0.75
94+
*/
95+
chebyshevSeriesf: typeof chebyshevSeriesf;
96+
3997
/**
4098
* Evaluates the continued fraction approximation for the supplied series generator using the modified Lentz algorithm.
4199
*

0 commit comments

Comments
 (0)