Skip to content

Latest commit

 

History

History
200 lines (121 loc) · 3.87 KB

File metadata and controls

200 lines (121 loc) · 3.87 KB

Vercosine

Compute the versed cosine of a single-precision floating-point number (in radians).

The versed cosine is defined as

$$\mathop{\mathrm{vercos}}(\theta) = 1 + \cos \theta$$

Usage

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

vercosf( x )

Computes the versed cosine of a single-precision floating-point number (in radians).

var v = vercosf( 0.0 );
// returns 2.0

v = vercosf( 3.141592653589793/2.0 );
// returns 1.0

v = vercosf( -3.141592653589793/6.0 );
// returns ~1.8660

Examples

var uniform = require( '@stdlib/random/array/uniform' );
var logEachMap = require( '@stdlib/console/log-each-map' );
var TWO_PI = require( '@stdlib/constants/float32/two-pi' );
var vercosf = require( '@stdlib/math/base/special/vercosf' );

var opts = {
    'dtype': 'float32'
};
var x = uniform( 100, 0.0, TWO_PI, opts );

logEachMap( 'vercosf(%0.4f) = %0.4f', x, vercosf );

C APIs

Usage

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

stdlib_base_vercosf( x )

Computes the versed cosine of a single-precision floating-point number (in radians).

float out = stdlib_base_vercosf( 0.0f );
// returns 2.0f

out = stdlib_base_vercosf( 3.141592653589793f / 2.0f );
// returns ~1.0f

The function accepts the following arguments:

  • x: [in] float input value.
float stdlib_base_vercosf( const float x );

Examples

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

int main( void ) {
    const float x[] = { 0.0f, 0.523f, 0.785f, 1.047f, 3.14f };

    float y;
    int i;
    for ( i = 0; i < 5; i++ ) {
        y = stdlib_base_vercosf( x[ i ] );
        printf( "vercosf(%f) = %f\n", x[ i ], y );
    }
}