Return the real and imaginary components of a double-precision complex floating-point number.
var reim = require( '@stdlib/complex/reim' );
Returns the real and imaginary components of a double-precision complex floating-point number.
var Complex128 = require( '@stdlib/complex/float64' );
var z = new Complex128( 5.0, 3.0 );
var out = reim( z );
// returns <Float64Array>[ 5.0, 3.0 ]
var Complex128 = require( '@stdlib/complex/float64' );
var randu = require( '@stdlib/random/base/randu' );
var round = require( '@stdlib/math/base/special/round' );
var reim = require( '@stdlib/complex/reim' );
var out;
var re;
var im;
var z;
var i;
for ( i = 0; i < 100; i++ ) {
re = round( (randu()*100.0) - 50.0 );
im = round( (randu()*50.0) - 25.0 );
z = new Complex128( re, im );
out = reim( z );
console.log( '%s => %d, %d', z.toString(), out[ 0 ], out[ 1 ] );
}
#include "stdlib/complex/reim.h"
Returns the real and imaginary components of a double-precision complex floating-point number.
#include "stdlib/complex/float64.h"
stdlib_complex128_t z = stdlib_complex128( 5.0, 2.0 );
// ...
double re;
double im;
stdlib_reim( z, &re, &im );
The function accepts the following arguments:
- z:
[in] stdlib_complex128_t
double-precision complex floating-point number. - re:
[out] double*
destination for real component. - im:
[out] double*
destination for imaginary component.
void stdlib_reim( const stdlib_complex128_t z, double *re, double *im );
#include "stdlib/complex/reim.h"
#include "stdlib/complex/float64.h"
#include <stdio.h>
int main() {
stdlib_complex128_t x[] = {
stdlib_complex128( 5.0, 2.0 ),
stdlib_complex128( -2.0, 1.0 ),
stdlib_complex128( 0.0, -0.0 ),
stdlib_complex128( 0.0/0.0, 0.0/0.0 )
};
double re;
double im;
int i;
for ( i = 0; i < 4; i++ ) {
stdlib_reim( x[ i ], &re, &im );
printf( "reim(v) = %lf, %lf\n", re, im );
}
}
@stdlib/complex/imag
: return the imaginary component of a complex number.@stdlib/complex/real
: return the real component of a complex number.