Skip to content

Latest commit

 

History

History
238 lines (147 loc) · 5.09 KB

File metadata and controls

238 lines (147 loc) · 5.09 KB

Exponential Function

Exponential function.

The exponential function is defined as

$$y = b^x$$

where b is the base and x is the exponent.

Usage

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

pow( base, exponent )

Evaluates the exponential function.

var v = pow( 2.0, 3.0 );
// returns 8.0

v = pow( 4.0, 0.5 );
// returns 2.0

v = pow( 100.0, 0.0 );
// returns 1.0

v = pow( 3.141592653589793, 5.0 );
// returns ~306.0197

v = pow( 3.141592653589793, -0.2 );
// returns ~0.7954

v = pow( NaN, 3.0 );
// returns NaN

v = pow( 5.0, NaN );
// returns NaN

v = pow( NaN, NaN );
// returns NaN

Examples

var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var logEachMap = require( '@stdlib/console/log-each-map' );
var pow = require( '@stdlib/math/base/special/pow' );

var opts = {
    'dtype': 'float64'
};
var b = discreteUniform( 100, 0, 10, opts );
var x = discreteUniform( 100, -5, 5, opts );

logEachMap( '%d^%d = %0.4f', b, x, pow );

C APIs

Usage

#include "stdlib/math/base/special/pow.h"

stdlib_base_pow( base, exponent )

Evaluates the exponential function.

double out = stdlib_base_pow( 3.141592653589793, 5.0 );
// returns ~306.0197

out = stdlib_base_pow( 4.0, 0.5 );
// returns 2.0

The function accepts the following arguments:

  • base: [in] double base.
  • exponent: [in] double exponent.
double stdlib_base_pow( const double base, const double exponent );

Examples

#include "stdlib/math/base/special/pow.h"
#include <stdlib.h>
#include <stdio.h>

int main( void ) {
    double out;
    double b;
    double x;
    int i;

    for ( i = 0; i < 100; i++ ) {
        b = ( ( (double)rand() / (double)RAND_MAX ) * 10.0 );
        x = ( ( (double)rand() / (double)RAND_MAX ) * 10.0 ) - 5.0;
        out = stdlib_base_pow( b, x );
        printf( "pow(%lf, %lf) = %lf\n", b, x, out );
    }
}

See Also