| [/ math.qbk |
| Copyright 2006 Hubert Holin and John Maddock. |
| Distributed under the Boost Software License, Version 1.0. |
| (See accompanying file LICENSE_1_0.txt or copy at |
| http://www.boost.org/LICENSE_1_0.txt). |
| ] |
| |
| [section:sinc Sinus Cardinal and Hyperbolic Sinus Cardinal Functions] |
| |
| [section:sinc_overview Sinus Cardinal and Hyperbolic Sinus Cardinal Functions Overview] |
| |
| The [@http://mathworld.wolfram.com/SincFunction.html Sinus Cardinal family of functions] |
| (indexed by the family of indices [^a > 0]) |
| is defined by |
| |
| [equation special_functions_blurb20] |
| |
| it sees heavy use in signal processing tasks. |
| |
| By analogy, the |
| [@http://mathworld.wolfram.com/SinhcFunction.htm Hyperbolic Sinus Cardinal] |
| family of functions |
| (also indexed by the family of indices [^a > 0]) is defined by |
| |
| [equation special_functions_blurb22] |
| |
| These two families of functions are composed of entire functions. |
| |
| These functions (__sinc_pi and __sinhc_pi) are needed by |
| [@http://www.boost.org/libs/math/quaternion/quaternion.html our implementation] |
| of [@http://mathworld.wolfram.com/Quaternion.html quaternions] |
| and [@http://mathworld.wolfram.com/Octonion.html octonions]. |
| |
| [: ['[*Sinus Cardinal of index pi (purple) and Hyperbolic Sinus Cardinal of index pi (red) on R]]] |
| [: [$../graphs/sinc_pi_and_sinhc_pi_on_r.png]] |
| |
| [endsect] |
| |
| [section sinc_pi] |
| |
| `` |
| #include <boost/math/special_functions/sinc.hpp> |
| `` |
| |
| template<class T> |
| ``__sf_result`` sinc_pi(const T x); |
| |
| template<class T, class ``__Policy``> |
| ``__sf_result`` sinc_pi(const T x, const ``__Policy``&); |
| |
| template<class T, template<typename> class U> |
| U<T> sinc_pi(const U<T> x); |
| |
| template<class T, template<typename> class U, class ``__Policy``> |
| U<T> sinc_pi(const U<T> x, const ``__Policy``&); |
| |
| Computes |
| [link math_toolkit.special.sinc.sinc_overview |
| the Sinus Cardinal] of x: |
| |
| sinc_pi(x) = sin(x) / x |
| |
| The second form is for complex numbers, |
| quaternions, octonions etc. Taylor series are used at the origin |
| to ensure accuracy. |
| |
| [graph sinc_pi] |
| |
| [optional_policy] |
| |
| [endsect] |
| |
| [section sinhc_pi] |
| |
| `` |
| #include <boost/math/special_functions/sinhc.hpp> |
| `` |
| |
| template<class T> |
| ``__sf_result`` sinhc_pi(const T x); |
| |
| template<class T, class ``__Policy``> |
| ``__sf_result`` sinhc_pi(const T x, const ``__Policy``&); |
| |
| template<typename T, template<typename> class U> |
| U<T> sinhc_pi(const U<T> x); |
| |
| template<class T, template<typename> class U, class ``__Policy``> |
| U<T> sinhc_pi(const U<T> x, const ``__Policy``&); |
| |
| Computes http://mathworld.wolfram.com/SinhcFunction.html |
| [link math_toolkit.special.sinc.sinc_overview |
| the Hyperbolic Sinus Cardinal] of x: |
| |
| sinhc_pi(x) = sinh(x) / x |
| |
| The second form is for |
| complex numbers, quaternions, octonions etc. Taylor series are used at the origin |
| to ensure accuracy. |
| |
| The return type of the first form is computed using the __arg_pomotion_rules |
| when T is an integer type. |
| |
| [optional_policy] |
| |
| [graph sinhc_pi] |
| |
| [endsect] |
| |
| [endsect] |