# rempio2

Compute `x - nπ/2 = r`.

## Usage

``````var rempio2 = require( '@stdlib/math/base/special/rempio2' );
``````

#### rempio2( x, y )

Computes `x - nπ/2 = r`. The function returns `n` and stores the remainder `r` as two numbers in `y`, such that `y[0]+y[1] = r`.

``````var y = [ 0.0, 0.0 ];
var n = rempio2( 128.0, y );
// returns 81

var y1 = y[ 0 ];
// returns ~0.765

var y2 = y[ 1 ];
// returns ~3.618e-17
``````

When `x` is `NaN` or infinite, the function returns zero and sets the elements of `y` to `NaN`.

``````var y = [ 0.0, 0.0 ];
var n = rempio2( NaN, y );
// returns 0

var y1 = y[ 0 ];
// returns NaN

var y2 = y[ 1 ];
// returns NaN

y = [ 0.0, 0.0 ];
n = rempio2( Infinity, y );
// returns 0

y1 = y[ 0 ];
// returns NaN

y2 = y[ 1 ];
// returns NaN
``````

## Notes

• For input values larger than `2^20*π/2` in magnitude, the function only returns the last three binary digits of `n` and not the full result.

## Examples

``````var linspace = require( '@stdlib/array/base/linspace' );
var rempio2 = require( '@stdlib/math/base/special/rempio2' );

var x = linspace( 0.0, 100.0, 100 );
var y = [ 0.0, 0.0 ];
var n;
var i;

for ( i = 0; i < x.length; i++ ) {
n = rempio2( x[ i ], y );
console.log( '%d - %dπ/2 = %d + %d', x[ i ], n, y[ 0 ], y[ 1 ] );
}
``````