imag

Return the imaginary component of a double-precision complex floating-point number.

Usage

var imag = require( '@stdlib/complex/imag' );

imag( z )

Returns the imaginary component of a double-precision complex floating-point number.

var Complex128 = require( '@stdlib/complex/float64' );

var z = new Complex128( 5.0, 3.0 );
var im = imag( z );
// returns 3.0

Examples

var Complex128 = require( '@stdlib/complex/float64' );
var randu = require( '@stdlib/random/base/randu' );
var round = require( '@stdlib/math/base/special/round' );
var imag = require( '@stdlib/complex/imag' );

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 );
    console.log( 'imag(%s) = %d', z.toString(), imag( z ) );
}

C APIs

Usage

#include "stdlib/complex/imag.h"

stdlib_imag( z )

Returns the imaginary component of a double-precision complex floating-point number.

#include "stdlib/complex/float64.h"

stdlib_complex128_t z = stdlib_complex128( 5.0, 2.0 );

// ...

double im = stdlib_imag( z );
// returns 2.0

The function accepts the following arguments:

  • z: [in] stdlib_complex128_t double-precision complex floating-point number.
double stdlib_imag( const stdlib_complex128_t z );

Examples

#include "stdlib/complex/imag.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 )
    };

    int i;
    for ( i = 0; i < 4; i++ ) {
        printf( "imag(v) = %lf\n", stdlib_imag( x[ i ] ) );
    }
}
Did you find this page helpful?