@@ -25,7 +25,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
2525 < div class ='fl pad1y space-right2 '>
2626 < span class ="strong "> 100% </ span >
2727 < span class ="quiet "> Statements</ span >
28- < span class ='fraction '> 362/362 </ span >
28+ < span class ='fraction '> 363/363 </ span >
2929 </ div >
3030
3131
@@ -46,7 +46,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
4646 < div class ='fl pad1y space-right2 '>
4747 < span class ="strong "> 100% </ span >
4848 < span class ="quiet "> Lines</ span >
49- < span class ='fraction '> 362/362 </ span >
49+ < span class ='fraction '> 363/363 </ span >
5050 </ div >
5151
5252
@@ -425,7 +425,13 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
425425< a name ='L360 '> </ a > < a href ='#L360 '> 360</ a >
426426< a name ='L361 '> </ a > < a href ='#L361 '> 361</ a >
427427< a name ='L362 '> </ a > < a href ='#L362 '> 362</ a >
428- < a name ='L363 '> </ a > < a href ='#L363 '> 363</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 3x</ span >
428+ < a name ='L363 '> </ a > < a href ='#L363 '> 363</ a >
429+ < a name ='L364 '> </ a > < a href ='#L364 '> 364</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 3x</ span >
430+ < span class ="cline-any cline-yes "> 3x</ span >
431+ < span class ="cline-any cline-yes "> 3x</ span >
432+ < span class ="cline-any cline-yes "> 3x</ span >
433+ < span class ="cline-any cline-yes "> 3x</ span >
434+ < span class ="cline-any cline-yes "> 3x</ span >
429435< span class ="cline-any cline-yes "> 3x</ span >
430436< span class ="cline-any cline-yes "> 3x</ span >
431437< span class ="cline-any cline-yes "> 3x</ span >
@@ -765,22 +771,18 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
765771< span class ="cline-any cline-yes "> 50x</ span >
766772< span class ="cline-any cline-yes "> 2x</ span >
767773< span class ="cline-any cline-yes "> 2x</ span >
768- < span class ="cline-any cline-yes "> 48x</ span >
769774< span class ="cline-any cline-yes "> 50x</ span >
770775< span class ="cline-any cline-yes "> 12x</ span >
771776< span class ="cline-any cline-yes "> 12x</ span >
772- < span class ="cline-any cline-yes "> 36x</ span >
773777< span class ="cline-any cline-yes "> 50x</ span >
774778< span class ="cline-any cline-yes "> 12x</ span >
775779< span class ="cline-any cline-yes "> 12x</ span >
776- < span class ="cline-any cline-yes "> 24x</ span >
777780< span class ="cline-any cline-yes "> 50x</ span >
778781< span class ="cline-any cline-yes "> 12x</ span >
779782< span class ="cline-any cline-yes "> 12x</ span >
780783< span class ="cline-any cline-yes "> 12x</ span >
781784< span class ="cline-any cline-yes "> 12x</ span >
782785< span class ="cline-any cline-yes "> 12x</ span >
783- < span class ="cline-any cline-yes "> 12x</ span >
784786< span class ="cline-any cline-yes "> 50x</ span >
785787< span class ="cline-any cline-yes "> 3x</ span >
786788< span class ="cline-any cline-yes "> 3x</ span >
@@ -820,6 +822,11 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
820822var abs = require( '@stdlib/math/base/special/abs' );
821823
822824
825+ // VARIABLES //
826+
827+ var workspace = new Float64Array( 2 );
828+
829+
823830// FUNCTIONS //
824831
825832/**
@@ -835,7 +842,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
835842* @param {Float64Array} work - work array, should have `N` indexed elements if row-major layout is used
836843* @param {integer} strideWork - stride length of `work`
837844* @param {NonNegativeInteger} offsetWork - starting index of `work`
838- * @returns {number} required norm value
845+ * @returns {number} result
839846*
840847* @example
841848* var Float64Array = require( '@stdlib/array/float64' );
@@ -910,7 +917,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
910917* @param {integer} strideA1 - stride of the first dimension of `A`
911918* @param {integer} strideA2 - stride of the second dimension of `A`
912919* @param {NonNegativeInteger} offsetA - starting index of `A`
913- * @returns {number} required norm value
920+ * @returns {number} result
914921*
915922* @example
916923* var Float64Array = require( '@stdlib/array/float64' );
@@ -972,7 +979,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
972979* @param {Float64Array} work - work array, should have `M` indexed elements if column-major layout is used
973980* @param {integer} strideWork - stride length of `work`
974981* @param {NonNegativeInteger} offsetWork - starting index of `work`
975- * @returns {number} required norm value
982+ * @returns {number} result
976983*
977984* @example
978985* var Float64Array = require( '@stdlib/array/float64' );
@@ -1046,26 +1053,26 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
10461053* @param {integer} strideA1 - stride of the first dimension of `A`
10471054* @param {integer} strideA2 - stride of the second dimension of `A`
10481055* @param {NonNegativeInteger} offsetA - starting index of `A`
1049- * @returns {number} required norm value
1056+ * @returns {number} result
10501057*
10511058* @example
10521059* var Float64Array = require( '@stdlib/array/float64' );
10531060*
10541061* var A = new Float64Array( [ 1.0, 4.0, 7.0, 10.0, 2.0, 5.0, 8.0, 11.0, 3.0, 6.0, 9.0, 12.0 ] );
10551062*
1056- * var out = frobeniusNorm( 3, 4, A, 4, 1, 0 );
1063+ * var result = frobeniusNorm( 3, 4, A, 4, 1, 0 );
10571064* // returns ~25.5
10581065*/
10591066function frobeniusNorm( M, N, A, strideA1, strideA2, offsetA ) {
1060- var out;
10611067 var da0;
10621068 var da1;
10631069 var S1;
10641070 var S2;
10651071 var ia;
10661072 var i;
10671073
1068- out = new Float64Array( [ 0.0, 1.0 ] );
1074+ workspace[ 0 ] = 0.0;
1075+ workspace[ 1 ] = 1.0;
10691076
10701077 if ( isRowMajor( [ strideA1, strideA2 ] ) ) {
10711078 S1 = M;
@@ -1081,11 +1088,11 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
10811088
10821089 ia = offsetA;
10831090 for ( i = 0; i < S1; i++ ) {
1084- dlassq( S2, A, da0, ia, out [ 0 ], out [ 1 ], out , 1, 0 );
1091+ dlassq( S2, A, da0, ia, workspace [ 0 ], workspace [ 1 ], workspace , 1, 0 ); // eslint-disable-line max-len
10851092 ia += da1;
10861093 }
10871094
1088- return out [ 0 ] * sqrt( out [ 1 ] );
1095+ return workspace [ 0 ] * sqrt( workspace [ 1 ] );
10891096}
10901097
10911098
@@ -1112,7 +1119,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
11121119* @param {Float64Array} work - temporary workspace array
11131120* @param {integer} strideWork - stride length of `work`
11141121* @param {NonNegativeInteger} offsetWork - starting index of `work`
1115- * @returns {number} required norm value
1122+ * @returns {number} result
11161123*
11171124* @example
11181125* var Float64Array = require( '@stdlib/array/float64' );
@@ -1127,19 +1134,15 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
11271134 if ( min( M, N ) === 0 ) {
11281135 return 0.0;
11291136 }
1130-
11311137 if ( norm === 'max' ) {
11321138 return maxAbs( M, N, A, strideA1, strideA2, offsetA );
11331139 }
1134-
11351140 if ( norm === 'one' ) {
11361141 return oneNorm( M, N, A, strideA1, strideA2, offsetA, work, strideWork, offsetWork ); // eslint-disable-line max-len
11371142 }
1138-
11391143 if ( norm === 'infinity' ) {
11401144 return infinityNorm( M, N, A, strideA1, strideA2, offsetA, work, strideWork, offsetWork ); // eslint-disable-line max-len
11411145 }
1142-
11431146 if ( norm === 'frobenius' ) {
11441147 return frobeniusNorm( M, N, A, strideA1, strideA2, offsetA );
11451148 }
@@ -1156,7 +1159,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">lapack
11561159 < div class ='footer quiet pad2 space-top1 center small '>
11571160 Code coverage generated by
11581161 < a href ="https://istanbul.js.org/ " target ="_blank " rel ="noopener noreferrer "> istanbul</ a >
1159- at 2025-06-06T08:30 :05.481Z
1162+ at 2025-06-16T17:28 :05.968Z
11601163 </ div >
11611164 < script src ="../../../../prettify.js "> </ script >
11621165 < script >
0 commit comments