File: repl.txt

package info (click to toggle)
node-stdlib 0.0.96%2Bds1%2B~cs0.0.429-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 421,476 kB
  • sloc: javascript: 1,562,831; ansic: 109,702; lisp: 49,823; cpp: 27,224; python: 7,871; sh: 6,807; makefile: 6,089; fortran: 3,102; awk: 387
file content (145 lines) | stat: -rw-r--r-- 4,700 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145

{{alias}}( N, x, sx, m, sm, y, sy, fcn )
    Applies a unary function accepting and returning double-precision floating-
    point numbers to each element in a double-precision floating-point strided
    input array according to a corresponding element in a strided mask array and
    assigns each result to an element in a double-precision floating-point
    strided output array.

    The `N` and stride parameters determine which elements in the strided arrays
    are accessed at runtime.

    Indexing is relative to the first index. To introduce an offset, use typed
    array views.

    Parameters
    ----------
    N: integer
        Number of indexed elements.

    x: Float64Array
        Input array.

    sx: integer
        Index increment for `x`.

    m: Uint8Array
        Mask array.

    sm: integer
        Index increment for `m`.

    y: Float64Array
        Destination array.

    sy: integer
        Index increment for `y`.

    fcn: Function
        Unary function to apply.

    Returns
    -------
    y: Float64Array
        Input array `y`.

    Examples
    --------
    // Standard usage:
    > var x = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
    > var m = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
    > var y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
    > {{alias}}( x.length, x, 1, m, 1, y, 1, {{alias:@stdlib/math/base/special/identity}} )
    <Float64Array>[ 1.0, 2.0, 0.0, 4.0 ]

    // Using `N` and `stride` parameters:
    > var N = {{alias:@stdlib/math/base/special/floor}}( x.length / 2 );
    > y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
    > {{alias}}( N, x, 2, m, 2, y, -1, {{alias:@stdlib/math/base/special/identity}} )
    <Float64Array>[ 0.0, 1.0, 0.0, 0.0 ]

    // Using view offsets:
    > var x0 = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
    > var m0 = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
    > var y0 = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
    > var x1 = new {{alias:@stdlib/array/float64}}( x0.buffer, x0.BYTES_PER_ELEMENT*1 );
    > var m1 = new {{alias:@stdlib/array/uint8}}( m0.buffer, m0.BYTES_PER_ELEMENT*2 );
    > var y1 = new {{alias:@stdlib/array/float64}}( y0.buffer, y0.BYTES_PER_ELEMENT*2 );
    > N = {{alias:@stdlib/math/base/special/floor}}( x0.length / 2 );
    > {{alias}}( N, x1, -2, m1, 1, y1, 1, {{alias:@stdlib/math/base/special/identity}} )
    <Float64Array>[ 0.0, 2.0 ]
    > y0
    <Float64Array>[ 0.0, 0.0, 0.0, 2.0 ]


{{alias}}.ndarray( N, x, sx, ox, m, sm, om, y, sy, oy, fcn )
    Applies a unary function accepting and returning double-precision floating-
    point numbers to each element in a double-precision floating-point strided
    input array according to a corresponding element in a strided mask array and
    assigns each result to an element in a double-precision floating-point
    strided output array using alternative indexing semantics.

    While typed array views mandate a view offset based on the underlying
    buffer, the offset parameters support indexing semantics based on starting
    indices.

    Parameters
    ----------
    N: integer
        Number of indexed elements.

    x: Float64Array
        Input array.

    sx: integer
        Index increment for `x`.

    ox: integer
        Starting index for `x`.

    m: Uint8Array
        Mask array.

    sm: integer
        Index increment for `m`.

    om: integer
        Starting index for `m`.

    y: Float64Array
        Destination array.

    sy: integer
        Index increment for `y`.

    oy: integer
        Starting index for `y`.

    fcn: Function
        Unary function to apply.

    Returns
    -------
    y: Float64Array
        Input array `y`.

    Examples
    --------
    // Standard usage:
    > var x = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
    > var m = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
    > var y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
    > {{alias}}.ndarray( x.length, x, 1, 0, m, 1, 0, y, 1, 0, {{alias:@stdlib/math/base/special/identity}} )
    <Float64Array>[ 1.0, 2.0, 0.0, 4.0 ]

    // Advanced indexing:
    > x = new {{alias:@stdlib/array/float64}}( [ 1.0, 2.0, 3.0, 4.0 ] );
    > m = new {{alias:@stdlib/array/uint8}}( [ 0, 0, 1, 0 ] );
    > y = new {{alias:@stdlib/array/float64}}( [ 0.0, 0.0, 0.0, 0.0 ] );
    > var N = {{alias:@stdlib/math/base/special/floor}}( x.length / 2 );
    > {{alias}}.ndarray( N, x, 2, 1, m, 1, 2, y, -1, y.length-1, {{alias:@stdlib/math/base/special/identity}} )
    <Float64Array>[ 0.0, 0.0, 4.0, 0.0 ]

    See Also
    --------