Trigonometric Functions
=======================

Trigonometric Functions
-----------------------

These simple trogonometric functions are important because we want to control the error estimate, and trying to guess the error for the standard library implementation every time it is used would be a little goofy.

 -- Function: int gsl_sf_sin_impl (double x, gsl_sf_result * result);
 -- Function: int gsl_sf_sin_e (double x, gsl_sf_result * result);
     Exceptional Return Values:

 -- Function: int gsl_sf_cos_impl (double x, gsl_sf_result * result);
 -- Function: int gsl_sf_cos_e (double x, gsl_sf_result * result);
     Exceptional Return Values:

 -- Function: int gsl_sf_hypot_impl (double x, double y, gsl_sf_result * result);
 -- Function: int gsl_sf_hypot_e (double x, double y, gsl_sf_result * result);
     Exceptional Return Values:

 -- Function: int gsl_sf_complex_sin_impl (double zr, double zi, gsl_sf_result * szr, gsl_sf_result * szi);
 -- Function: int gsl_sf_complex_sin_e (double zr, double zi, gsl_sf_result * szr, gsl_sf_result * szi);
     Sin(z) Exceptional Return Values: GSL_EOVRFLW

 -- Function: int gsl_sf_complex_cos_impl (double zr, double zi, gsl_sf_result * czr, gsl_sf_result * czi);
 -- Function: int gsl_sf_complex_cos_e (double zr, double zi, gsl_sf_result * czr, gsl_sf_result * czi);
     Cos(z) Exceptional Return Values: GSL_EOVRFLW

 -- Function: int gsl_sf_complex_logsin_impl (double zr, double zi, gsl_sf_result * lszr, gsl_sf_result * lszi);
 -- Function: int gsl_sf_complex_logsin_e (double zr, double zi, gsl_sf_result * lszr, gsl_sf_result * lszi);
     Log(Sin(z)) Exceptional Return Values: GSL_EDOM, GSL_ELOSS

 -- Function: int gsl_sf_sinc_impl (double x, gsl_sf_result * result);
 -- Function: int gsl_sf_sinc_e (double x, gsl_sf_result * result);
     Sinc(x) = sin(pi x) / (pi x) Exceptional Return Values: none

 -- Function: int gsl_sf_lnsinh_impl (double x, gsl_sf_result * result);
 -- Function: int gsl_sf_lnsinh_e (double x, gsl_sf_result * result);
     Log(Sinh(x)) Domain: x > 0 Exceptional Return Values: GSL_EDOM

 -- Function: int gsl_sf_lncosh_impl (double x, gsl_sf_result * result);
 -- Function: int gsl_sf_lncosh_e (double x, gsl_sf_result * result);
     Log(Cosh(x)) Exceptional Return Values: none

Conversion Functions
--------------------

 -- Function: int gsl_sf_polar_to_rect_impl (double r, double theta, gsl_sf_result * x, gsl_sf_result * y);
 -- Function: int gsl_sf_polar_to_rect_e (double r, double theta, gsl_sf_result * x, gsl_sf_result * y);
     Convert polar to rectlinear coordinates. Exceptional Return Values: GSL_ELOSS

 -- Function: int gsl_sf_rect_to_polar_impl (double x, double y, gsl_sf_result * r, gsl_sf_result * theta)
 -- Function: int gsl_sf_rect_to_polar_e (double x, double y, gsl_sf_result * r, gsl_sf_result * theta)
     Convert rectilinear to polar coordinates. Return argument in range [-pi, pi]. Exceptional Return Values: GSL_EDOM

Restriction Functions
---------------------

 -- Function: int gsl_sf_angle_restrict_symm_impl (double * theta);
 -- Function: int gsl_sf_angle_restrict_symm_e (double * theta);
     Force an angle to lie in the range (-pi,pi]. Exceptional Return Values: GSL_ELOSS

 -- Function: int gsl_sf_angle_restrict_pos_impl (double * theta);
 -- Function: int gsl_sf_angle_restrict_pos_e (double * theta);
     Force an angle to lie in the range [0, 2pi). Exceptional Return Values: GSL_ELOSS

 Trigonometric Functions With Error Estimate

 -- Function: int gsl_sf_sin_err_impl (double x, double dx, gsl_sf_result * result);
 -- Function: int gsl_sf_sin_err_e (double x, double dx, gsl_sf_result * result);

 -- Function: int gsl_sf_cos_err_impl (double x, double dx, gsl_sf_result * result);
 -- Function: int gsl_sf_cos_err_e (double x, double dx, gsl_sf_result * result);