@@ -53,6 +53,7 @@ var offsets = require( './../../../../../../base/offsets' );
5353* var Float64Array = require( '@stdlib/array/float64' );
5454* var ndarray2array = require( '@stdlib/ndarray/base/to-array' );
5555* var gcusum = require( '@stdlib/blas/ext/base/ndarray/gcusum' );
56+ * var strategy = require( '@stdlib/ndarray/base/kernels/generic/unary-strided1d/strategy' );
5657*
5758* // Create data buffers:
5859* var xbuf = new Float64Array( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0 ] );
@@ -128,30 +129,12 @@ var offsets = require( './../../../../../../base/offsets' );
128129* }
129130* ];
130131*
131- * // Define an input strategy:
132- * function inputStrategy( x ) {
133- * return {
134- * 'dtype': x.dtype,
135- * 'data': x.data,
136- * 'shape': [ 4 ],
137- * 'strides': [ 1 ],
138- * 'offset': x.offset,
139- * 'order': x.order
140- * };
141- * }
142- *
143- * // Define an output strategy:
144- * function outputStrategy( x ) {
145- * return x;
146- * }
147- *
148- * var strategy = {
149- * 'input': inputStrategy,
150- * 'output': outputStrategy
151- * };
132+ * // Define input/output strategies for iterating over sub-array views:
133+ * var strategyX = strategy( views[ 0 ] );
134+ * var strategyY = strategy( views[ 1 ] );
152135*
153136* // Apply strided function:
154- * kernel( gcusum, [ x, y, initial ], views, [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 3 ], [ 12, 12, 12, 12, 12, 12, 12, 12, 12, 4 ], [ 12, 12, 12, 12, 12, 12, 12, 12, 12, 4 ], strategy, strategy , {} );
137+ * kernel( gcusum, [ x, y, initial ], views, [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 3 ], [ 12, 12, 12, 12, 12, 12, 12, 12, 12, 4 ], [ 12, 12, 12, 12, 12, 12, 12, 12, 12, 4 ], strategyX, strategyY , {} );
155138*
156139* var arr = ndarray2array( y.data, y.shape, y.strides, y.offset, y.order );
157140* // returns [ [ [ [ [ [ [ [ [ [ [ [ 1.0, 3.0 ], [ 6.0, 10.0 ] ], [ [ 5.0, 11.0 ], [ 18.0, 26.0 ] ], [ [ 9.0, 19.0 ], [ 30.0, 42.0 ] ] ] ] ] ] ] ] ] ] ] ]
0 commit comments