Skip to content

Commit dbd82e5

Browse files
committed
update README
1 parent 8dbea1b commit dbd82e5

File tree

5 files changed

+44
-16
lines changed

5 files changed

+44
-16
lines changed

.npmignore

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
lib-cov
2+
*.seed
3+
*.log
4+
*.csv
5+
*.dat
6+
*.out
7+
*.pid
8+
*.gz
9+
10+
pids
11+
logs
12+
results
13+
14+
npm-debug.log
15+
node_modules/*
16+
test/*

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ A fast Fourier transform implementation for [ndarrays](https://github.com/mikola
55
## Example
66

77
```javascript
8-
var ndarray = require("ndarray")
8+
var zeros = require("zeros")
99
var ops = require("ndarray-ops")
1010
var fft = require("ndarray-fft")
1111

12-
var x = ops.random(ndarray.zeros([256, 256]))
13-
, y = ops.random(ndarray.zeros([256, 256]))
12+
var x = ops.random(zeros([256, 256]))
13+
, y = ops.random(zeros([256, 256]))
1414

1515
//Forward transform x/y
1616
fft(1, x, y)

fft.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,15 @@ function ndfft(dir, x, y) {
2121
throw new Error("Shape mismatch, real and imaginary arrays must have same size")
2222
}
2323
}
24-
var buffer = pool.malloc(4 * size + pad, "double")
24+
var buf_size = 4 * size + pad
25+
var buffer
26+
if( x.dtype === "array" ||
27+
x.dtype === "float64" ||
28+
x.dtype === "custom" ) {
29+
buffer = pool.mallocDouble(buf_size)
30+
} else {
31+
buffer = pool.mallocFloat(buf_size)
32+
}
2533
var x1 = ndarray(buffer, shape.slice(0), stride, 0)
2634
, y1 = ndarray(buffer, shape.slice(0), stride.slice(0), size)
2735
, x2 = ndarray(buffer, shape.slice(0), stride.slice(0), 2*size)

package.json

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
11
{
22
"name": "ndarray-fft",
3-
"version": "0.0.2",
3+
"version": "0.1.0",
44
"description": "FFT for ndarrays",
55
"main": "fft.js",
66
"directories": {
77
"test": "test"
88
},
99
"dependencies": {
1010
"bit-twiddle": "~0.0.2",
11-
"ndarray": "~0.2.0",
12-
"ndarray-ops": "~0.1.3",
13-
"cwise": "~0.1.2",
14-
"typedarray-pool": "0.0.1"
11+
"ndarray": "~1.0.0",
12+
"ndarray-ops": "~1.1.0",
13+
"cwise": "~0.3.2",
14+
"typedarray-pool": "~0.1.1"
1515
},
1616
"devDependencies": {
1717
"almost-equal": "~0.0.0",
18-
"tap": "~0.4.2"
18+
"tap": "~0.4.2",
19+
"zeros": "~0.0.0"
1920
},
2021
"scripts": {
2122
"test": "tap test/*.js"

test/test.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
var ndfft = require("../fft.js")
44
var ndarray = require("ndarray")
55
var ops = require("ndarray-ops")
6+
var zeros = require("zeros")
67
var almostEqual = require("almost-equal")
78

89
var EPSILON = almostEqual.FLT_EPSILON
@@ -47,8 +48,8 @@ require("tap").test("ndarray-fft", function(t) {
4748
almostEqual(ai, bi, EPSILON, EPSILON),
4849
str + "/n=(" + n + "," + m + "), i=(" + i1 + "," + i2 + "), j=(" + j1 + "," + j2 + "), - got: " + ar + " + " + ai + "i, expect: " + br + " + " + bi + "i")
4950
}
50-
var x = ndarray.zeros([n, m])
51-
var y = ndarray.zeros([n, m])
51+
var x = zeros([n, m])
52+
var y = zeros([n, m])
5253
for(i1=0; i1<n; ++i1) {
5354
for(i2=0; i2<m; ++i2) {
5455
ops.assigns(x, 0.0)
@@ -88,14 +89,16 @@ require("tap").test("ndarray-fft", function(t) {
8889
function eq(a, b) {
8990
t.assert(almostEqual(a, b, EPSILON, EPSILON),"rnd/n=" + shape + ", i=" + i + " - got: " + a + ", expect: " + b)
9091
}
91-
var x = ndarray.zeros(shape)
92-
, y = ndarray.zeros(shape)
92+
var x = zeros(shape)
93+
, y = zeros(shape)
9394

9495
ops.random(x)
9596
ops.random(y)
9697

97-
var xp = ops.clone(x)
98-
, yp = ops.clone(y)
98+
var xp = zeros(shape)
99+
, yp = zeros(shape)
100+
ops.assign(xp, x)
101+
ops.assign(yp, y)
99102

100103
ndfft(1, x, y)
101104
ndfft(-1, x, y)

0 commit comments

Comments
 (0)