Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
20efaed
feat: add `fft/base/fftpack/generic/decompose`
gunjjoshi Aug 18, 2026
45d5ac3
remove: remove `decompose` from namespace
gunjjoshi Aug 18, 2026
4726812
refactor: update paths
gunjjoshi Aug 18, 2026
05e0c4a
remove: remove `fft/base/fftpack/decompose`
gunjjoshi Aug 18, 2026
541fbc4
feat: add `fft/base/fftpack/generic/cffti`
gunjjoshi Aug 18, 2026
0e812db
remove: remove `cffti` from namespace
gunjjoshi Aug 18, 2026
70147c5
refactor: update paths
gunjjoshi Aug 18, 2026
bde9665
remove: remove `fft/base/fftpack/cffti`
gunjjoshi Aug 18, 2026
107bde7
feat: add `fft/base/fftpack/generic/rffti`
gunjjoshi Aug 18, 2026
ced0884
remove: remove `rffti` from namespace
gunjjoshi Aug 18, 2026
db929ed
refactor: update paths
gunjjoshi Aug 18, 2026
2edeede
remove: remove `fft/base/fftpack/rffti`
gunjjoshi Aug 18, 2026
0d08abc
feat: add `fft/base/fftpack/generic/cosqi`
gunjjoshi Aug 18, 2026
2aaa515
remove: remove `cosqi` from namespace
gunjjoshi Aug 18, 2026
92b3888
refactor: update paths
gunjjoshi Aug 18, 2026
a3ecdd6
remove: remove `fft/base/fftpack/cosqi`
gunjjoshi Aug 18, 2026
3d9113b
feat: add `fft/base/fftpack/generic/costi`
gunjjoshi Aug 18, 2026
a583a8d
remove: remove `costi` from namespace
gunjjoshi Aug 18, 2026
d8ca805
refactor: update paths
gunjjoshi Aug 18, 2026
0fff2ed
remove: remove `fft/base/fftpack/costi`
gunjjoshi Aug 18, 2026
8f5d6d9
feat: add `fft/base/fftpack/generic/sinti`
gunjjoshi Aug 18, 2026
79edcf6
remove: remove `sinti` from namespace
gunjjoshi Aug 18, 2026
f1a9776
refactor: update paths
gunjjoshi Aug 18, 2026
9b23a57
remove: remove `fft/base/fftpack/sinti`
gunjjoshi Aug 18, 2026
aa8d88e
feat: add `fft/base/fftpack/generic/sinqi`
gunjjoshi Aug 18, 2026
775feb8
remove: remove `sinqi` from namespace
gunjjoshi Aug 18, 2026
f1b72f1
refactor: update paths
gunjjoshi Aug 18, 2026
6e47575
remove: remove `fft/base/fftpack/sinqi`
gunjjoshi Aug 18, 2026
7a181d8
feat: add `fft/base/fftpack/generic/rfftf`
gunjjoshi Aug 18, 2026
1a329ab
remove: remove `fft/base/fftpack/rfftf`
gunjjoshi Aug 18, 2026
418cf94
feat: add `fft/base/fftpack/ndarray/generic/rffti`
gunjjoshi Aug 18, 2026
52e6ea0
remove: remove `fft/base/fftpack/ndarray/rffti`
gunjjoshi Aug 18, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions lib/node_modules/@stdlib/fft/base/fftpack/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,13 @@ var o = ns;

<div class="namespace-toc">

