-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Expand file tree
/
Copy pathrepl.txt
More file actions
48 lines (35 loc) · 1.48 KB
/
repl.txt
File metadata and controls
48 lines (35 loc) · 1.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
{{alias}}( N, workspace, strideW, offsetW )
Initializes a workspace array for performing a real-valued Fourier
transform.
The workspace array is divided into three sections:
1. scratch/workspace: the section ranges from indices 0 to N-1 and is used
while performing transforms. This section is not updated during
initialization.
2. twiddle factors: the section ranges from indices N to 2N-1 and stores a
table of reusable complex exponential constants as cosine/sine pairs.
3. radix factor table: the section starts at index 2N and stores the
sequence length N, the number of factors into which N was decomposed,
and the individual integer radix factors.
Any remaining array space remains as unused storage.
Parameters
----------
N: integer
Length of the sequence.
workspace: ArrayLikeObject<number>
Workspace array.
strideW: integer
Stride length for `workspace`.
offsetW: integer
Starting index for `workspace`.
Examples
--------
> var {{alias:@stdlib/array/float64}} = require( '@stdlib/array/float64' );
> var N = 8;
> var workspace = new {{alias:@stdlib/array/float64}}( ( 2*N ) + 34 );
> {{alias}}( N, workspace, 1, 0 );
> var twiddleFactors = workspace.slice( N, 2*N )
<Float64Array>[ 0, ~0.707, ~0.707, 0, 0, 0, 0, 0 ]
> var factors = workspace.slice( 2*N, ( 2*N ) + 4 )
<Float64Array>[ 8, 2, 2, 4 ]
See Also
--------