datasets-michelson-speed-of-light
v1.0.0
Published
Dataset from Michelson's speed of light measurements in 1879.
Downloads
2
Maintainers
Readme
Speed of Light
Dataset from Michelson's speed of light measurements in 1879.
Installation
$ npm install datasets-michelson-speed-of-light
For use in the browser, use browserify.
Usage
var data = require( 'datasets-michelson-speed-of-light' );
data
Dataset from Albert Michelson's speed of light measurements made from June 5 to July 2, 1879. The dataset comprises 5
experiments, each having 20
runs, thus yielding 100
measurements. Measurement values are in units of millions of meters per second.
console.log( data );
/*
[
[299.85, 299.74, 299.9, ...],
[299.96, 299.94, 299.96, ...],
[299.88, 299.88, 299.88, ...],
[299.89, 299.81, 299.81, ...],
[299.89, 299.84, 299.78, ...]
]
*/
Examples
var toMatrix = require( 'compute-to-matrix' ),
mean = require( 'compute-mean' ),
variance = require( 'compute-variance' ),
data = require( 'datasets-michelson-speed-of-light' );
var mat,
mu,
s2;
// Convert the data into a matrix:
mat = toMatrix( data );
/*
[ 299.85 299.74 299.9 ...
. . .
. . .
. . .
299.89 299.84 299.78 ... ]
*/
// Calculate the sample mean across the rows (experiments):
mu = mean( mat );
/*
[ mu_1
mu_2
mu_3
mu_4
mu_5 ]
*/
// Calculate the sample variance across the rows:
s2 = variance( mat );
/*
[ s2_1
s2_2
s2_3
s2_4
s2_5 ]
*/
// Calculate the mean across all experiments:
console.log( mean( mu ) );
// returns 299.8524 => true value is 299,792,458 m/s
To run the example code from the top-level application directory,
$ node ./examples/index.js
References
- Michelson, Albert A. (1882). "Experimental determination of the velocity of light made at the United States Naval Academy, Annapolis." Astronomic Papers 1 135–8. U.S. Nautical Almanac Office. (See Table 24.)
- Dorsey, Ernest N. (1944). "The Velocity of Light." Transactions of the American Philosophical Society, Volume 34, Part 1, Pages 1-110, Table 22.
Tests
Unit
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make test
All new feature development should have corresponding unit tests to validate correct functionality.
Test Coverage
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
License
Copyright
Copyright © 2015. The Compute.io Authors.