Skip to content

Commit 6fdf82f

Browse files
committed
refactor: make single pass
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: na - task: lint_typescript_tests status: na - task: lint_license_headers status: passed ---
1 parent 254a017 commit 6fdf82f

File tree

1 file changed

+14
-7
lines changed
  • lib/node_modules/@stdlib/array/base/linspace2d/lib

1 file changed

+14
-7
lines changed

lib/node_modules/@stdlib/array/base/linspace2d/lib/main.js

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,13 @@ var zeros2d = require( '@stdlib/array/base/zeros2d' );
3737
* @example
3838
* var x = linspace2d( 0, 100, [ 2, 3 ], false );
3939
* // returns [ [ 0, 20, 40 ], [ 60, 80, 100 ] ]
40-
40+
*
4141
* x = linspace2d( 0, 100, [ 2, 3 ], true );
4242
* // returns [ [ 0, 40, 80 ], [ 20, 60, 100 ] ]
4343
*/
4444
function linspace2d( start, stop, shape, colexicographic ) {
45+
var inc0;
46+
var inc1;
4547
var out;
4648
var idx;
4749
var s0;
@@ -61,17 +63,22 @@ function linspace2d( start, stop, shape, colexicographic ) {
6163

6264
d = ( stop - start ) / ( n - 1 );
6365
out = zeros2d( shape );
64-
idx = 0;
6566

67+
if ( colexicographic ) {
68+
inc0 = s1;
69+
inc1 = 1;
70+
} else {
71+
inc0 = 1;
72+
inc1 = s0;
73+
}
74+
75+
idx = 0;
6676
for ( i1 = 0; i1 < s1; i1++ ) {
6777
for ( i0 = 0; i0 < s0; i0++ ) {
68-
if ( colexicographic ) {
69-
idx = ( i0 * s1 ) + i1;
70-
} else {
71-
idx = ( i1 * s0 ) + i0;
72-
}
7378
out[ i1 ][ i0 ] = start + ( idx * d );
79+
idx += inc0;
7480
}
81+
idx += inc1 - ( s0 * inc0 );
7582
}
7683
return out;
7784
}

0 commit comments

Comments
 (0)