 # compute-multiply

Computes an element-wise multiplication of a numeric array.

## Stats

StarsIssuesVersionUpdatedCreatedSize
compute-multiply
411.0.09 years ago9 years ago Multiply
!NPM versionnpm-imagenpm-url !Build Statustravis-imagetravis-url !Coverage Statuscoveralls-imagecoveralls-url !Dependenciesdependencies-imagedependencies-url
Computes an element-wise multiplication of a numeric array.

## Installation

``\$ npm install compute-multiply``

For use in the browser, use browserify.

## Usage

To use the module,
``var multiply = require( 'compute-multiply' );``

#### multiply( arr, x )

Computes an element-wise multiplication of an input `array`. `x` may be either an `array` of equal length or a scalar.
``````multiply( [ 2, 1, 4, 2 ], -4 );
// returns [ -8, -4, -16, -8 ]

multiply( [ 2, 1, 4, 2 ], [ 1, 2, 3, 3 ] );
// returns [ 2, 2, 12, 6 ]``````

## Examples

``````var multiply = require( 'compute-multiply' );

// Simulate some data...
var data = new Array( 100 );

for ( var i = 0; i < data.length; i++ ) {
data[ i ] = Math.round( Math.random()*100 );
}

multiply( data, 10 );

console.log( data.join( '\n' ) );``````

To run the example code from the top-level application directory,
``\$ node ./examples/index.js``

## Notes

This function mutates the input `array`. If mutation is undesired,
``````var data = [ 1, 2, 3, 4 ],
copy = data.slice();

multiply( copy, 2 );``````

## 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``