Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r82657 - in trunk/boost/math/special_functions: . detail
From: john_at_[hidden]
Date: 2013-01-28 06:50:46


Author: johnmaddock
Date: 2013-01-28 06:50:45 EST (Mon, 28 Jan 2013)
New Revision: 82657
URL: http://svn.boost.org/trac/boost/changeset/82657

Log:
Fix misc. warning in bessel zero code.
Text files modified:
   trunk/boost/math/special_functions/bessel.hpp | 62 +++++++++------------------------------
   trunk/boost/math/special_functions/detail/bessel_jy_zero.hpp | 3 +
   2 files changed, 17 insertions(+), 48 deletions(-)

Modified: trunk/boost/math/special_functions/bessel.hpp
==============================================================================
--- trunk/boost/math/special_functions/bessel.hpp (original)
+++ trunk/boost/math/special_functions/bessel.hpp 2013-01-28 06:50:45 EST (Mon, 28 Jan 2013)
@@ -406,20 +406,6 @@
    return jvm;
 }
 
-template <class output_iterator, class T, class Policy>
-inline void cyl_bessel_j_zero_imp(output_iterator out_it,
- T v,
- unsigned number_of_zeros,
- unsigned start_index,
- const Policy& pol)
-{
- for(unsigned i = 0; i < number_of_zeros; ++i)
- {
- *out_it = boost::math::detail::cyl_bessel_j_zero_imp<T, Policy>(v, start_index + i, pol);
- ++out_it;
- }
-}
-
 template <class T, class Policy>
 inline T cyl_neumann_zero_imp(T v, unsigned m, const Policy& pol)
 {
@@ -457,20 +443,6 @@
    return yvm;
 }
 
-template <class output_iterator, class T, class Policy>
-inline void cyl_neumann_zero_imp(output_iterator out_it,
- T v,
- unsigned number_of_zeros,
- unsigned start_index,
- const Policy& pol)
-{
- for(unsigned i = 0; i < number_of_zeros; ++i)
- {
- *out_it = boost::math::detail::cyl_neumann_zero_imp<T, Policy>(v, start_index + i, pol);
- ++out_it;
- }
-}
-
 } // namespace detail
 
 template <class T1, class T2, class Policy>
@@ -590,11 +562,12 @@
                               unsigned start_index,
                               const Policy& pol)
 {
- BOOST_FPU_EXCEPTION_GUARD
- typedef typename detail::bessel_traits<T, T, Policy>::result_type result_type;
- typedef typename policies::evaluation<result_type, Policy>::type value_type;
- BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits<value_type>::is_integer, "Order must be a floating-point type.");
- detail::cyl_bessel_j_zero_imp<output_iterator, value_type, Policy>(out_it, v, number_of_zeros, start_index, pol);
+ BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits<T>::is_integer, "Order must be a floating-point type.");
+ for(unsigned i = 0; i < number_of_zeros; ++i)
+ {
+ *out_it = boost::math::cyl_bessel_j_zero(v, start_index + i, pol);
+ ++out_it;
+ }
 }
 
 template <class output_iterator, class T>
@@ -603,11 +576,7 @@
                               unsigned number_of_zeros,
                               unsigned start_index)
 {
- BOOST_FPU_EXCEPTION_GUARD
- typedef typename detail::bessel_traits<T, T, policies::policy<> >::result_type result_type;
- typedef typename policies::evaluation<result_type, policies::policy<> >::type value_type;
- BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits<value_type>::is_integer, "Order must be a floating-point type.");
- detail::cyl_bessel_j_zero_imp<output_iterator, value_type, policies::policy<> >(out_it, v, number_of_zeros, start_index, policies::policy<>());
+ return cyl_bessel_j_zero(out_it, v, number_of_zeros, start_index, policies::policy<>());
 }
 
 template <class T, class Policy>
@@ -634,11 +603,12 @@
                              unsigned start_index,
                              const Policy& pol)
 {
- BOOST_FPU_EXCEPTION_GUARD
- typedef typename detail::bessel_traits<T, T, Policy>::result_type result_type;
- typedef typename policies::evaluation<result_type, Policy>::type value_type;
- BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits<value_type>::is_integer, "Order must be a floating-point type.");
- detail::cyl_neumann_zero_imp<output_iterator, value_type, Policy>(out_it, v, number_of_zeros, start_index, pol);
+ BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits<T>::is_integer, "Order must be a floating-point type.");
+ for(unsigned i = 0; i < number_of_zeros; ++i)
+ {
+ *out_it = boost::math::cyl_neumann_zero(v, start_index + i, pol);
+ ++out_it;
+ }
 }
 
 template <class output_iterator, class T>
@@ -647,11 +617,7 @@
                              unsigned number_of_zeros,
                              unsigned start_index)
 {
- BOOST_FPU_EXCEPTION_GUARD
- typedef typename detail::bessel_traits<T, T, policies::policy<> >::result_type result_type;
- typedef typename policies::evaluation<result_type, policies::policy<> >::type value_type;
- BOOST_STATIC_ASSERT_MSG(false == std::numeric_limits<value_type>::is_integer, "Order must be a floating-point type.");
- detail::cyl_neumann_zero_imp<output_iterator, value_type, policies::policy<> >(out_it, v, number_of_zeros, start_index, policies::policy<>());
+ return cyl_neumann_zero(out_it, v, number_of_zeros, start_index, policies::policy<>());
 }
 
 } // namespace math

Modified: trunk/boost/math/special_functions/detail/bessel_jy_zero.hpp
==============================================================================
--- trunk/boost/math/special_functions/detail/bessel_jy_zero.hpp (original)
+++ trunk/boost/math/special_functions/detail/bessel_jy_zero.hpp 2013-01-28 06:50:45 EST (Mon, 28 Jan 2013)
@@ -83,6 +83,7 @@
         }
 
       private:
+ equation_as_9_3_39_and_its_derivative& operator = (const equation_as_9_3_39_and_its_derivative&);
         const T zeta;
       };
 
@@ -262,6 +263,7 @@
         private:
           const T my_v;
           const Policy& my_pol;
+ function_object& operator = (const function_object&);
         };
       } // namespace cyl_bessel_j_zero_detail
 
@@ -361,6 +363,7 @@
         private:
           const T my_v;
           const Policy& my_pol;
+ function_object* operator = (const function_object&);
         };
       } // namespace cyl_neumann_zero_detail
     } // namespace bessel_zero


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk