Arcsine distribution standard deviation.
The standard deviation for an arcsine random variable with minimum support a
and maximum support b
is
var stdev = require( '@stdlib/stats/base/dists/arcsine/stdev' );
Returns the standard deviation of an arcsine distribution with parameters a
(minimum support) and b
(maximum support).
var v = stdev( 0.0, 1.0 );
// returns ~0.354
v = stdev( 4.0, 12.0 );
// returns ~2.828
v = stdev( 2.0, 8.0 );
// returns ~2.121
If provided NaN
as any argument, the function returns NaN
.
var v = stdev( NaN, 2.0 );
// returns NaN
v = stdev( 2.0, NaN );
// returns NaN
If provided a >= b
, the function returns NaN
.
var v = stdev( 3.0, 2.0 );
// returns NaN
v = stdev( 3.0, 3.0 );
// returns NaN
var randu = require( '@stdlib/random/base/randu' );
var stdev = require( '@stdlib/stats/base/dists/arcsine/stdev' );
var a;
var b;
var v;
var i;
for ( i = 0; i < 10; i++ ) {
a = ( randu()*10.0 );
b = ( randu()*10.0 ) + a;
v = stdev( a, b );
console.log( 'a: %d, b: %d, SD(X;a,b): %d', a.toFixed( 4 ), b.toFixed( 4 ), v.toFixed( 4 ) );
}
#include "stdlib/stats/base/dists/arcsine/stdev.h"
Returns the standard deviation of an arcsine distribution with parameters a
(minimum support) and b
(maximum support).
double out = stdlib_base_dists_arcsine_stdev( 4.0, 12.0 );
// returns ~2.828
The function accepts the following arguments:
- a:
[in] double
minimum support. - b:
[in] double
maximum support.
double stdlib_base_dists_arcsine_stdev( const double a, const double b );
#include "stdlib/stats/base/dists/arcsine/stdev.h"
#include <stdio.h>
#include <stdlib.h>
static double random_uniform( const double min, const double max ) {
double v = (double)rand() / ( (double)RAND_MAX + 1.0 );
return min + ( v * ( max - min ) );
}
int main( void ) {
double a;
double b;
double s;
int i;
for ( i = 0; i < 10; i++ ) {
a = random_uniform( 0.0, 10.0 );
b = random_uniform( a, a + 10.0 );
s = stdlib_base_dists_arcsine_stdev( a, b );
printf( "a: %lf, b: %lf, SD(X;a,b): %lf\n", a, b, s );
}
}