time-to-botec/squiggle/node_modules/@stdlib/constants/float16/sqrt-eps
NunoSempere b6addc7f05 feat: add the node modules
Necessary in order to clearly see the squiggle hotwiring.
2022-12-03 12:44:49 +00:00
..
docs feat: add the node modules 2022-12-03 12:44:49 +00:00
lib feat: add the node modules 2022-12-03 12:44:49 +00:00
package.json feat: add the node modules 2022-12-03 12:44:49 +00:00
README.md feat: add the node modules 2022-12-03 12:44:49 +00:00

Square Root of Epsilon

Square root of half-precision floating-point epsilon.

Usage

var FLOAT16_SQRT_EPSILON = require( '@stdlib/constants/float16/sqrt-eps' );

FLOAT16_SQRT_EPSILON

Square root of half-precision floating-point epsilon.

var bool = ( FLOAT16_SQRT_EPSILON === 0.03125 );
// returns true

Examples

var abs = require( '@stdlib/math/base/special/abs' );
var maxabs = require( '@stdlib/math/base/special/maxabs' );
var randu = require( '@stdlib/random/base/randu' );
var FLOAT16_SQRT_EPSILON = require( '@stdlib/constants/float16/sqrt-eps' );

var bool;
var a;
var b;
var i;

function isApprox( a, b ) {
    var delta;
    var tol;

    delta = abs( a - b );
    tol = FLOAT16_SQRT_EPSILON * maxabs( a, b );

    return ( delta <= tol );
}

for ( i = 0; i < 100; i++ ) {
    a = randu() * 10.0;
    b = a + (randu()*0.2) - 0.1;
    bool = isApprox( a, b );
    console.log( '%d %s approximately equal to %d', a, ( bool ) ? 'is' : 'is not', b );
}