time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

repl.txt (4700B)


      1 
      2 {{alias}}( N, x, sx, m, sm, y, sy, fcn )
      3     Applies a unary function accepting and returning double-precision floating-
      4     point numbers to each element in a double-precision floating-point strided
      5     input array according to a corresponding element in a strided mask array and
      6     assigns each result to an element in a double-precision floating-point
      7     strided output array.
      8 
      9     The `N` and stride parameters determine which elements in the strided arrays
     10     are accessed at runtime.
     11 
     12     Indexing is relative to the first index. To introduce an offset, use typed
     13     array views.
     14 
     15     Parameters
     16     ----------
     17     N: integer
     18         Number of indexed elements.
     19 
     20     x: Float64Array
     21         Input array.
     22 
     23     sx: integer
     24         Index increment for `x`.
     25 
     26     m: Uint8Array
     27         Mask array.
     28 
     29     sm: integer
     30         Index increment for `m`.
     31 
     32     y: Float64Array
     33         Destination array.
     34 
     35     sy: integer
     36         Index increment for `y`.
     37 
     38     fcn: Function
     39         Unary function to apply.
     40 
     41     Returns
     42     -------
     43     y: Float64Array
     44         Input array `y`.
     45 
     46     Examples
     47     --------
     48     // Standard usage:
     49     > var x = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
     50     > var m = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
     51     > var y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
     52     > {{alias}}( x.length, x, 1, m, 1, y, 1, {{alias:@stdlib/math/base/special/identity}} )
     53     <Float64Array>[ 1.0, 2.0, 0.0, 4.0 ]
     54 
     55     // Using `N` and `stride` parameters:
     56     > var N = {{alias:@stdlib/math/base/special/floor}}( x.length / 2 );
     57     > y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
     58     > {{alias}}( N, x, 2, m, 2, y, -1, {{alias:@stdlib/math/base/special/identity}} )
     59     <Float64Array>[ 0.0, 1.0, 0.0, 0.0 ]
     60 
     61     // Using view offsets:
     62     > var x0 = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
     63     > var m0 = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
     64     > var y0 = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
     65     > var x1 = new {{alias:@stdlib/array/float64}}( x0.buffer, x0.BYTES_PER_ELEMENT*1 );
     66     > var m1 = new {{alias:@stdlib/array/uint8}}( m0.buffer, m0.BYTES_PER_ELEMENT*2 );
     67     > var y1 = new {{alias:@stdlib/array/float64}}( y0.buffer, y0.BYTES_PER_ELEMENT*2 );
     68     > N = {{alias:@stdlib/math/base/special/floor}}( x0.length / 2 );
     69     > {{alias}}( N, x1, -2, m1, 1, y1, 1, {{alias:@stdlib/math/base/special/identity}} )
     70     <Float64Array>[ 0.0, 2.0 ]
     71     > y0
     72     <Float64Array>[ 0.0, 0.0, 0.0, 2.0 ]
     73 
     74 
     75 {{alias}}.ndarray( N, x, sx, ox, m, sm, om, y, sy, oy, fcn )
     76     Applies a unary function accepting and returning double-precision floating-
     77     point numbers to each element in a double-precision floating-point strided
     78     input array according to a corresponding element in a strided mask array and
     79     assigns each result to an element in a double-precision floating-point
     80     strided output array using alternative indexing semantics.
     81 
     82     While typed array views mandate a view offset based on the underlying
     83     buffer, the offset parameters support indexing semantics based on starting
     84     indices.
     85 
     86     Parameters
     87     ----------
     88     N: integer
     89         Number of indexed elements.
     90 
     91     x: Float64Array
     92         Input array.
     93 
     94     sx: integer
     95         Index increment for `x`.
     96 
     97     ox: integer
     98         Starting index for `x`.
     99 
    100     m: Uint8Array
    101         Mask array.
    102 
    103     sm: integer
    104         Index increment for `m`.
    105 
    106     om: integer
    107         Starting index for `m`.
    108 
    109     y: Float64Array
    110         Destination array.
    111 
    112     sy: integer
    113         Index increment for `y`.
    114 
    115     oy: integer
    116         Starting index for `y`.
    117 
    118     fcn: Function
    119         Unary function to apply.
    120 
    121     Returns
    122     -------
    123     y: Float64Array
    124         Input array `y`.
    125 
    126     Examples
    127     --------
    128     // Standard usage:
    129     > var x = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
    130     > var m = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
    131     > var y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
    132     > {{alias}}.ndarray( x.length, x, 1, 0, m, 1, 0, y, 1, 0, {{alias:@stdlib/math/base/special/identity}} )
    133     <Float64Array>[ 1.0, 2.0, 0.0, 4.0 ]
    134 
    135     // Advanced indexing:
    136     > x = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
    137     > m = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
    138     > y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
    139     > var N = {{alias:@stdlib/math/base/special/floor}}( x.length / 2 );
    140     > {{alias}}.ndarray( N, x, 2, 1, m, 1, 2, y, -1, y.length-1, {{alias:@stdlib/math/base/special/identity}} )
    141     <Float64Array>[ 0.0, 0.0, 4.0, 0.0 ]
    142 
    143     See Also
    144     --------
    145