UNPKG

distributions-weibull-pdf

Version:

Weibull distribution probability density function (PDF).

42 lines (32 loc) 1.11 kB
'use strict'; // MODULES // var partial = require( './partial.js' ); // PDF // /** * FUNCTION: pdf( out, arr, lambda, k, accessor ) * Evaluates the probability density function (PDF) for a Weibull distribution with scale parameter `lambda` and shape parameter `k` using an accessor function. * * @param {Array|Int8Array|Uint8Array|Uint8ClampedArray|Int16Array|Uint16Array|Int32Array|Uint32Array|Float32Array|Float64Array} out - output array * @param {Array} arr - input array * @param {Number} lambda - scale parameter * @param {Number} k - shape parameter * @param {Function} accessor - accessor function for accessing array values * @returns {Number[]|Int8Array|Uint8Array|Uint8ClampedArray|Int16Array|Uint16Array|Int32Array|Uint32Array|Float32Array|Float64Array} output array */ function pdf( y, x, lambda, k, clbk ) { var len = x.length, fcn, v, i; fcn = partial( lambda, k ); for ( i = 0; i < len; i++ ) { v = clbk( x[ i ], i ); if ( typeof v === 'number' ) { y[ i ] = fcn( v ); } else { y[ i ] = NaN; } } return y; } // end FUNCTION pdf() // EXPORTS // module.exports = pdf;