00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef BOOST_NUMERIC_BINDINGS_AMOS_AMOS_OVERLOADS_HPP
00010 #define BOOST_NUMERIC_BINDINGS_AMOS_AMOS_OVERLOADS_HPP
00011
00012 #include <boost/numeric/bindings/amos/amos.h>
00013 #include <boost/numeric/bindings/traits/type.hpp>
00014 #include <boost/numeric/bindings/traits/type_traits.hpp>
00015
00016 namespace boost { namespace numeric { namespace bindings { namespace amos { namespace detail {
00017
00018 using namespace ::boost::numeric::bindings::traits ;
00019
00020
00021
00022
00023
00024
00025
00026
00027 inline
00028 void besi(const double& z, const double& fnu, const int& kode, const int& n, double* cy, int& nz, int& error)
00029 { AMOS_DBESI( &z, &fnu, &kode, &n, cy, &nz ) ; }
00030
00031 inline
00032 void besi(const complex_f& z, const float& fnu, const int& kode, const int& n, complex_f* cy, int & nz, int & error)
00033 { AMOS_CBESI( complex_ptr( &z ), &fnu, &kode, &n, complex_ptr( cy ), &nz, &error ) ; }
00034
00035
00036
00037
00038
00039
00040
00041
00042 inline
00043 void besj(const double& z, const double& fnu, const int& kode, const int& n, double* cy, int& nz, int& error)
00044 { AMOS_DBESJ( &z, &fnu, &n, cy, &nz ) ; }
00045
00046 inline
00047 void besj(const complex_f& z, const float& fnu, const int& kode, const int& n, complex_f* cy, int & nz, int & error)
00048 { AMOS_CBESJ( complex_ptr( &z ), &fnu, &kode, &n, complex_ptr( cy ), &nz, &error ) ; }
00049
00050
00051
00052
00053
00054
00055
00056 inline
00057 void besy(const double& z, const double& fnu, const int& kode, const int& n, double* cy, int& nz, double* wrk, int& error)
00058 { AMOS_DBESY( &z, &fnu, &n, cy ) ; }
00059
00060 }}}}}
00061
00062 #endif // BOOST_NUMERIC_BINDINGS_AMOS_AMOS_OVERLOADS_HPP