Skip to content

Commit f925b84

Browse files
chore: apply suggestions from code review
1 parent 5dc8676 commit f925b84

6 files changed

Lines changed: 56 additions & 4 deletions

File tree

lib/node_modules/@stdlib/stats/base/dists/erlang/logpdf/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,7 @@ double stdlib_base_dists_erlang_logpdf( const double x, const double k, const do
190190
191191
```c
192192
#include "stdlib/stats/base/dists/erlang/logpdf.h"
193+
#include "stdlib/math/base/special/round.h"
193194
#include <stdlib.h>
194195
#include <stdio.h>
195196
@@ -207,7 +208,7 @@ int main( void ) {
207208
208209
for ( i = 0; i < 5; i++ ) {
209210
x = random_uniform( 0.0, 10.0 );
210-
k = (double)rand() / ( (double)RAND_MAX + 1.0 ) * 10.0;
211+
k = stdlib_base_round( random_uniform( 0.0, 10.0 ) );
211212
lambda = random_uniform( 0.0, 5.0 );
212213
y = stdlib_base_dists_erlang_logpdf( x, k, lambda );
213214
printf( "x: %lf, k: %lf, λ: %lf, ln(f(x;k,λ)): %lf\n", x, k, lambda, y );

lib/node_modules/@stdlib/stats/base/dists/erlang/logpdf/benchmark/c/benchmark.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818

1919
#include "stdlib/stats/base/dists/erlang/logpdf.h"
20+
#include "stdlib/math/base/special/round.h"
2021
#include "stdlib/constants/float64/eps.h"
2122
#include <stdlib.h>
2223
#include <stdio.h>
@@ -104,7 +105,7 @@ static double benchmark( void ) {
104105

105106
for ( i = 0; i < 100; i++ ) {
106107
x[ i ] = random_uniform( 0.0, 10.0 );
107-
k[ i ] = random_uniform( 0.0, 10.0 );
108+
k[ i ] = stdlib_base_round( random_uniform( 0.0, 100.0 ) );
108109
lambda[ i ] = random_uniform( STDLIB_CONSTANT_FLOAT64_EPS, 20.0 );
109110
}
110111

lib/node_modules/@stdlib/stats/base/dists/erlang/logpdf/examples/c/example.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*/
1818

1919
#include "stdlib/stats/base/dists/erlang/logpdf.h"
20+
#include "stdlib/math/base/special/round.h"
2021
#include <stdlib.h>
2122
#include <stdio.h>
2223

@@ -34,7 +35,7 @@ int main( void ) {
3435

3536
for ( i = 0; i < 5; i++ ) {
3637
x = random_uniform( 0.0, 10.0 );
37-
k = (double)rand() / ( (double)RAND_MAX + 1.0 ) * 10.0;
38+
k = stdlib_base_round( random_uniform( 0.0, 10.0 ) );
3839
lambda = random_uniform( 0.0, 5.0 );
3940
y = stdlib_base_dists_erlang_logpdf( x, k, lambda );
4041
printf( "x: %lf, k: %lf, λ: %lf, ln(f(x;k,λ)): %lf\n", x, k, lambda, y );

lib/node_modules/@stdlib/stats/base/dists/erlang/logpdf/include/stdlib/stats/base/dists/erlang/logpdf.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@
1919
#ifndef STDLIB_STATS_BASE_DISTS_ERLANG_LOGPDF_H
2020
#define STDLIB_STATS_BASE_DISTS_ERLANG_LOGPDF_H
2121

22+
/*
23+
* If C++, prevent name mangling so that the compiler emits a binary file having undecorated names, thus mirroring the behavior of a C compiler.
24+
*/
2225
#ifdef __cplusplus
2326
extern "C" {
2427
#endif

lib/node_modules/@stdlib/stats/base/dists/erlang/logpdf/lib/native.js

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,50 @@ var addon = require( './../src/addon.node' );
3737
* @example
3838
* var y = logpdf( 0.1, 1, 1.0 );
3939
* // returns ~-0.1
40+
*
41+
* @example
42+
* var y = logpdf( 0.5, 2, 2.5 );
43+
* // returns ~-0.111
44+
*
45+
* @example
46+
* var y = logpdf( -1.0, 4, 2.0 );
47+
* // returns -Infinity
48+
*
49+
* @example
50+
* var y = logpdf( NaN, 1, 1.0 );
51+
* // returns NaN
52+
*
53+
* @example
54+
* var y = logpdf( 0.0, NaN, 1.0 );
55+
* // returns NaN
56+
*
57+
* @example
58+
* var y = logpdf( 0.0, 1, NaN );
59+
* // returns NaN
60+
*
61+
* @example
62+
* var y = logpdf( 2.0, -2, 0.5 );
63+
* // returns NaN
64+
*
65+
* @example
66+
* var y = logpdf( 2.0, 0.5, 0.5 );
67+
* // returns NaN
68+
*
69+
* @example
70+
* var y = logpdf( 2.0, 0.0, 2.0 );
71+
* // returns -Infinity
72+
*
73+
* @example
74+
* var y = logpdf( 0.0, 0.0, 2.0 );
75+
* // returns Infinity
76+
*
77+
* @example
78+
* var y = logpdf( 2.0, 1, 0.0 );
79+
* // returns NaN
80+
*
81+
* @example
82+
* var y = logpdf( 2.0, 1, -1.0 );
83+
* // returns NaN
4084
*/
4185
function logpdf( x, k, lambda ) {
4286
return addon( x, k, lambda );

lib/node_modules/@stdlib/stats/base/dists/erlang/logpdf/manifest.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
"dependencies": [
5858
"@stdlib/math/base/assert/is-nonnegative-integer",
5959
"@stdlib/stats/base/dists/gamma/logpdf",
60+
"@stdlib/math/base/special/round",
6061
"@stdlib/constants/float64/eps"
6162
]
6263
},
@@ -73,7 +74,8 @@
7374
"libpath": [],
7475
"dependencies": [
7576
"@stdlib/math/base/assert/is-nonnegative-integer",
76-
"@stdlib/stats/base/dists/gamma/logpdf"
77+
"@stdlib/stats/base/dists/gamma/logpdf",
78+
"@stdlib/math/base/special/round"
7779
]
7880
}
7981
]

0 commit comments

Comments
 (0)