@@ -25,14 +25,14 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
25
25
< div class ='fl pad1y space-right2 '>
26
26
< span class ="strong "> 100% </ span >
27
27
< span class ="quiet "> Statements</ span >
28
- < span class ='fraction '> 128/128 </ span >
28
+ < span class ='fraction '> 72/72 </ span >
29
29
</ div >
30
30
31
31
32
32
< div class ='fl pad1y space-right2 '>
33
33
< span class ="strong "> 100% </ span >
34
34
< span class ="quiet "> Branches</ span >
35
- < span class ='fraction '> 20/20 </ span >
35
+ < span class ='fraction '> 4/4 </ span >
36
36
</ div >
37
37
38
38
@@ -46,7 +46,7 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
46
46
< div class ='fl pad1y space-right2 '>
47
47
< span class ="strong "> 100% </ span >
48
48
< span class ="quiet "> Lines</ span >
49
- < span class ='fraction '> 128/128 </ span >
49
+ < span class ='fraction '> 72/72 </ span >
50
50
</ div >
51
51
52
52
@@ -135,63 +135,7 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
135
135
< a name ='L70 '> </ a > < a href ='#L70 '> 70</ a >
136
136
< a name ='L71 '> </ a > < a href ='#L71 '> 71</ a >
137
137
< a name ='L72 '> </ a > < a href ='#L72 '> 72</ a >
138
- < a name ='L73 '> </ a > < a href ='#L73 '> 73</ a >
139
- < a name ='L74 '> </ a > < a href ='#L74 '> 74</ a >
140
- < a name ='L75 '> </ a > < a href ='#L75 '> 75</ a >
141
- < a name ='L76 '> </ a > < a href ='#L76 '> 76</ a >
142
- < a name ='L77 '> </ a > < a href ='#L77 '> 77</ a >
143
- < a name ='L78 '> </ a > < a href ='#L78 '> 78</ a >
144
- < a name ='L79 '> </ a > < a href ='#L79 '> 79</ a >
145
- < a name ='L80 '> </ a > < a href ='#L80 '> 80</ a >
146
- < a name ='L81 '> </ a > < a href ='#L81 '> 81</ a >
147
- < a name ='L82 '> </ a > < a href ='#L82 '> 82</ a >
148
- < a name ='L83 '> </ a > < a href ='#L83 '> 83</ a >
149
- < a name ='L84 '> </ a > < a href ='#L84 '> 84</ a >
150
- < a name ='L85 '> </ a > < a href ='#L85 '> 85</ a >
151
- < a name ='L86 '> </ a > < a href ='#L86 '> 86</ a >
152
- < a name ='L87 '> </ a > < a href ='#L87 '> 87</ a >
153
- < a name ='L88 '> </ a > < a href ='#L88 '> 88</ a >
154
- < a name ='L89 '> </ a > < a href ='#L89 '> 89</ a >
155
- < a name ='L90 '> </ a > < a href ='#L90 '> 90</ a >
156
- < a name ='L91 '> </ a > < a href ='#L91 '> 91</ a >
157
- < a name ='L92 '> </ a > < a href ='#L92 '> 92</ a >
158
- < a name ='L93 '> </ a > < a href ='#L93 '> 93</ a >
159
- < a name ='L94 '> </ a > < a href ='#L94 '> 94</ a >
160
- < a name ='L95 '> </ a > < a href ='#L95 '> 95</ a >
161
- < a name ='L96 '> </ a > < a href ='#L96 '> 96</ a >
162
- < a name ='L97 '> </ a > < a href ='#L97 '> 97</ a >
163
- < a name ='L98 '> </ a > < a href ='#L98 '> 98</ a >
164
- < a name ='L99 '> </ a > < a href ='#L99 '> 99</ a >
165
- < a name ='L100 '> </ a > < a href ='#L100 '> 100</ a >
166
- < a name ='L101 '> </ a > < a href ='#L101 '> 101</ a >
167
- < a name ='L102 '> </ a > < a href ='#L102 '> 102</ a >
168
- < a name ='L103 '> </ a > < a href ='#L103 '> 103</ a >
169
- < a name ='L104 '> </ a > < a href ='#L104 '> 104</ a >
170
- < a name ='L105 '> </ a > < a href ='#L105 '> 105</ a >
171
- < a name ='L106 '> </ a > < a href ='#L106 '> 106</ a >
172
- < a name ='L107 '> </ a > < a href ='#L107 '> 107</ a >
173
- < a name ='L108 '> </ a > < a href ='#L108 '> 108</ a >
174
- < a name ='L109 '> </ a > < a href ='#L109 '> 109</ a >
175
- < a name ='L110 '> </ a > < a href ='#L110 '> 110</ a >
176
- < a name ='L111 '> </ a > < a href ='#L111 '> 111</ a >
177
- < a name ='L112 '> </ a > < a href ='#L112 '> 112</ a >
178
- < a name ='L113 '> </ a > < a href ='#L113 '> 113</ a >
179
- < a name ='L114 '> </ a > < a href ='#L114 '> 114</ a >
180
- < a name ='L115 '> </ a > < a href ='#L115 '> 115</ a >
181
- < a name ='L116 '> </ a > < a href ='#L116 '> 116</ a >
182
- < a name ='L117 '> </ a > < a href ='#L117 '> 117</ a >
183
- < a name ='L118 '> </ a > < a href ='#L118 '> 118</ a >
184
- < a name ='L119 '> </ a > < a href ='#L119 '> 119</ a >
185
- < a name ='L120 '> </ a > < a href ='#L120 '> 120</ a >
186
- < a name ='L121 '> </ a > < a href ='#L121 '> 121</ a >
187
- < a name ='L122 '> </ a > < a href ='#L122 '> 122</ a >
188
- < a name ='L123 '> </ a > < a href ='#L123 '> 123</ a >
189
- < a name ='L124 '> </ a > < a href ='#L124 '> 124</ a >
190
- < a name ='L125 '> </ a > < a href ='#L125 '> 125</ a >
191
- < a name ='L126 '> </ a > < a href ='#L126 '> 126</ a >
192
- < a name ='L127 '> </ a > < a href ='#L127 '> 127</ a >
193
- < a name ='L128 '> </ a > < a href ='#L128 '> 128</ a >
194
- < a name ='L129 '> </ a > < a href ='#L129 '> 129</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 2x</ span >
138
+ < a name ='L73 '> </ a > < a href ='#L73 '> 73</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 2x</ span >
195
139
< span class ="cline-any cline-yes "> 2x</ span >
196
140
< span class ="cline-any cline-yes "> 2x</ span >
197
141
< span class ="cline-any cline-yes "> 2x</ span >
@@ -252,19 +196,6 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
252
196
< span class ="cline-any cline-yes "> 15x</ span >
253
197
< span class ="cline-any cline-yes "> 15x</ span >
254
198
< span class ="cline-any cline-yes "> 15x</ span >
255
- < span class ="cline-any cline-yes "> 15x</ span >
256
- < span class ="cline-any cline-yes "> 15x</ span >
257
- < span class ="cline-any cline-yes "> 15x</ span >
258
- < span class ="cline-any cline-yes "> 15x</ span >
259
- < span class ="cline-any cline-yes "> 15x</ span >
260
- < span class ="cline-any cline-yes "> 15x</ span >
261
- < span class ="cline-any cline-yes "> 15x</ span >
262
- < span class ="cline-any cline-yes "> 15x</ span >
263
- < span class ="cline-any cline-yes "> 1x</ span >
264
- < span class ="cline-any cline-yes "> 15x</ span >
265
- < span class ="cline-any cline-yes "> 14x</ span >
266
- < span class ="cline-any cline-yes "> 14x</ span >
267
- < span class ="cline-any cline-yes "> 15x</ span >
268
199
< span class ="cline-any cline-yes "> 1x</ span >
269
200
< span class ="cline-any cline-yes "> 15x</ span >
270
201
< span class ="cline-any cline-yes "> 14x</ span >
@@ -275,49 +206,6 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
275
206
< span class ="cline-any cline-yes "> 2x</ span >
276
207
< span class ="cline-any cline-yes "> 2x</ span >
277
208
< span class ="cline-any cline-yes "> 2x</ span >
278
- < span class ="cline-any cline-yes "> 15x</ span >
279
- < span class ="cline-any cline-yes "> 4x</ span >
280
- < span class ="cline-any cline-yes "> 1x</ span >
281
- < span class ="cline-any cline-yes "> 1x</ span >
282
- < span class ="cline-any cline-yes "> 1x</ span >
283
- < span class ="cline-any cline-yes "> 1x</ span >
284
- < span class ="cline-any cline-yes "> 3x</ span >
285
- < span class ="cline-any cline-yes "> 3x</ span >
286
- < span class ="cline-any cline-yes "> 3x</ span >
287
- < span class ="cline-any cline-yes "> 3x</ span >
288
- < span class ="cline-any cline-yes "> 9x</ span >
289
- < span class ="cline-any cline-yes "> 9x</ span >
290
- < span class ="cline-any cline-yes "> 9x</ span >
291
- < span class ="cline-any cline-yes "> 15x</ span >
292
- < span class ="cline-any cline-yes "> 45x</ span >
293
- < span class ="cline-any cline-yes "> 45x</ span >
294
- < span class ="cline-any cline-yes "> 34x</ span >
295
- < span class ="cline-any cline-yes "> 34x</ span >
296
- < span class ="cline-any cline-yes "> 13x</ span >
297
- < span class ="cline-any cline-yes "> 34x</ span >
298
- < span class ="cline-any cline-yes "> 21x</ span >
299
- < span class ="cline-any cline-yes "> 21x</ span >
300
- < span class ="cline-any cline-yes "> 34x</ span >
301
- < span class ="cline-any cline-yes "> 34x</ span >
302
- < span class ="cline-any cline-yes "> 34x</ span >
303
- < span class ="cline-any cline-yes "> 33x</ span >
304
- < span class ="cline-any cline-yes "> 34x</ span >
305
- < span class ="cline-any cline-yes "> 1x</ span >
306
- < span class ="cline-any cline-yes "> 1x</ span >
307
- < span class ="cline-any cline-yes "> 34x</ span >
308
- < span class ="cline-any cline-yes "> 34x</ span >
309
- < span class ="cline-any cline-yes "> 34x</ span >
310
- < span class ="cline-any cline-yes "> 34x</ span >
311
- < span class ="cline-any cline-yes "> 45x</ span >
312
- < span class ="cline-any cline-yes "> 45x</ span >
313
- < span class ="cline-any cline-yes "> 9x</ span >
314
- < span class ="cline-any cline-yes "> 9x</ span >
315
- < span class ="cline-any cline-yes "> 9x</ span >
316
- < span class ="cline-any cline-yes "> 15x</ span >
317
- < span class ="cline-any cline-yes "> 2x</ span >
318
- < span class ="cline-any cline-yes "> 2x</ span >
319
- < span class ="cline-any cline-yes "> 2x</ span >
320
- < span class ="cline-any cline-yes "> 2x</ span >
321
209
< span class ="cline-any cline-yes "> 2x</ span >
322
210
< span class ="cline-any cline-neutral "> </ span > </ td > < td class ="text "> < pre class ="prettyprint lang-js "> /**
323
211
* @license Apache-2.0
@@ -341,8 +229,8 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
341
229
342
230
// MODULES //
343
231
344
- var isnan = require( '@stdlib/math /base/assert/is-nan ' );
345
- var abs = require( '@stdlib/math/base/special/abs ' );
232
+ var stride2offset = require( '@stdlib/strided /base/stride2offset ' );
233
+ var ndarray = require( './ndarray.js ' );
346
234
347
235
348
236
// MAIN //
@@ -375,72 +263,16 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
375
263
* // returns <Float64Array>[ 1.0, 3 ]
376
264
*/
377
265
function dnannsumkbn2( N, x, strideX, out, strideOut ) {
378
- var sum;
379
- var ccs;
380
- var cs;
381
- var cc;
382
266
var ix;
383
267
var io;
384
- var v;
385
- var t;
386
- var c;
387
- var n;
388
- var i;
389
268
390
- if ( strideX < 0 ) {
391
- ix = (1-N) * strideX;
392
- } else {
393
- ix = 0;
394
- }
269
+ ix = stride2offset( N, strideX );
395
270
if ( strideOut < 0 ) {
396
271
io = -strideOut;
397
272
} else {
398
273
io = 0;
399
274
}
400
- sum = 0.0;
401
- if ( N <= 0 ) {
402
- out[ io ] = sum;
403
- out[ io+strideOut ] = 0;
404
- return out;
405
- }
406
- if ( N === 1 || strideX === 0 ) {
407
- if ( isnan( x[ ix ] ) ) {
408
- out[ io ] = sum;
409
- out[ io+strideOut ] = 0;
410
- return out;
411
- }
412
- out[ io ] = x[ ix ];
413
- out[ io+strideOut ] = 1;
414
- return out;
415
- }
416
- ccs = 0.0; // second order correction term for lost low order bits
417
- cs = 0.0; // first order correction term for lost low order bits
418
- n = 0;
419
- for ( i = 0; i < N; i++ ) {
420
- v = x[ ix ];
421
- if ( isnan( v ) === false ) {
422
- t = sum + v;
423
- if ( abs( sum ) >= abs( v ) ) {
424
- c = (sum-t) + v;
425
- } else {
426
- c = (v-t) + sum;
427
- }
428
- sum = t;
429
- t = cs + c;
430
- if ( abs( cs ) >= abs( c ) ) {
431
- cc = (cs-t) + c;
432
- } else {
433
- cc = (c-t) + cs;
434
- }
435
- cs = t;
436
- ccs += cc;
437
- n += 1;
438
- }
439
- ix += strideX;
440
- }
441
- out[ io ] = sum + cs + ccs;
442
- out[ io+strideOut ] = n;
443
- return out;
275
+ return ndarray( N, x, strideX, ix, out, strideOut, io );
444
276
}
445
277
446
278
@@ -454,7 +286,7 @@ <h1><a href="../../../../../index.html">All files</a> / <a href="index.html">bla
454
286
< div class ='footer quiet pad2 space-top1 center small '>
455
287
Code coverage generated by
456
288
< a href ="https://istanbul.js.org/ " target ="_blank " rel ="noopener noreferrer "> istanbul</ a >
457
- at 2024-04-22T00:46:43.091Z
289
+ at 2024-11-11T22:39:34.708Z
458
290
</ div >
459
291
< script src ="../../../../../prettify.js "> </ script >
460
292
< script >
0 commit comments