![]()  | 
![]() ![]() ![]() ![]()  | 
![]()  | 
Class template explicit_generic_rkBoost , Chapter 1. Boost.Numeric.Odeint , Header <boost/numeric/odeint/stepper/explicit_generic_rk.hpp>
  
  
   | |||||||||||||||||||||||||||||||||||||||||||||
![]()  | Home | Libraries | People | FAQ | More | 
boost::numeric::odeint::explicit_generic_rk — A generic implementation of explicit Runge-Kutta algorithms. This class is as a base class for all explicit Runge-Kutta steppers.
// In header: <boost/numeric/odeint/stepper/explicit_generic_rk.hpp> template<size_t StageCount, size_t Order, typename State, typename Value, typename Deriv, typename Time, typename Algebra, typename Operations, typename Resizer> class explicit_generic_rk : public explicit_stepper_base { public: // types typedef explicit_stepper_base< ... > stepper_base_type; typedef stepper_base_type::state_type state_type; typedef stepper_base_type::wrapped_state_type wrapped_state_type; typedef stepper_base_type::value_type value_type; typedef stepper_base_type::deriv_type deriv_type; typedef stepper_base_type::wrapped_deriv_type wrapped_deriv_type; typedef stepper_base_type::time_type time_type; typedef stepper_base_type::algebra_type algebra_type; typedef stepper_base_type::operations_type operations_type; typedef stepper_base_type::resizer_type resizer_type; typedef unspecified rk_algorithm_type; typedef rk_algorithm_type::coef_a_type coef_a_type; typedef rk_algorithm_type::coef_b_type coef_b_type; typedef rk_algorithm_type::coef_c_type coef_c_type; // construct/copy/destruct explicit_generic_rk(const coef_a_type &, const coef_b_type &, const coef_c_type &, const algebra_type & = algebra_type()); // public member functions template<typename System, typename StateIn, typename DerivIn, typename StateOut> void do_step_impl(System, const StateIn &, const DerivIn &, time_type, StateOut &, time_type); template<typename StateIn> void adjust_size(const StateIn &); // private member functions template<typename StateIn> bool resize_impl(const StateIn &); };
Этот класс реализует явные алгоритмы Рунге-Кутта без оценки ошибок общим способом. Таблица Мясника передается степперу, который строит степперную схему с помощью алгоритма шаблонного метапрограммирования. ToDo: Добавьте пример!
Этот класс получает эксплицитную_stepper_base, которая обеспечивает интерфейс Stepper.
size_tStageCount>Количество этапов алгоритма Рунге-Кутта.
size_tOrder>Порядок степпера.
typenameState>Тип, представляющий состояние ОДЭ.
typenameValue>Тип плавающей точки, используемый в вычислениях.
typenameDeriv>typenameTime>Тип, представляющий независимую переменную - время - ОДЭ.
typenameAlgebra>Тип алгебры.
typenameOperations>Тип операции.
typenameResizer>Тип политики резистора.
explicit_generic_rk
        public
       construct/copy/destructexplicit_generic_rk(constcoef_a_type&a,constcoef_b_type&b, constcoef_c_type&c, constalgebra_type&algebra=algebra_type());>Составляет<
explicit_generic_rk>класс. См. раздел примеров для подробной информации о коэффициентах.Копия алгебры сделана и хранится внутри эксплицитной_степной_базы.
Последний ряд таблицы мясника.
explicit_generic_rk public member functionstemplate<typenameSystem,typenameStateIn,typenameDerivIn, typenameStateOut> voiddo_step_impl(Systemsystem,constStateIn&in,constDerivIn&dxdt, time_typet,StateOut&out,time_typedt);>Этот метод выполняет один шаг. Производное<
dxdt>из<in>в момент<t>переходит к способу. Результат обновляется неуместно, следовательно, вход в<in>и выход в<out>. Доступ к этой функциональности шага обеспечивается по явному_stepper_base и<do_step_impl>не должен называться напрямую.Параметры:  | 
  | 
template<typenameStateIn>voidadjust_size(constStateIn&x);>Установите размер всех временных интервалов в степпере вручную.
 Статья Class template explicit_generic_rk раздела Chapter 1. Boost.Numeric.Odeint Header <boost/numeric/odeint/stepper/explicit_generic_rk.hpp> может быть полезна для разработчиков на c++ и boost. :: Главная :: Header <boost/numeric/odeint/stepper/explicit_generic_rk.hpp> :: 
  | 
|||||||
 ©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007  | |||||||