- <span class="signature">[`cffti( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/cffti]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a complex-valued Fourier transform.</span>
- <span class="signature">[`cosqi( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/cosqi]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a quarter-wave cosine transform.</span>
- <span class="signature">[`costi( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/costi]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a cosine transform.</span>
- <span class="signature">[`cffti( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/generic/cffti]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a complex-valued Fourier transform.</span>
- <span class="signature">[`cosqi( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/generic/cosqi]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a quarter-wave cosine transform.</span>
- <span class="signature">[`costi( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/generic/costi]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a cosine transform.</span>
- <span class="signature">[`decompose( N, M, initial, si, oi, out, so, oo )`][@stdlib/fft/base/fftpack/decompose]</span><span class="delimiter">: </span><span class="description">factorize a sequence length into a product of integers.</span>
- <span class="signature">[`rffti( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/rffti]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a real-valued Fourier transform.</span>
- <span class="signature">[`sinqi( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/sinqi]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a quarter-wave sine transform.</span>
- <span class="signature">[`sinti( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/sinti]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a sine transform.</span>
- <span class="signature">[`rffti( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/generic/rffti]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a real-valued Fourier transform.</span>
- <span class="signature">[`sinqi( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/generic/sinqi]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a quarter-wave sine transform.</span>
- <span class="signature">[`sinti( N, workspace, strideW, offsetW )`][@stdlib/fft/base/fftpack/generic/sinti]</span><span class="delimiter">: </span><span class="description">initialize a workspace array for performing a sine transform.</span>

</div>

Expand Down Expand Up @@ -92,19 +92,19 @@ console.log( objectKeys( ns ) );

<!-- <toc-links> -->

[@stdlib/fft/base/fftpack/cffti]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/cffti
[@stdlib/fft/base/fftpack/generic/cffti]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/generic/cffti

[@stdlib/fft/base/fftpack/cosqi]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/cosqi
[@stdlib/fft/base/fftpack/generic/cosqi]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/generic/cosqi

[@stdlib/fft/base/fftpack/costi]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/costi
[@stdlib/fft/base/fftpack/generic/costi]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/generic/costi

[@stdlib/fft/base/fftpack/decompose]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/decompose

[@stdlib/fft/base/fftpack/rffti]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/rffti
[@stdlib/fft/base/fftpack/generic/rffti]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/generic/rffti

[@stdlib/fft/base/fftpack/sinqi]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/sinqi
[@stdlib/fft/base/fftpack/generic/sinqi]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/generic/sinqi

[@stdlib/fft/base/fftpack/sinti]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/sinti
[@stdlib/fft/base/fftpack/generic/sinti]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fft/base/fftpack/generic/sinti

<!-- </toc-links> -->

Expand Down
244 changes: 1 addition & 243 deletions lib/node_modules/@stdlib/fft/base/fftpack/docs/types/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,252 +20,10 @@

/* eslint-disable max-lines */

import cffti = require( '@stdlib/fft/base/fftpack/cffti' );
import cosqi = require( '@stdlib/fft/base/fftpack/cosqi' );
import costi = require( '@stdlib/fft/base/fftpack/costi' );
import decompose = require( '@stdlib/fft/base/fftpack/decompose' );
import rffti = require( '@stdlib/fft/base/fftpack/rffti' );
import sinqi = require( '@stdlib/fft/base/fftpack/sinqi' );
import sinti = require( '@stdlib/fft/base/fftpack/sinti' );

/**
* Interface describing the `fftpack` namespace.
*/
interface Namespace {
/**
* Initializes a workspace array for performing a complex-valued Fourier transform.
*
* ## Notes
*
* - The workspace array should have a length of at least `( 4*N ) + 34` elements.
* - For single-point sequences (N=1), the function returns immediately as the FFT is the identity operation.
*
* @param N - length of the sequence
* @param workspace - workspace array
* @param strideW - stride length for `workspace`
* @param offsetW - starting index for `workspace`
* @returns workspace array
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
*
* var N = 8;
* var workspace = new Float64Array( ( 4*N ) + 34 );
*
* var out = ns.cffti( N, workspace, 1, 0 );
* // returns <Float64Array>
*
* var bool = ( out === workspace );
* // returns true
*
* var twiddleFactors = workspace.slice( 2*N, 4*N );
* // returns <Float64Array>[ 1, 0, ~0.707, ~0.707, ~0, 1, ~-0.707, ~0.707, 1, 0, 1, 0, 1, 0, ~0, -1 ]
*
* var factors = workspace.slice( 4*N, ( 4*N ) + 4 );
* // returns <Float64Array>[ 8, 2, 2, 4 ]
*/
cffti: typeof cffti;

/**
* Initializes a workspace array for performing a quarter-wave cosine transform.
*
* ## Notes
*
* - The workspace array should have a length of at least `( 3*N ) + 34` elements.
*
* @param N - length of the sequence
* @param workspace - workspace array
* @param strideW - stride length for `workspace`
* @param offsetW - starting index for `workspace`
* @returns workspace array
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
*
* var N = 8;
* var workspace = new Float64Array( ( 3*N ) + 34 );
*
* var out = ns.cosqi( N, workspace, 1, 0 );
* // returns <Float64Array>
*
* var bool = ( out === workspace );
* // returns true
*
* var cosineTable = workspace.slice( 0, N );
* // returns <Float64Array>[ ~0.98, ~0.92, ~0.83, ~0.7, ~0.56, ~0.38, ~0.2, ~0.0 ]
*
* var twiddleFactors = workspace.slice( 2*N, 3*N );
* // returns <Float64Array>[ ~0.707, ~0.707, 0, 0, 0, 0, 0, 0 ]
*
* var factors = workspace.slice( 3*N, ( 3*N ) + 4 );
* // returns <Float64Array>[ 8, 2, 2, 4 ]
*/
cosqi: typeof cosqi;

/**
* Initializes a workspace array for performing a cosine transform.
*
* ## Notes
*
* - The workspace array should have a length of at least `( 3*N ) + 34` elements.
*
* @param N - length of the sequence
* @param workspace - workspace array
* @param strideW - stride length for `workspace`
* @param offsetW - starting index for `workspace`
* @returns workspace array
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
*
* var N = 9;
* var workspace = new Float64Array( ( 3*N ) + 34 );
*
* var out = ns.costi( N, workspace, 1, 0 );
* // returns <Float64Array>
*
* var bool = ( out === workspace );
* // returns true
*
* var cosineTable = workspace.slice( 0, N );
* // returns <Float64Array>[ 0, ~0.765, ~1.414, ~1.848, 0, ~0.765, ~1.414, ~1.848, 0 ]
*
* var twiddleFactors = workspace.slice( (2*N)-1, (3*N)-2 );
* // returns <Float64Array>[ ~0.707, ~0.707, 0, 0, 0, 0, 0, 0 ]
*
* var factors = workspace.slice( (3*N)-2, (3*N)+2 );
* // returns <Float64Array>[ 8, 2, 2, 4 ]
*/
costi: typeof costi;

/**
* Factorizes a sequence length into a product of integers.
*
* @param N - length of the sequence
* @param M - number of trial divisors
* @param initial - array of initial trial divisors
* @param si - stride length for `initial`
* @param oi - starting index for `initial`
* @param out - output array for storing factorization results
* @param so - stride length for `out`
* @param oo - starting index for `out`
* @returns number of factors into which `N` was decomposed
*
* @example
* var initial = new Float64Array( [ 3, 4, 2, 5 ] );
* var factors = new Float64Array( 4 );
*
* var numFactors = ns.decompose( 12, 4, initial, 1, 0, factors, 1, 0 );
* // returns 2
*/
decompose: typeof decompose;

/**
* Initializes a workspace array for performing a real-valued Fourier transform.
*
* ## Notes
*
* - The workspace array should have a length of at least `( 2*N ) + 34` elements.
* - For single-point sequences (N=1), the function returns immediately as the FFT is the identity operation.
*
* @param N - length of the sequence
* @param workspace - workspace array
* @param strideW - stride length for `workspace`
* @param offsetW - starting index for `workspace`
* @returns workspace array
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
*
* var N = 8;
* var workspace = new Float64Array( ( 2*N ) + 34 );
*
* var out = ns.rffti( N, workspace, 1, 0 );
* // returns <Float64Array>
*
* var bool = ( out === workspace );
* // returns true
*
* var twiddleFactors = workspace.slice( N, 2*N );
* // returns <Float64Array>[ ~0.707, ~0.707, 0, 0, 0, 0, 0, 0 ]
*
* var factors = workspace.slice( 2*N, ( 2*N ) + 4 );
* // returns <Float64Array>[ 8, 2, 2, 4 ]
*/
rffti: typeof rffti;

/**
* Initializes a workspace array for performing a quarter-wave sine transform.
*
* ## Notes
*
* - The workspace array should have a length of at least `( 3*N ) + 34` elements.
*
* @param N - length of the sequence
* @param workspace - workspace array
* @param strideW - stride length for `workspace`
* @param offsetW - starting index for `workspace`
* @returns workspace array
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
*
* var N = 8;
* var workspace = new Float64Array( ( 3*N ) + 34 );
*
* var out = ns.sinqi( N, workspace, 1, 0 );
* // returns <Float64Array>
*
* var bool = ( out === workspace );
* // returns true
*
* var cosineTable = workspace.slice( 0, N );
* // returns <Float64Array>[ ~0.98, ~0.92, ~0.83, ~0.7, ~0.56, ~0.38, ~0.2, ~0.0 ]
*
* var twiddleFactors = workspace.slice( 2*N, 3*N );
* // returns <Float64Array>[ ~0.707, ~0.707, 0, 0, 0, 0, 0, 0 ]
*
* var factors = workspace.slice( 3*N, ( 3*N ) + 4 );
* // returns <Float64Array>[ 8, 2, 2, 4 ]
*/
sinqi: typeof sinqi;

/**
* Initializes a workspace array for performing a sine transform.
*
* ## Notes
*
* - The workspace array should have a length of at least `( 2.5*N ) + 34` elements.
*
* @param N - length of the sequence
* @param workspace - workspace array
* @param strideW - stride length for `workspace`
* @param offsetW - starting index for `workspace`
* @returns workspace array
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
* var floor = require( '@stdlib/math/base/special/floor' );
*
* var N = 7;
* var workspace = new Float64Array( floor( 2.5*N ) + 34 );
*
* var out = ns.sinti( N, workspace, 1, 0 );
* // returns <Float64Array>
*
* var bool = ( out === workspace );
* // returns true
*
* var sineTable = workspace.slice( 0, floor( N/2 ) );
* // returns <Float64Array>[ ~0.765, ~1.414, ~1.848 ]
*
* var twiddleFactors = workspace.slice( floor( 3*N/2 ) + 1, floor( 5*N/2 ) + 2 );
* // returns <Float64Array>[ ~0.707, ~0.707, 0, 0, 0, 0, 0, 0 ]
*
* var factors = workspace.slice( floor( 5*N/2 ) + 2, floor( 5*N/2 ) + 2 + 4 );
* // returns <Float64Array>[ 8, 2, 2, 4 ]
*/
sinti: typeof sinti;
interface Namespace { // eslint-disable-line @typescript-eslint/no-empty-interface
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ limitations under the License.
## Usage

```javascript
var cffti = require( '@stdlib/fft/base/fftpack/cffti' );
var cffti = require( '@stdlib/fft/base/fftpack/generic/cffti' );
```

#### cffti( N, workspace, strideW, offsetW )
Expand Down Expand Up @@ -118,7 +118,7 @@ The function accepts the following arguments:
var Float64Array = require( '@stdlib/array/float64' );
var zeroTo = require( '@stdlib/array/zero-to' );
var logEach = require( '@stdlib/console/log-each' );
var cffti = require( '@stdlib/fft/base/fftpack/cffti' );
var cffti = require( '@stdlib/fft/base/fftpack/generic/cffti' );

var N = 8;
var workspace = new Float64Array( ( 4*N ) + 34 );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@
var sincos = require( '@stdlib/math/base/special/sincos' ).assign;
var TWO_PI = require( '@stdlib/constants/float64/two-pi' );
var floor = require( '@stdlib/math/base/special/floor' );
var decompose = require( '@stdlib/fft/base/fftpack/decompose' );
var decompose = require( '@stdlib/fft/base/fftpack/generic/decompose' );


// VARIABLES //
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@
/**
* Initialize a workspace array for performing a complex-valued Fourier transform.
*
* @module @stdlib/fft/base/fftpack/cffti
* @module @stdlib/fft/base/fftpack/generic/cffti
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
* var cffti = require( '@stdlib/fft/base/fftpack/cffti' );
* var cffti = require( '@stdlib/fft/base/fftpack/generic/cffti' );
*
* var N = 8;
* var workspace = new Float64Array( ( 4*N ) + 34 );
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "@stdlib/fft/base/fftpack/cffti",
"name": "@stdlib/fft/base/fftpack/generic/cffti",
"version": "0.0.0",
"description": "Initialize a workspace array for performing a complex-valued Fourier transform.",
"license": "Apache-2.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ limitations under the License.
## Usage

```javascript
var cosqi = require( '@stdlib/fft/base/fftpack/cosqi' );
var cosqi = require( '@stdlib/fft/base/fftpack/generic/cosqi' );
```

#### cosqi( N, workspace, strideW, offsetW )
Expand Down Expand Up @@ -120,7 +120,7 @@ The function accepts the following arguments:
var Float64Array = require( '@stdlib/array/float64' );
var zeroTo = require( '@stdlib/array/zero-to' );
var logEach = require( '@stdlib/console/log-each' );
var cosqi = require( '@stdlib/fft/base/fftpack/cosqi' );
var cosqi = require( '@stdlib/fft/base/fftpack/generic/cosqi' );

var N = 8;
var workspace = new Float64Array( ( 3*N ) + 34 );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@
/**
* Initialize a workspace array for performing a quarter-wave cosine transform.
*
* @module @stdlib/fft/base/fftpack/cosqi
* @module @stdlib/fft/base/fftpack/generic/cosqi
*
* @example
* var Float64Array = require( '@stdlib/array/float64' );
* var cosqi = require( '@stdlib/fft/base/fftpack/cosqi' );
* var cosqi = require( '@stdlib/fft/base/fftpack/generic/cosqi' );
*
* var N = 8;
* var workspace = new Float64Array( ( 3*N ) + 34 );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@

var cos = require( '@stdlib/math/base/special/cos' );
var HALF_PI = require( '@stdlib/constants/float64/half-pi' );
var rffti = require( '@stdlib/fft/base/fftpack/rffti' );
var rffti = require( '@stdlib/fft/base/fftpack/generic/rffti' );


// MAIN //
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "@stdlib/fft/base/fftpack/cosqi",
"name": "@stdlib/fft/base/fftpack/generic/cosqi",
"version": "0.0.0",
"description": "Initialize a workspace array for performing a quarter-wave cosine transform.",
"license": "Apache-2.0",
Expand Down
Loading
Loading