repl.txt (4652B)
1 2 {{alias}}( N, x, strideX, y, strideY ) 3 Interchanges two complex single-precision floating-point vectors. 4 5 The `N` and `stride` parameters determine how values from `x` are swapped 6 with values from `y`. 7 8 Indexing is relative to the first index. To introduce an offset, use typed 9 array views. 10 11 If `N` is less than or equal to `0`, the vectors are unchanged. 12 13 Parameters 14 ---------- 15 N: integer 16 Number of values to swap. 17 18 x: Complex64Array 19 First input array. 20 21 strideX: integer 22 Index increment for `x`. 23 24 y: Complex64Array 25 Second input array. 26 27 strideY: integer 28 Index increment for `y`. 29 30 Returns 31 ------- 32 y: Complex64Array 33 Input array `y`. 34 35 Examples 36 -------- 37 // Standard usage: 38 > var x = new {{alias:@stdlib/array/complex64}}( [ 1.0, 2.0, 3.0, 4.0 ] ); 39 > var y = new {{alias:@stdlib/array/complex64}}( [ 6.0, 7.0, 8.0, 9.0 ] ); 40 > {{alias}}( x.length, x, 1, y, 1 ); 41 > var z = y.get( 0 ); 42 > var re = {{alias:@stdlib/complex/real}}( z ) 43 1.0 44 > var im = {{alias:@stdlib/complex/imag}}( z ) 45 2.0 46 > z = x.get( 0 ); 47 > re = {{alias:@stdlib/complex/real}}( z ) 48 6.0 49 > im = {{alias:@stdlib/complex/imag}}( z ) 50 7.0 51 52 // Advanced indexing: 53 > x = new {{alias:@stdlib/array/complex64}}( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] ); 54 > y = new {{alias:@stdlib/array/complex64}}( [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ] ); 55 > var N = {{alias:@stdlib/math/base/special/floor}}( x.length / 2 ); 56 > {{alias}}( N, x, -2, y, 1 ); 57 > z = y.get( 0 ); 58 > re = {{alias:@stdlib/complex/real}}( z ) 59 5.0 60 > im = {{alias:@stdlib/complex/imag}}( z ) 61 6.0 62 > z = x.get( 0 ); 63 > re = {{alias:@stdlib/complex/real}}( z ) 64 0.0 65 > im = {{alias:@stdlib/complex/imag}}( z ) 66 0.0 67 68 // Using typed array views: 69 > var x0 = new {{alias:@stdlib/array/complex64}}( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] ); 70 > var y0 = new {{alias:@stdlib/array/complex64}}( [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ] ); 71 > var x1 = new {{alias:@stdlib/array/complex64}}( x0.buffer, x0.BYTES_PER_ELEMENT*1 ); 72 > var y1 = new {{alias:@stdlib/array/complex64}}( y0.buffer, y0.BYTES_PER_ELEMENT*2 ); 73 > N = {{alias:@stdlib/math/base/special/floor}}( x0.length / 2 ); 74 > {{alias}}( N, x1, -2, y1, 1 ); 75 > z = y0.get( 2 ); 76 > re = {{alias:@stdlib/complex/real}}( z ) 77 7.0 78 > im = {{alias:@stdlib/complex/imag}}( z ) 79 8.0 80 > z = x0.get( 1 ); 81 > re = {{alias:@stdlib/complex/real}}( z ) 82 0.0 83 > im = {{alias:@stdlib/complex/imag}}( z ) 84 0.0 85 86 87 {{alias}}.ndarray( N, x, strideX, offsetX, y, strideY, offsetY ) 88 Interchanges two complex single-precision floating-point vectors using 89 alternative indexing semantics. 90 91 While typed array views mandate a view offset based on the underlying 92 buffer, the `offset` parameters support indexing semantics based on starting 93 indices. 94 95 Parameters 96 ---------- 97 N: integer 98 Number of values to swap. 99 100 x: Complex64Array 101 First input array. 102 103 strideX: integer 104 Index increment for `x`. 105 106 offsetX: integer 107 Starting index for `x`. 108 109 y: Complex64Array 110 Second input array. 111 112 strideY: integer 113 Index increment for `y`. 114 115 offsetY: integer 116 Starting index for `y`. 117 118 Returns 119 ------- 120 y: Complex64Array 121 Input array `y`. 122 123 Examples 124 -------- 125 // Standard usage: 126 > var x = new {{alias:@stdlib/array/complex64}}( [ 1.0, 2.0, 3.0, 4.0 ] ); 127 > var y = new {{alias:@stdlib/array/complex64}}( [ 6.0, 7.0, 8.0, 9.0 ] ); 128 > {{alias}}.ndarray( x.length, x, 1, 0, y, 1, 0 ); 129 > var z = y.get( 0 ); 130 > var re = {{alias:@stdlib/complex/real}}( z ) 131 1.0 132 > var im = {{alias:@stdlib/complex/imag}}( z ) 133 2.0 134 > z = x.get( 0 ); 135 > re = {{alias:@stdlib/complex/real}}( z ) 136 6.0 137 > im = {{alias:@stdlib/complex/imag}}( z ) 138 7.0 139 140 // Advanced indexing: 141 > x = new {{alias:@stdlib/array/complex64}}( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0 ] ); 142 > y = new {{alias:@stdlib/array/complex64}}( [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 ] ); 143 > var N = {{alias:@stdlib/math/base/special/floor}}( x.length / 2 ); 144 > {{alias}}.ndarray( N, x, 2, 1, y, -1, y.length-1 ); 145 > z = y.get( y.length-1 ); 146 > re = {{alias:@stdlib/complex/real}}( z ) 147 3.0 148 > im = {{alias:@stdlib/complex/imag}}( z ) 149 4.0 150 > z = x.get( 1 ); 151 > re = {{alias:@stdlib/complex/real}}( z ) 152 0.0 153 > im = {{alias:@stdlib/complex/imag}}( z ) 154 0.0 155 156 See Also 157 -------- 158