diff options
Diffstat (limited to 'boost/accumulators/statistics/tail_mean.hpp')
-rw-r--r-- | boost/accumulators/statistics/tail_mean.hpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/boost/accumulators/statistics/tail_mean.hpp b/boost/accumulators/statistics/tail_mean.hpp index 323eeb0f91..67dae37b50 100644 --- a/boost/accumulators/statistics/tail_mean.hpp +++ b/boost/accumulators/statistics/tail_mean.hpp @@ -62,7 +62,7 @@ namespace impl struct coherent_tail_mean_impl : accumulator_base { - typedef typename numeric::functional::average<Sample, std::size_t>::result_type float_type; + typedef typename numeric::functional::fdiv<Sample, std::size_t>::result_type float_type; // for boost::result_of typedef float_type result_type; @@ -82,10 +82,10 @@ namespace impl extractor<tag::non_coherent_tail_mean<LeftRight> > const some_non_coherent_tail_mean = {}; return some_non_coherent_tail_mean(args) - + numeric::average(quantile(args), n) + + numeric::fdiv(quantile(args), n) * ( ( is_same<LeftRight, left>::value ) ? args[quantile_probability] : 1. - args[quantile_probability] - - numeric::average(n, count(args)) + - numeric::fdiv(n, count(args)) ); } }; @@ -117,7 +117,7 @@ namespace impl struct non_coherent_tail_mean_impl : accumulator_base { - typedef typename numeric::functional::average<Sample, std::size_t>::result_type float_type; + typedef typename numeric::functional::fdiv<Sample, std::size_t>::result_type float_type; // for boost::result_of typedef float_type result_type; @@ -136,7 +136,7 @@ namespace impl // If n is in a valid range, return result, otherwise return NaN or throw exception if (n <= static_cast<std::size_t>(tail(args).size())) - return numeric::average( + return numeric::fdiv( std::accumulate( tail(args).begin() , tail(args).begin() + n |