{{alias}}( N, za, zx, strideX, zy, strideY ) Scales a double-precision complex floating-point vector by a double- precision complex floating point constant and adds the result to a double- precision complex floating-point vector. The `N` and stride parameters determine how values from `zx` are scaled by `za` and added to `zy`. Indexing is relative to the first index. To introduce an offset, use typed array views. If `N` is less than or equal to `0`, the function returns `zy` unchanged. Parameters ---------- N: integer Number of indexed elements. za: Complex128 Scalar constant. zx: Complex128Array First input array. strideX: integer Index increment for `zx`. zy: Complex128Array Second input array. strideY: integer Index increment for `zy`. Returns ------- zy: Complex128Array Second input array. Examples -------- // Standard usage: > var zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0 ] ); > var zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0 ] ); > var za = new {{alias:@stdlib/complex/float64/ctor}}( 2.0, 2.0 ); > {{alias}}( 2, za, zx, 1, zy, 1 ); > var z = zy.get( 0 ); > var re = {{alias:@stdlib/complex/float64/real}}( z ) -1.0 > var im = {{alias:@stdlib/complex/float64/imag}}( z ) 7.0 // Advanced indexing: > zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] ); > zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] ); > {{alias}}( 2, za, zx, -2, zy, 1 ); > z = zy.get( 0 ); > re = {{alias:@stdlib/complex/float64/real}}( z ) -1.0 > im = {{alias:@stdlib/complex/float64/imag}}( z ) 23.0 // Using typed array views: > var zx0 = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0 ] ); > var zy0 = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0 ] ); > var zx1 = new {{alias:@stdlib/array/complex128}}( zx0.buffer, zx0.BYTES_PER_ELEMENT*1 ); > var zy1 = new {{alias:@stdlib/array/complex128}}( zy0.buffer, zy0.BYTES_PER_ELEMENT*1 ); > {{alias}}( 1, za, zx1, 1, zy1, 1 ); > z = zy0.get( 1 ); > re = {{alias:@stdlib/complex/float64/real}}( z ) -1.0 > im = {{alias:@stdlib/complex/float64/imag}}( z ) 15.0 {{alias}}.ndarray( N, za, zx, strideX, offsetX, zy, strideY, offsetY ) Scales a double-precision complex floating-point vector by a double- precision complex floating-point constant and adds the result to a double- precision complex floating-point vector 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. za: Complex128 Scalar constant. zx: Complex128Array First input array. strideX: integer Index increment for `zx`. offsetX: integer Starting index for `zx`. zy: Complex128Array Second input array. strideY: integer Index increment for `zy`. offsetY: integer Starting index for `zy`. Returns ------- zy: Complex128Array Second input array. Examples -------- // Standard usage: > var zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0 ] ); > var zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0 ] ); > var za = new {{alias:@stdlib/complex/float64/ctor}}( 2.0, 2.0 ); > {{alias}}.ndarray( zx.length, za, zx, 1, 0, zy, 1, 0 ); > var z = zy.get( 0 ); > var re = {{alias:@stdlib/complex/float64/real}}( z ) -1.0 > var im = {{alias:@stdlib/complex/float64/imag}}( z ) 7.0 // Advanced indexing: > zx = new {{alias:@stdlib/array/complex128}}( [ 1.0, 2.0, 3.0, 4.0, 5.0, 6.0 ] ); > zy = new {{alias:@stdlib/array/complex128}}( [ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ] ); > {{alias}}.ndarray( 2, za, zx, 1, 1, zy, 1, 1 ); > z = zy.get( 2 ); > re = {{alias:@stdlib/complex/float64/real}}( z ) -1.0 > im = {{alias:@stdlib/complex/float64/imag}}( z ) 23.0 See Also --------