Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2024-11-15 09:19:57

0001 /*
0002  [auto_generated]
0003  boost/numeric/odeint/stepper/stepper_categories.hpp
0004 
0005  [begin_description]
0006  Definition of all stepper categories.
0007  [end_description]
0008 
0009  Copyright 2010-2011 Mario Mulansky
0010  Copyright 2010-2012 Karsten Ahnert
0011 
0012  Distributed under the Boost Software License, Version 1.0.
0013  (See accompanying file LICENSE_1_0.txt or
0014  copy at http://www.boost.org/LICENSE_1_0.txt)
0015  */
0016 
0017 
0018 #ifndef BOOST_NUMERIC_ODEINT_STEPPER_STEPPER_CATEGORIES_HPP_INCLUDED
0019 #define BOOST_NUMERIC_ODEINT_STEPPER_STEPPER_CATEGORIES_HPP_INCLUDED
0020 
0021 #include <boost/type_traits/integral_constant.hpp>
0022 
0023 namespace boost {
0024 namespace numeric {
0025 namespace odeint {
0026 
0027 
0028 /*
0029  * Tags to specify stepper types
0030  *
0031  * These tags are used by integrate() to choose which integration method is used
0032  */
0033 
0034 struct stepper_tag {};
0035 // struct explicit_stepper_tag : stepper_tag {};
0036 // struct implicit_stepper_tag : stepper_tag {};
0037 
0038 
0039 struct error_stepper_tag : stepper_tag {};
0040 struct explicit_error_stepper_tag : error_stepper_tag {};
0041 struct explicit_error_stepper_fsal_tag : error_stepper_tag {};
0042 
0043 struct controlled_stepper_tag {};
0044 struct explicit_controlled_stepper_tag : controlled_stepper_tag {};
0045 struct explicit_controlled_stepper_fsal_tag : controlled_stepper_tag {};
0046 
0047 struct dense_output_stepper_tag {};
0048 
0049 
0050 template< class tag > struct base_tag ;
0051 template< > struct base_tag< stepper_tag > { typedef stepper_tag type; };
0052 template< > struct base_tag< error_stepper_tag > { typedef stepper_tag type; };
0053 template< > struct base_tag< explicit_error_stepper_tag > { typedef stepper_tag type; };
0054 template< > struct base_tag< explicit_error_stepper_fsal_tag > { typedef stepper_tag type; };
0055 
0056 template< > struct base_tag< controlled_stepper_tag > { typedef controlled_stepper_tag type; };
0057 template< > struct base_tag< explicit_controlled_stepper_tag > { typedef controlled_stepper_tag type; };
0058 template< > struct base_tag< explicit_controlled_stepper_fsal_tag > { typedef controlled_stepper_tag type; };
0059 
0060 template< > struct base_tag< dense_output_stepper_tag > { typedef dense_output_stepper_tag type; };
0061 
0062 
0063 } // odeint
0064 } // numeric
0065 } // boost
0066 
0067 
0068 #endif // BOOST_NUMERIC_ODEINT_STEPPER_STEPPER_CATEGORIES_HPP_INCLUDED