Complex Elementary Functions Using Exception Handling All these functions are followed by an _eh to indicate that they use exception handling. These functions are offered as an alternative to other GSL complex elementary functions since while slightly slower to execute they have better error bounds. E is the machine epsilon. For more details on the error bounds see: T. E. Hull and Thomas F. Fairgrieve and Ping Tak Peter Tang, "Implementing Complex Elementary Functions Using Exception Handling", ACM Transactions on Mathematical Software, Volume 20 (1994), pp 215-244, Corrigenda, p553. ....... Properties of complex numbers Function: double gsl_complex_abs_eh (gsl_complex z) This function returns the magnitude of the complex number z, |z|. Any overflowed components are set to inf. The appropriate floating-point register flags are set. Theoretical error bound: E + E(sqrt). ....... Elementary Complex Functions Function: gsl_complex gsl_complex_sqrt_eh (gsl_complex z) This function returns the square root of the complex number z, \sqrt z. Any underflowed components are allowed to gradually underflow. The appropriate floating point register flags are set. There is a branch cut along the negative real axis from -oo to 0. Theoretical error bound: sqrt( 2.5E^2 + 4.5E*E(sqrt) + 2.25E(sqrt)^2 ). Function: gsl_complex gsl_complex_exp_eh (gsl_complex z) This function returns the complex exponential of the complex number z, \exp(z). Any overflowed components are set to inf. Any underflowed components are allowed to gradually underflow. The appropriate floating point register flags are set. Theoretical error bound: sqrt( E^2 + ( E + E(exp) + E(sincos) )^2 ). Function: gsl_complex gsl_complex_log_eh (gsl_complex z) This function returns the complex natural logarithm (base e) of the complex number z, \log(z). Any underflowed components are allowed to gradually underflow. The appropriate floating point register flags are set. There is a branch cut along the negative real axis from -oo to 0. Depending on the precision of long double the theoretical error bound is between max( 2.886E + E(log), 6.495E + E(log1p), 4.457E + E(log1p) +E(arg) ) and max( 2.886E + E(log), 2.165E + E(log1p), E(arg) ). ....... Complex Trigonometric Functions Function: gsl_complex gsl_complex_sin_eh (gsl_complex z) This function returns the complex sine of the complex number z, \sin(z). Any overflowed components are set to inf. Any underflowed components are allowed to gradually underflow. The appropriate floating point register flags are set. Theoretical error bound: E + E(sincos) + E(sinhcosh). Function: gsl_complex gsl_complex_cos_eh (gsl_complex z) This function returns the complex cosine of the complex number z, \cos(z). Any overflowed components are set to inf. Any underflowed components are allowed to gradually underflow. The appropriate floating point register flags are set. Theoretical error bound: E + E(sincos) + E(sinhcosh).