@stdlib/math-base-special-signum
v0.2.2
Published
Evaluate the signum function for a double-precision floating-point number.
Downloads
147,633
Readme
Signum
Signum function.
The signum function is defined as
for any real number x
.
Installation
npm install @stdlib/math-base-special-signum
Usage
var signum = require( '@stdlib/math-base-special-signum' );
signum( x )
Evaluates the signum function for a double-precision floating-point number.
var sign = signum( -5.0 );
// returns -1
sign = signum( 5.0 );
// returns 1
sign = signum( -0.0 );
// returns -0
sign = signum( 0.0 );
// returns 0
sign = signum( NaN );
// returns NaN
Notes
Table of results:
| Value | Sign |
| ------- | ----- |
| x > 0
| +1
|
| x < 0
| -1
|
| 0
| 0
|
| -0
| -0
|
| NaN
| NaN
|
Examples
var randu = require( '@stdlib/random-base-randu' );
var round = require( '@stdlib/math-base-special-round' );
var signum = require( '@stdlib/math-base-special-signum' );
var sign;
var x;
var i;
for ( i = 0; i < 100; i++ ) {
x = round( randu()*100.0 ) - 50.0;
sign = signum( x );
console.log( 'signum(%d) = %d', x, sign );
}
C APIs
Usage
#include "stdlib/math/base/special/signum.h"
stdlib_base_signum( x )
Evaluates the signum function for a double-precision floating-point number.
double y = stdlib_base_signum( -9.0 );
// returns -1.0
The function accepts the following arguments:
- x:
[in] double
input value.
double stdlib_base_signum( const double x );
Examples
#include "stdlib/math/base/special/signum.h"
#include <stdio.h>
int main( void ) {
const double x[] = { 3.14, -3.14, 0.0, 0.0/0.0 };
double y;
int i;
for ( i = 0; i < 4; i++ ) {
y = stdlib_base_signum( x[ i ] );
printf( "signum(%lf) = %lf\n", x[ i ], y );
}
}
Notice
This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.
For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.
Community
License
See LICENSE.
Copyright
Copyright © 2016-2024. The Stdlib Authors.