Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Struct template immediate_rolling_variance_impl

Boost , The Boost C++ Libraries BoostBook Documentation Subset , Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Struct template immediate_rolling_variance_impl

boost::accumulators::impl::immediate_rolling_variance_impl — Iterative calculation of the rolling variance.

Synopsis

// In header: <boost/accumulators/statistics/rolling_variance.hpp>
template<typename Sample> 
struct immediate_rolling_variance_impl : public accumulator_base {
  // types
  typedef numeric::functional::fdiv< Sample, std::size_t >::result_type result_type;
  // construct/copy/destruct
  template<typename Args> immediate_rolling_variance_impl(Args const &);
  // public member functions
  template<typename Args> void operator()(Args const &);
  template<typename Args> result_type result(Args const &) const;
  // private member functions
  template<typename T> 
    void prevent_underflow(T &, 
                           typename boost::enable_if< boost::is_arithmetic< T >, T >::type * = 0);
  template<typename T> 
    void prevent_underflow(T &, 
                           typename boost::disable_if< boost::is_arithmetic< T >, T >::type * = 0);
};

Description

Итерационный расчет дисперсии выборки выполняется следующим образом, см. также http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance. Для прокатного окна размера , для первых образцов дисперсия вычисляется по формуле

Equation 1.9. 


, где сумма квадратов может быть рекурсивно вычислена как:

Equation 1.10. 


и оценка выборки означает:

Equation 1.11. 


Для дальнейших выборок, когда прокатное окно полностью заполнено данными, необходимо учитывать, что самый старый образец выпадает из окна. Разница в выборке по окну теперь становится:

Equation 1.12. 


где сумма квадратов теперь равна:

Equation 1.13. 


и предполагаемое среднее значение:

Equation 1.14. 


Обратите внимание, что дисперсия выборки не определена для .

immediate_rolling_variance_impl public construct/copy/destruct

  1. template<typename Args>immediate_rolling_variance_impl(Argsconst& args;

immediate_rolling_variance_impl public member functions

  1. template<typename Args> voidоператор()const& args;
  2. templatetypename Args> result_type result(Args const ;const;

immediate_rolling_variance_impl private member functions

  1. templatetypename T> prevent_underflow & non_negative_number, non_negative_number,  non_negative_number,  non_negative_number,  non_negative_number,  boostenable_if<:2>boost:2>
  2. templatetypename T> prevent_underflow(T & non_arithmetic_quantity, non_arithmetic_quantity, non_arithmetic_quantity boostdisable_if <boost:2>

PrevUpHomeNext

Статья Struct template immediate_rolling_variance_impl раздела The Boost C++ Libraries BoostBook Documentation Subset Reference может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Reference ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 01:45:33/0.0056569576263428/1