public override Complex32 DotProduct(Complex32[] x, Complex32[] y) { if (y == null) { throw new ArgumentNullException("y"); } if (x == null) { throw new ArgumentNullException("x"); } if (x.Length != y.Length) { throw new ArgumentException(Resources.ArgumentArraysSameLength); } return(SafeNativeMethods.c_dot_product(x.Length, x, y)); }