annotate DEPENDENCIES/generic/include/boost/multiprecision/detail/big_lanczos.hpp @ 16:2665513ce2d3

Add boost headers
author Chris Cannam
date Tue, 05 Aug 2014 11:11:38 +0100
parents
children c530137014c0
rev   line source
Chris@16 1
Chris@16 2 // Copyright (c) 2011 John Maddock
Chris@16 3 // Use, modification and distribution are subject to the
Chris@16 4 // Boost Software License, Version 1.0. (See accompanying file
Chris@16 5 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Chris@16 6
Chris@16 7 #ifndef BOOST_MP_BIG_LANCZOS
Chris@16 8 #define BOOST_MP_BIG_LANCZOS
Chris@16 9
Chris@16 10 #include <boost/math/bindings/detail/big_lanczos.hpp>
Chris@16 11
Chris@16 12 namespace boost{ namespace math{
Chris@16 13
Chris@16 14 namespace lanczos{
Chris@16 15
Chris@16 16 template <class T, class Policy>
Chris@16 17 struct lanczos;
Chris@16 18
Chris@16 19 template<class Backend, boost::multiprecision::expression_template_option ExpressionTemplates, class Policy>
Chris@16 20 struct lanczos<multiprecision::number<Backend, ExpressionTemplates>, Policy>
Chris@16 21 {
Chris@16 22 typedef typename boost::math::policies::precision<multiprecision::number<Backend, ExpressionTemplates>, Policy>::type precision_type;
Chris@16 23 typedef typename mpl::if_c<
Chris@16 24 precision_type::value <= 73,
Chris@16 25 lanczos13UDT,
Chris@16 26 typename mpl::if_c<
Chris@16 27 precision_type::value <= 122,
Chris@16 28 lanczos22UDT,
Chris@16 29 typename mpl::if_c<
Chris@16 30 precision_type::value <= 172,
Chris@16 31 lanczos31UDT,
Chris@16 32 typename mpl::if_c<
Chris@16 33 precision_type::value <= 372,
Chris@16 34 lanczos61UDT,
Chris@16 35 undefined_lanczos
Chris@16 36 >::type
Chris@16 37 >::type
Chris@16 38 >::type
Chris@16 39 >::type type;
Chris@16 40 };
Chris@16 41
Chris@16 42 } // namespace lanczos
Chris@16 43
Chris@16 44 }} // namespaces
Chris@16 45
Chris@16 46 #endif