Skip to content

Commit 52ddd62

Browse files
committed
Updated package.json and added tests
package.json: - Updated version to 1.8.0-alpha - Updated description - Added more keywords Added tests for multitaper Updated test name and description for bandpower Removed auto generated files src/modules.js and src/modules_browser.js and added them to gitignore
1 parent 17453b2 commit 52ddd62

File tree

10 files changed

+45
-97
lines changed

10 files changed

+45
-97
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,13 @@ typings/
6060
# visual studio
6161
.vs/
6262

63-
# build files
63+
# build and auto generated files
6464
build/
6565
test/browser/bci.js
6666
test/browser/bci.min.js
6767
test/browser/bci.test.js
68+
src/modules.js
69+
src/modules_browser.js
6870

6971
# data files
7072
examples/node/data/

browser.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
// Now at ./lib/browser.js
2+
// Run 'npm run build' to generate lib files
23
module.exports = require('./lib/browser');

index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
// Now at ./lib/index.js
2+
// Run 'npm run build' to generate lib files
23
module.exports = require('./lib/index');

package.json

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "bcijs",
3-
"version": "1.7.0",
4-
"description": "EEG signal processing and machine learning",
3+
"version": "1.8.0-alpha",
4+
"description": "BCI.js - Brain Computer Interfaces (BCIs) with JavaScript",
55
"main": "lib/index.js",
66
"module": "src/index.js",
77
"scripts": {
@@ -47,13 +47,22 @@
4747
"url": "git+https://github.com/pwstegman/bcijs.git"
4848
},
4949
"keywords": [
50-
"eeg",
5150
"bci",
5251
"bci.js",
52+
"eeg",
5353
"signal processing",
54-
"machine learning",
54+
"DSP",
55+
"spectral estimation",
56+
"signal separation",
57+
"bandpower",
58+
"multitaper",
59+
"welch",
60+
"periodogram",
61+
"ICA",
62+
"CSP",
63+
"LDA",
5564
"math",
56-
"DSP"
65+
"machine learning"
5766
],
5867
"bugs": {
5968
"url": "https://github.com/pwstegman/bcijs/issues"

src/browser.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/** @module bcijs */
22
// All import of individual BCI.js modules
3+
// Run 'npm run build' to generate ./browser_modules.js
34
export * from './browser_modules';
45

56
// All import of BCI.js as default

src/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/** @module bcijs */
22
// All import of individual BCI.js modules
3+
// Run 'npm run build' to generate ./modules.js
34
export * from './modules';
45

56
// All import of BCI.js as default

src/modules.js

Lines changed: 0 additions & 48 deletions
This file was deleted.

src/modules_browser.js

Lines changed: 0 additions & 41 deletions
This file was deleted.

test/tests/shared/math/bandpower.test.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
describe('multitaper', function(){
2+
it('Computes the power spectral density of a signal', function(){
3+
// Signal (32 samples long)
4+
let x = [0.27,0.54,0.43,0.46,0.06,0.37,0.97,0.22,0.08,0.83,0.79,0.98,0.73,0.49,0.04,0.4,0.26,0.46,0.07,0.38,0.11,0.78,0.26,0.17,0.32,0.97,0.03,0.08,0.37,0.07,0.61,0.27];
5+
let sample_rate = 64;
6+
7+
// Compute multitaper (default params)
8+
let psd = bci.multitaper(x, sample_rate);
9+
let expected_pxx = [0.0127282452106786,0.024727368535190867,0.025121173974541972,0.025384032844579171,0.0056547434502981116,0.0034205696043726344,0.0032025831988853433,0.0031721065186386477,0.003231378133615583,0.0032700656223051188,0.0032801216156986232,0.0023135118150775622,0.0027121444114110143,0.0028026827880422165,0.0027637786332570572,0.0021800493363373255,0.000891820792920708];
10+
let expected_freqs = [0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32];
11+
12+
assert(arrayAlmostEqual(psd.estimates, expected_pxx));
13+
assert.deepStrictEqual(psd.frequencies, expected_freqs);
14+
15+
// Custom time half bandwidth
16+
psd = bci.multitaper(x, sample_rate, {nw: 2.5});
17+
expected_pxx = [0.020485359804241408,0.038110105409394891,0.030809159686379074,0.0027335514670587041,0.0021105763830891865,0.0040981884381232443,0.0033094527580004402,0.0039662940285911975,0.0041332810413194591,0.0033060411536415014,0.0034051016200936286,0.0029068549177303626,0.0027728950780877958,0.0013456054957858654,0.0023225236830690214,0.0026835018162150856,0.0013526533407485139];
18+
19+
assert(arrayAlmostEqual(psd.estimates, expected_pxx));
20+
assert.deepStrictEqual(psd.frequencies, expected_freqs);
21+
});
22+
});

0 commit comments

Comments
 (0)