npm: package manager

    blas-dasum

    1.0.2 • Public • Published

    dasum

    NPM version Build Status Coverage Status Dependencies

    Computes the sum of absolute values (L1 norm).

    The L1 norm is defined as

    L1 norm definition.

    Installation

    $ npm install blas-dasum

    Usage

    var asum = require( 'blas-dasum' );

    asum( N, x, stride, offset )

    Computes the sum of absolute values.

    var x = [ -2, 1, 3, -5, 4, 0, -1, -3 ];
     
    var sum = asum( x.length, x, 1, 0 );
    // returns 19

    The function accepts the following parameters:

    • N: number of elements to sum.
    • x: input array or typed array.
    • stride: index increment.
    • offset: starting index.

    The N, stride, and offset parameters determine which elements in x are used to compute the sum. For example, to select every other value starting from the second element,

    var x = [ -2, 1, 3, -5, 4, 0, -1, -3 ];
     
    var N = Math.floor( x.length / 2 );
    var stride = 2;
    var offset = 1;
     
    var sum = asum( N, x, stride, offset );
    // returns 9

    If any of the following conditions are met

    • N <= 0
    • stride <= 0
    • offset < 0

    the function returns undefined.

    Notes

    • This module corresponds to the BLAS level 1 function dasum.

    Examples

    var asum = require( 'blas-dasum' );
     
    var rand;
    var sign;
    var x;
    var i;
     
    = new Float64Array( 100 );
    for ( i = 0; i < x.length; i++ ) {
        rand = Math.round( Math.random() * 100 );
        sign = Math.random();
        if ( sign < 0.5 ) {
            sign = -1;
        } else {
            sign = 1;
        }
        x[ i ] = sign * rand;
    }
     
    console.log( asum( x.length, x, 1, 0 ) );

    To run the example code from the top-level application directory,

    $ node ./examples/index.js

    Tests

    Unit

    This repository uses tape for unit tests. 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

    Browser Support

    This repository uses Testling for browser testing. To run the tests in a (headless) local web browser, execute the following command in the top-level application directory:

    $ make test-browsers

    To view the tests in a local web browser,

    $ make view-browser-tests

    License

    MIT license.

    Copyright

    Copyright © 2016. The Compute.io Authors.

    Install

    npm i blas-dasum

    DownloadsWeekly Downloads

    0

    Version

    1.0.2

    License

    MIT

    Last publish

    Collaborators

    • kgryte