22
22
23
23
import ABS_MASK = require( '@stdlib/constants/float32/abs-mask' ) ;
24
24
import CBRT_EPS = require( '@stdlib/constants/float32/cbrt-eps' ) ;
25
+ import E = require( '@stdlib/constants/float32/e' ) ;
25
26
import EPS = require( '@stdlib/constants/float32/eps' ) ;
26
27
import EXPONENT_BIAS = require( '@stdlib/constants/float32/exponent-bias' ) ;
27
28
import EXPONENT_MASK = require( '@stdlib/constants/float32/exponent-mask' ) ;
29
+ import FOURTH_PI = require( '@stdlib/constants/float32/fourth-pi' ) ;
30
+ import HALF_LN_TWO = require( '@stdlib/constants/float32/half-ln-two' ) ;
31
+ import HALF_PI = require( '@stdlib/constants/float32/half-pi' ) ;
32
+ import LN_HALF = require( '@stdlib/constants/float32/ln-half' ) ;
33
+ import LN_PI = require( '@stdlib/constants/float32/ln-pi' ) ;
34
+ import LN_TEN = require( '@stdlib/constants/float32/ln-ten' ) ;
35
+ import LN_TWO = require( '@stdlib/constants/float32/ln-two' ) ;
28
36
import MAX = require( '@stdlib/constants/float32/max' ) ;
37
+ import MAX_BASE2_EXPONENT = require( '@stdlib/constants/float32/max-base2-exponent' ) ;
38
+ import MAX_BASE2_EXPONENT_SUBNORMAL = require( '@stdlib/constants/float32/max-base2-exponent-subnormal' ) ;
39
+ import MAX_BASE10_EXPONENT = require( '@stdlib/constants/float32/max-base10-exponent' ) ;
40
+ import MAX_BASE10_EXPONENT_SUBNORMAL = require( '@stdlib/constants/float32/max-base10-exponent-subnormal' ) ;
41
+ import MAX_SAFE_FIBONACCI = require( '@stdlib/constants/float32/max-safe-fibonacci' ) ;
29
42
import MAX_SAFE_INTEGER = require( '@stdlib/constants/float32/max-safe-integer' ) ;
43
+ import MAX_SAFE_NTH_FACTORIAL = require( '@stdlib/constants/float32/max-safe-nth-factorial' ) ;
44
+ import MAX_SAFE_NTH_FIBONACCI = require( '@stdlib/constants/float32/max-safe-nth-fibonacci' ) ;
45
+ import MAX_SAFE_NTH_LUCAS = require( '@stdlib/constants/float32/max-safe-nth-lucas' ) ;
46
+ import MIN_BASE2_EXPONENT = require( '@stdlib/constants/float32/min-base2-exponent' ) ;
47
+ import MIN_BASE2_EXPONENT_SUBNORMAL = require( '@stdlib/constants/float32/min-base2-exponent-subnormal' ) ;
48
+ import MIN_BASE10_EXPONENT = require( '@stdlib/constants/float32/min-base10-exponent' ) ;
49
+ import MIN_BASE10_EXPONENT_SUBNORMAL = require( '@stdlib/constants/float32/min-base10-exponent-subnormal' ) ;
30
50
import MIN_SAFE_INTEGER = require( '@stdlib/constants/float32/min-safe-integer' ) ;
31
51
import NAN = require( '@stdlib/constants/float32/nan' ) ;
32
52
import NINF = require( '@stdlib/constants/float32/ninf' ) ;
33
53
import NUM_BYTES = require( '@stdlib/constants/float32/num-bytes' ) ;
54
+ import PHI = require( '@stdlib/constants/float32/phi' ) ;
55
+ import PI = require( '@stdlib/constants/float32/pi' ) ;
34
56
import PINF = require( '@stdlib/constants/float32/pinf' ) ;
35
57
import PRECISION = require( '@stdlib/constants/float32/precision' ) ;
36
58
import SIGN_MASK = require( '@stdlib/constants/float32/sign-mask' ) ;
37
59
import SIGNIFICAND_MASK = require( '@stdlib/constants/float32/significand-mask' ) ;
38
60
import SMALLEST_NORMAL = require( '@stdlib/constants/float32/smallest-normal' ) ;
39
61
import SMALLEST_SUBNORMAL = require( '@stdlib/constants/float32/smallest-subnormal' ) ;
40
62
import SQRT_EPS = require( '@stdlib/constants/float32/sqrt-eps' ) ;
63
+ import SQRT_HALF = require( '@stdlib/constants/float32/sqrt-half' ) ;
64
+ import SQRT_HALF_PI = require( '@stdlib/constants/float32/sqrt-half-pi' ) ;
65
+ import SQRT_PHI = require( '@stdlib/constants/float32/sqrt-phi' ) ;
66
+ import SQRT_PI = require( '@stdlib/constants/float32/sqrt-pi' ) ;
67
+ import SQRT_THREE = require( '@stdlib/constants/float32/sqrt-three' ) ;
68
+ import SQRT_TWO = require( '@stdlib/constants/float32/sqrt-two' ) ;
69
+ import SQRT_TWO_PI = require( '@stdlib/constants/float32/sqrt-two-pi' ) ;
70
+ import TWO_PI = require( '@stdlib/constants/float32/two-pi' ) ;
41
71
42
72
/**
43
73
* Interface describing the `float32` namespace.
@@ -61,6 +91,15 @@ interface Namespace {
61
91
*/
62
92
CBRT_EPS : typeof CBRT_EPS ;
63
93
94
+ /**
95
+ * Euler's number.
96
+ *
97
+ * @example
98
+ * var e = ns.E;
99
+ * // returns 2.7182817459106445
100
+ */
101
+ E : typeof E ;
102
+
64
103
/**
65
104
* Difference between one and the smallest value greater than one that can be represented as a single-precision floating-point number.
66
105
*
@@ -88,6 +127,69 @@ interface Namespace {
88
127
*/
89
128
EXPONENT_MASK : typeof EXPONENT_MASK ;
90
129
130
+ /**
131
+ * One fourth times the mathematical constant `π`.
132
+ *
133
+ * @example
134
+ * var val = ns.FOURTH_PI;
135
+ * // returns 7.853981852531433e-1
136
+ */
137
+ FOURTH_PI : typeof FOURTH_PI ;
138
+
139
+ /**
140
+ * One half times the natural logarithm of 2 as a single-precision floating-point number.
141
+ *
142
+ * @example
143
+ * var val = ns.HALF_LN_TWO;
144
+ * // returns 0.3465735912322998
145
+ */
146
+ HALF_LN_TWO : typeof HALF_LN_TWO ;
147
+
148
+ /**
149
+ * One half times the mathematical constant `π`.
150
+ *
151
+ * @example
152
+ * var val = ns.HALF_PI;
153
+ * // returns 1.5707963705062866
154
+ */
155
+ HALF_PI : typeof HALF_PI ;
156
+
157
+ /**
158
+ * Natural logarithm of `1/2` as a single-precision floating-point number.
159
+ *
160
+ * @example
161
+ * var val = ns.LN_HALF;
162
+ * // returns -0.6931471824645996
163
+ */
164
+ LN_HALF : typeof LN_HALF ;
165
+
166
+ /**
167
+ * Natural logarithm of the mathematical constant `π` as a single-precision floating-point number.
168
+ *
169
+ * @example
170
+ * var val = ns.LN_PI;
171
+ * // returns 1.1447298526763916
172
+ */
173
+ LN_PI : typeof LN_PI ;
174
+
175
+ /**
176
+ * Natural logarithm of `10` as a single-precision floating-point number.
177
+ *
178
+ * @example
179
+ * var val = ns.LN_TEN;
180
+ * // returns 2.3025851249694824
181
+ */
182
+ LN_TEN : typeof LN_TEN ;
183
+
184
+ /**
185
+ * Natural logarithm of `2` as a single-precision floating-point number.
186
+ *
187
+ * @example
188
+ * var val = ns.LN_TWO;
189
+ * // returns 0.6931471824645996
190
+ */
191
+ LN_TWO : typeof LN_TWO ;
192
+
91
193
/**
92
194
* Maximum single-precision floating-point number.
93
195
*
@@ -97,6 +199,51 @@ interface Namespace {
97
199
*/
98
200
MAX : typeof MAX ;
99
201
202
+ /**
203
+ * The maximum biased base 2 exponent for a single-precision floating-point number.
204
+ *
205
+ * @example
206
+ * var exp = ns.MAX_BASE2_EXPONENT;
207
+ * // returns 127
208
+ */
209
+ MAX_BASE2_EXPONENT : typeof MAX_BASE2_EXPONENT ;
210
+
211
+ /**
212
+ * The maximum biased base 2 exponent for a subnormal single-precision floating-point number.
213
+ *
214
+ * @example
215
+ * var exp = ns.MAX_BASE2_EXPONENT_SUBNORMAL;
216
+ * // returns -127
217
+ */
218
+ MAX_BASE2_EXPONENT_SUBNORMAL : typeof MAX_BASE2_EXPONENT_SUBNORMAL ;
219
+
220
+ /**
221
+ * The maximum base 10 exponent for a single-precision floating-point number.
222
+ *
223
+ * @example
224
+ * var exp = ns.MAX_BASE10_EXPONENT;
225
+ * // returns 38
226
+ */
227
+ MAX_BASE10_EXPONENT : typeof MAX_BASE10_EXPONENT ;
228
+
229
+ /**
230
+ * The maximum base 10 exponent for a subnormal single-precision floating-point number.
231
+ *
232
+ * @example
233
+ * var exp = ns.MAX_BASE10_EXPONENT_SUBNORMAL;
234
+ * // returns -38
235
+ */
236
+ MAX_BASE10_EXPONENT_SUBNORMAL : typeof MAX_BASE10_EXPONENT_SUBNORMAL ;
237
+
238
+ /**
239
+ * Maximum safe Fibonacci number when stored in single-precision floating-point format.
240
+ *
241
+ * @example
242
+ * var max = ns.MAX_SAFE_FIBONACCI;
243
+ * // returns 14930352
244
+ */
245
+ MAX_SAFE_FIBONACCI : typeof MAX_SAFE_FIBONACCI ;
246
+
100
247
/**
101
248
* Maximum safe single-precision floating-point integer.
102
249
*
@@ -106,6 +253,69 @@ interface Namespace {
106
253
*/
107
254
MAX_SAFE_INTEGER : typeof MAX_SAFE_INTEGER ;
108
255
256
+ /**
257
+ * Maximum safe nth factorial when stored in single-precision floating-point format.
258
+ *
259
+ * @example
260
+ * var max = ns.MAX_SAFE_NTH_FACTORIAL;
261
+ * // returns 34
262
+ */
263
+ MAX_SAFE_NTH_FACTORIAL : typeof MAX_SAFE_NTH_FACTORIAL ;
264
+
265
+ /**
266
+ * Maximum safe nth Fibonacci number when stored in single-precision floating-point format.
267
+ *
268
+ * @example
269
+ * var max = ns.MAX_SAFE_NTH_FIBONACCI;
270
+ * // returns 36
271
+ */
272
+ MAX_SAFE_NTH_FIBONACCI : typeof MAX_SAFE_NTH_FIBONACCI ;
273
+
274
+ /**
275
+ * Maximum safe nth Lucas number when stored in single-precision floating-point format.
276
+ *
277
+ * @example
278
+ * var max = ns.MAX_SAFE_NTH_LUCAS;
279
+ * // returns 34
280
+ */
281
+ MAX_SAFE_NTH_LUCAS : typeof MAX_SAFE_NTH_LUCAS ;
282
+
283
+ /**
284
+ * The minimum biased base 2 exponent for a normal single-precision floating-point number.
285
+ *
286
+ * @example
287
+ * var min = ns.MIN_BASE2_EXPONENT;
288
+ * // returns -126
289
+ */
290
+ MIN_BASE2_EXPONENT : typeof MIN_BASE2_EXPONENT ;
291
+
292
+ /**
293
+ * The minimum biased base 2 exponent for a subnormal single-precision floating-point number.
294
+ *
295
+ * @example
296
+ * var min = ns.MIN_BASE2_EXPONENT_SUBNORMAL;
297
+ * // returns -149
298
+ */
299
+ MIN_BASE2_EXPONENT_SUBNORMAL : typeof MIN_BASE2_EXPONENT_SUBNORMAL ;
300
+
301
+ /**
302
+ * The minimum base 10 exponent for a normal single-precision floating-point number.
303
+ *
304
+ * @example
305
+ * var min = ns.MIN_BASE10_EXPONENT;
306
+ * // returns -37
307
+ */
308
+ MIN_BASE10_EXPONENT : typeof MIN_BASE10_EXPONENT ;
309
+
310
+ /**
311
+ * The minimum base 10 exponent for a subnormal single-precision floating-point number.
312
+ *
313
+ * @example
314
+ * var min = ns.MIN_BASE10_EXPONENT_SUBNORMAL;
315
+ * // returns -45
316
+ */
317
+ MIN_BASE10_EXPONENT_SUBNORMAL : typeof MIN_BASE10_EXPONENT_SUBNORMAL ;
318
+
109
319
/**
110
320
* Minimum safe single-precision floating-point integer.
111
321
*
@@ -142,6 +352,24 @@ interface Namespace {
142
352
*/
143
353
NUM_BYTES : typeof NUM_BYTES ;
144
354
355
+ /**
356
+ * Golden ratio.
357
+ *
358
+ * @example
359
+ * var val = ns.PHI;
360
+ * // returns 1.6180340051651
361
+ */
362
+ PHI : typeof PHI ;
363
+
364
+ /**
365
+ * The mathematical constant `π`.
366
+ *
367
+ * @example
368
+ * var val = ns.PI;
369
+ * // returns 3.1415927410125732
370
+ */
371
+ PI : typeof PI ;
372
+
145
373
/**
146
374
* Single-precision floating-point positive infinity.
147
375
*
@@ -204,6 +432,78 @@ interface Namespace {
204
432
* // returns 0.0003452669770922512
205
433
*/
206
434
SQRT_EPS : typeof SQRT_EPS ;
435
+
436
+ /**
437
+ * Square root of `1/2` as a single-precision floating-point number.
438
+ *
439
+ * @example
440
+ * var val = ns.SQRT_HALF;
441
+ * // returns 0.7071067690849304
442
+ */
443
+ SQRT_HALF : typeof SQRT_HALF ;
444
+
445
+ /**
446
+ * Square root of the mathematical constant `π` divided by `2` as a single-precision floating-point number.
447
+ *
448
+ * @example
449
+ * var val = ns.SQRT_HALF_PI;
450
+ * // returns 1.2533141374588013
451
+ */
452
+ SQRT_HALF_PI : typeof SQRT_HALF_PI ;
453
+
454
+ /**
455
+ * Square root of the golden ratio as a single-precision floating-point number.
456
+ *
457
+ * @example
458
+ * var val = ns.SQRT_PHI;
459
+ * // returns 1.272019624710083
460
+ */
461
+ SQRT_PHI : typeof SQRT_PHI ;
462
+
463
+ /**
464
+ * Square root of the mathematical constant `π` as a single-precision floating-point number.
465
+ *
466
+ * @example
467
+ * var val = ns.SQRT_PI;
468
+ * // returns 1.7724539041519165
469
+ */
470
+ SQRT_PI : typeof SQRT_PI ;
471
+
472
+ /**
473
+ * Square root of `3` as a single-precision floating-point number.
474
+ *
475
+ * @example
476
+ * var val = ns.SQRT_THREE;
477
+ * // returns 1.7320507764816284
478
+ */
479
+ SQRT_THREE : typeof SQRT_THREE ;
480
+
481
+ /**
482
+ * Square root of `2` as a single-precision floating-point number.
483
+ *
484
+ * @example
485
+ * var val = ns.SQRT_TWO;
486
+ * // returns 1.4142135381698608
487
+ */
488
+ SQRT_TWO : typeof SQRT_TWO ;
489
+
490
+ /**
491
+ * Square root of the mathematical constant `π` times `2` as a single-precision floating-point number.
492
+ *
493
+ * @example
494
+ * var val = ns.SQRT_TWO_PI;
495
+ * // returns 2.5066282749176025
496
+ */
497
+ SQRT_TWO_PI : typeof SQRT_TWO_PI ;
498
+
499
+ /**
500
+ * The mathematical constant `π` times `2`.
501
+ *
502
+ * @example
503
+ * var val = ns.TWO_PI;
504
+ * // returns 6.2831854820251465
505
+ */
506
+ TWO_PI : typeof TWO_PI ;
207
507
}
208
508
209
509
/**
0 commit comments