/// <summary> /// Does a point wise add of two arrays <c>z = x + y</c>. This can be used /// to add vectors or matrices. /// </summary> /// <param name="x">The array x.</param> /// <param name="y">The array y.</param> /// <param name="result">The result of the addition.</param> /// <remarks>There is no equivalent BLAS routine, but many libraries /// provide optimized (parallel and/or vectorized) versions of this /// routine.</remarks> public override void AddArrays(Complex32[] x, Complex32[] y, Complex32[] result) { if (y == null) { throw new ArgumentNullException("y"); } if (x == null) { throw new ArgumentNullException("x"); } if (x.Length != y.Length) { throw new ArgumentException(Resources.ArgumentArraysSameLength); } if (x.Length != result.Length) { throw new ArgumentException(Resources.ArgumentArraysSameLength); } SafeNativeMethods.c_vector_add(x.Length, x, y, result); }