20#ifndef CCGSL_SF_TRIG_HPP
21#define CCGSL_SF_TRIG_HPP
23#include<gsl/gsl_sf_trig.h>
41 inline double sin(
double const x ){
return gsl_sf_sin( x ); }
54 inline double cos(
double const x ){
return gsl_sf_cos( x ); }
63 return gsl_sf_hypot_e( x, y, &
result ); }
70 inline double hypot(
double const x,
double const y ){
return gsl_sf_hypot( x, y ); }
80 return gsl_sf_complex_sin_e( zr, zi, &szr, &szi ); }
90 return gsl_sf_complex_cos_e( zr, zi, &czr, &czi ); }
100 return gsl_sf_complex_logsin_e( zr, zi, &lszr, &lszi ); }
115 inline double sinc(
double const x ){
return gsl_sf_sinc( x ); }
130 inline double lnsinh(
double const x ){
return gsl_sf_lnsinh( x ); }
145 inline double lncosh(
double const x ){
return gsl_sf_lncosh( x ); }
155 return gsl_sf_polar_to_rect( r, theta, &x, &y ); }
165 return gsl_sf_rect_to_polar( x, y, &r, &theta ); }
175 return gsl_sf_sin_err_e( x, dx, &
result ); }
185 return gsl_sf_cos_err_e( x, dx, &
result ); }
194 return gsl_sf_angle_restrict_symm_e( theta ); }
202 inline int angle_restrict_symm_e( double& theta ){
203 return gsl_sf_angle_restrict_symm_e( &theta ); }
211 return gsl_sf_angle_restrict_symm( theta ); }
220 return gsl_sf_angle_restrict_pos_e( theta ); }
228 inline int angle_restrict_pos_e( double& theta ){
229 return gsl_sf_angle_restrict_pos_e( &theta ); }
237 return gsl_sf_angle_restrict_pos( theta ); }
245 return gsl_sf_angle_restrict_symm_err_e( theta, &
result ); }
253 return gsl_sf_angle_restrict_pos_err_e( theta, &
result ); }
double sin(double const x)
C++ version of gsl_sf_sin().
double lnsinh(double const x)
C++ version of gsl_sf_lnsinh().
int polar_to_rect(double const r, double const theta, result &x, result &y)
C++ version of gsl_sf_polar_to_rect().
int lnsinh_e(double const x, result &result)
C++ version of gsl_sf_lnsinh_e().
int cos_e(double x, result &result)
C++ version of gsl_sf_cos_e().
int rect_to_polar(double const x, double const y, result &r, result &theta)
C++ version of gsl_sf_rect_to_polar().
int complex_sin_e(double const zr, double const zi, result &szr, result &szi)
C++ version of gsl_sf_complex_sin_e().
int hypot_e(double const x, double const y, result &result)
C++ version of gsl_sf_hypot_e().
int angle_restrict_pos_e(double &theta)
C++ version of gsl_sf_angle_restrict_pos_e().
double cos(double const x)
C++ version of gsl_sf_cos().
int angle_restrict_symm_err_e(double const theta, result &result)
C++ version of gsl_sf_angle_restrict_symm_err_e().
double lncosh(double const x)
C++ version of gsl_sf_lncosh().
int cos_err_e(double const x, double const dx, result &result)
C++ version of gsl_sf_cos_err_e().
int sin_err_e(double const x, double const dx, result &result)
C++ version of gsl_sf_sin_err_e().
int angle_restrict_pos_err_e(double const theta, result &result)
C++ version of gsl_sf_angle_restrict_pos_err_e().
int complex_logsin_e(double const zr, double const zi, result &lszr, result &lszi)
C++ version of gsl_sf_complex_logsin_e().
double angle_restrict_symm(double const theta)
C++ version of gsl_sf_angle_restrict_symm().
int sin_e(double x, result &result)
C++ version of gsl_sf_sin_e().
double sinc(double const x)
C++ version of gsl_sf_sinc().
int angle_restrict_symm_e(double &theta)
C++ version of gsl_sf_angle_restrict_symm_e().
double hypot(double const x, double const y)
C++ version of gsl_sf_hypot().
int lncosh_e(double const x, result &result)
C++ version of gsl_sf_lncosh_e().
int complex_cos_e(double const zr, double const zi, result &czr, result &czi)
C++ version of gsl_sf_complex_cos_e().
double angle_restrict_pos(double const theta)
C++ version of gsl_sf_angle_restrict_pos().
int sinc_e(double x, result &result)
C++ version of gsl_sf_sinc_e().
gsl_sf_result result
Typedef for gsl_sf_result.
The gsl package creates an interface to the GNU Scientific Library for C++.