ccgsl 2.7.2
C++wrappersforGnuScientificLibrary
statistics_long_double.hpp
Go to the documentation of this file.
1/*
2 * $Id: statistics_long double.hpp 303 2013-10-28 07:48:23Z jdl3 $
3 * Copyright (C) 2012, 2015, 2019, 2020 John D Lamb
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or (at
8 * your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 */
19
20#ifndef CCGSL_STATISTICS_LONG_DOUBLE_HPP
21#define CCGSL_STATISTICS_LONG_DOUBLE_HPP
22#include<gsl/gsl_statistics_long_double.h>
23
24namespace gsl {
25 namespace stats {
26#ifndef DOXYGEN_SKIP
34 inline double long_double_mean( long double const data[], size_t const stride, size_t const n ){
35 return gsl_stats_long_double_mean( data, stride, n ); }
43 inline double long_double_variance( long double const data[], size_t const stride, size_t const n ){
44 return gsl_stats_long_double_variance( data, stride, n ); }
52 inline double long_double_sd( long double const data[], size_t const stride, size_t const n ){
53 return gsl_stats_long_double_sd( data, stride, n ); }
62 inline double long_double_variance_with_fixed_mean( long double const data[], size_t const stride,
63 size_t const n, double const mean ){
64 return gsl_stats_long_double_variance_with_fixed_mean( data, stride, n, mean ); }
73 inline double long_double_sd_with_fixed_mean( long double const data[], size_t const stride,
74 size_t const n, double const mean ){
75 return gsl_stats_long_double_sd_with_fixed_mean( data, stride, n, mean ); }
83 inline double long_double_tss( long double const data[], size_t const stride, size_t const n ){
84 return gsl_stats_long_double_tss( data, stride, n ); }
93 inline double long_double_tss_m( long double const data[], size_t const stride,
94 size_t const n, double const mean ){
95 return gsl_stats_long_double_tss_m( data, stride, n, mean ); }
103 inline double long_double_absdev( long double const data[], size_t const stride, size_t const n ){
104 return gsl_stats_long_double_absdev( data, stride, n ); }
112 inline double long_double_skew( long double const data[], size_t const stride, size_t const n ){
113 return gsl_stats_long_double_skew( data, stride, n ); }
121 inline double long_double_kurtosis( long double const data[], size_t const stride, size_t const n ){
122 return gsl_stats_long_double_kurtosis( data, stride, n ); }
130 inline double long_double_lag1_autocorrelation( long double const data[], size_t const stride, size_t const n ){
131 return gsl_stats_long_double_lag1_autocorrelation( data, stride, n ); }
141 inline double long_double_covariance( long double const data1[], size_t const stride1,
142 long double const data2[], size_t const stride2,
143 size_t const n ){
144 return gsl_stats_long_double_covariance( data1, stride1, data2, stride2, n ); }
154 inline double long_double_correlation( long double const data1[], size_t const stride1, long double const data2[],
155 size_t const stride2, size_t const n ){
156 return gsl_stats_long_double_correlation( data1, stride1, data2, stride2, n ); }
165 inline double long_double_variance_m( long double const data[], size_t const stride, size_t const n,
166 double const mean ){
167 return gsl_stats_long_double_variance_m( data, stride, n, mean ); }
176 inline double long_double_sd_m( long double const data[], size_t const stride, size_t const n,
177 double const mean ){
178 return gsl_stats_long_double_sd_m( data, stride, n, mean ); }
187 inline double long_double_absdev_m( long double const data[], size_t const stride, size_t const n,
188 double const mean ){
189 return gsl_stats_long_double_absdev_m( data, stride, n, mean ); }
199 inline double long_double_skew_m_sd( long double const data[], size_t const stride, size_t const n,
200 double const mean, double const sd ){
201 return gsl_stats_long_double_skew_m_sd( data, stride, n, mean, sd ); }
211 inline double long_double_kurtosis_m_sd( long double const data[], size_t const stride, size_t const n,
212 double const mean, double const sd ){
213 return gsl_stats_long_double_kurtosis_m_sd( data, stride, n, mean, sd ); }
222 inline double long_double_lag1_autocorrelation_m( long double const data[], size_t const stride,
223 size_t const n, double const mean ){
224 return gsl_stats_long_double_lag1_autocorrelation_m( data, stride, n, mean ); }
236 inline double long_double_covariance_m( long double const data1[], size_t const stride1,
237 long double const data2[], size_t const stride2,
238 size_t const n, double const mean1, double const mean2 ){
239 return gsl_stats_long_double_covariance_m( data1, stride1, data2, stride2, n, mean1, mean2 ); }
250 inline double long_double_pvariance( long double const data1[], size_t const stride1, size_t const n1,
251 long double const data2[], size_t const stride2, size_t const n2 ){
252 return gsl_stats_long_double_pvariance( data1, stride1, n1, data2, stride2, n2 ); }
264 inline double long_double_ttest( long double const data1[], size_t const stride1, size_t const n1,
265 long double const data2[], size_t const stride2, size_t const n2 ){
266 return gsl_stats_long_double_ttest( data1, stride1, n1, data2, stride2, n2 ); }
274 inline double long_double_max( long double const data[], size_t const stride, size_t const n ){
275 return gsl_stats_long_double_max( data, stride, n ); }
283 inline double long_double_min( long double const data[], size_t const stride, size_t const n ){
284 return gsl_stats_long_double_min( data, stride, n ); }
293 inline void long_double_minmax( long double* min, long double* max, long double const data[], size_t const stride,
294 size_t const n ){
295 gsl_stats_long_double_minmax( min, max, data, stride, n ); }
303 inline size_t long_double_max_index( long double const data[], size_t const stride, size_t const n ){
304 return gsl_stats_long_double_max_index( data, stride, n ); }
312 inline size_t long_double_min_index( long double const data[], size_t const stride, size_t const n ){
313 return gsl_stats_long_double_min_index( data, stride, n ); }
322 inline void long_double_minmax_index( size_t* min_index, size_t* max_index, long double const data[],
323 size_t const stride, size_t const n ){
324 gsl_stats_long_double_minmax_index( min_index, max_index, data, stride, n ); }
332 inline double long_double_median_from_sorted_data( long double const sorted_data[],
333 size_t const stride, size_t const n ){
334 return gsl_stats_long_double_median_from_sorted_data( sorted_data, stride, n ); }
343 inline double long_double_quantile_from_sorted_data( long double const sorted_data[], size_t const stride,
344 size_t const n, double const f ){
345 return gsl_stats_long_double_quantile_from_sorted_data( sorted_data, stride, n, f ); }
346
347 // Same functions but without stride parameters
348
355 inline double long_double_mean( long double const data[], size_t const n ){
356 return gsl_stats_long_double_mean( data, 1, n ); }
363 inline double long_double_variance( long double const data[], size_t const n ){
364 return gsl_stats_long_double_variance( data, 1, n ); }
371 inline double long_double_sd( long double const data[], size_t const n ){
372 return gsl_stats_long_double_sd( data, 1, n ); }
380 inline double long_double_variance_with_fixed_mean( long double const data[],
381 size_t const n, double const mean ){
382 return gsl_stats_long_double_variance_with_fixed_mean( data, 1, n, mean ); }
390 inline double long_double_sd_with_fixed_mean( long double const data[],
391 size_t const n, double const mean ){
392 return gsl_stats_long_double_sd_with_fixed_mean( data, 1, n, mean ); }
399 inline double long_double_tss( long double const data[], size_t const n ){
400 return gsl_stats_long_double_tss( data, 1, n ); }
408 inline double long_double_tss_m( long double const data[],
409 size_t const n, double const mean ){
410 return gsl_stats_long_double_tss_m( data, 1, n, mean ); }
417 inline double long_double_absdev( long double const data[], size_t const n ){
418 return gsl_stats_long_double_absdev( data, 1, n ); }
425 inline double long_double_skew( long double const data[], size_t const n ){
426 return gsl_stats_long_double_skew( data, 1, n ); }
433 inline double long_double_kurtosis( long double const data[], size_t const n ){
434 return gsl_stats_long_double_kurtosis( data, 1, n ); }
441 inline double long_double_lag1_autocorrelation( long double const data[], size_t const n ){
442 return gsl_stats_long_double_lag1_autocorrelation( data, 1, n ); }
450 inline double long_double_covariance( long double const data1[], long double const data2[], size_t const n ){
451 return gsl_stats_long_double_covariance( data1, 1, data2, 1, n ); }
459 inline double long_double_correlation( long double const data1[], long double const data2[], size_t const n ){
460 return gsl_stats_long_double_correlation( data1, 1, data2, 1, n ); }
468 inline double long_double_variance_m( long double const data[], size_t const n, double const mean ){
469 return gsl_stats_long_double_variance_m( data, 1, n, mean ); }
477 inline double long_double_sd_m( long double const data[], size_t const n, double const mean ){
478 return gsl_stats_long_double_sd_m( data, 1, n, mean ); }
486 inline double long_double_absdev_m( long double const data[], size_t const n, double const mean ){
487 return gsl_stats_long_double_absdev_m( data, 1, n, mean ); }
496 inline double long_double_skew_m_sd( long double const data[], size_t const n,
497 double const mean, double const sd ){
498 return gsl_stats_long_double_skew_m_sd( data, 1, n, mean, sd ); }
507 inline double long_double_kurtosis_m_sd( long double const data[], size_t const n,
508 double const mean, double const sd ){
509 return gsl_stats_long_double_kurtosis_m_sd( data, 1, n, mean, sd ); }
517 inline double long_double_lag1_autocorrelation_m( long double const data[],
518 size_t const n, double const mean ){
519 return gsl_stats_long_double_lag1_autocorrelation_m( data, 1, n, mean ); }
529 inline double long_double_covariance_m( long double const data1[], long double const data2[],
530 size_t const n, double const mean1, double const mean2 ){
531 return gsl_stats_long_double_covariance_m( data1, 1, data2, 1, n, mean1, mean2 ); }
541 inline long double long_double_wmean( long double const w[], size_t const wstride, long double const data[],
542 size_t const stride, size_t const n ){
543 return gsl_stats_long_double_wmean( w, wstride, data, stride, n ); }
553 inline long double long_double_wvariance( long double const w[], size_t const wstride, long double const data[],
554 size_t const stride, size_t const n ){
555 return gsl_stats_long_double_wvariance( w, wstride, data, stride, n ); }
565 inline long double long_double_wsd( long double const w[], size_t const wstride, long double const data[],
566 size_t const stride, size_t const n ){
567 return gsl_stats_long_double_wsd( w, wstride, data, stride, n ); }
578 inline long double long_double_wvariance_with_fixed_mean( long double const w[], size_t const wstride,
579 long double const data[], size_t const stride,
580 size_t const n, double const mean ){
581 return gsl_stats_long_double_wvariance_with_fixed_mean( w, wstride, data, stride, n, mean ); }
592 inline long double long_double_wsd_with_fixed_mean( long double const w[], size_t const wstride, long double const data[],
593 size_t const stride, size_t const n, double const mean ){
594 return gsl_stats_long_double_wsd_with_fixed_mean( w, wstride, data, stride, n, mean ); }
604 inline long double long_double_wtss( long double const w[], size_t const wstride, long double const data[],
605 size_t const stride, size_t const n ){
606 return gsl_stats_long_double_wtss( w, wstride, data, stride, n ); }
617 inline long double long_double_wtss_m( long double const w[], size_t const wstride, long double const data[],
618 size_t const stride, size_t const n, double const wmean ){
619 return gsl_stats_long_double_wtss_m( w, wstride, data, stride, n, wmean ); }
629 inline long double long_double_wabsdev( long double const w[], size_t const wstride, long double const data[],
630 size_t const stride, size_t const n ){
631 return gsl_stats_long_double_wabsdev( w, wstride, data, stride, n ); }
641 inline long double long_double_wskew( long double const w[], size_t const wstride, long double const data[],
642 size_t const stride, size_t const n ){
643 return gsl_stats_long_double_wskew( w, wstride, data, stride, n ); }
653 inline long double long_double_wkurtosis( long double const w[], size_t const wstride, long double const data[],
654 size_t const stride, size_t const n ){
655 return gsl_stats_long_double_wkurtosis( w, wstride, data, stride, n ); }
666 inline long double long_double_wvariance_m( long double const w[], size_t const wstride, long double const data[],
667 size_t const stride, size_t const n, double const wmean ){
668 return gsl_stats_long_double_wvariance_m( w, wstride, data, stride, n, wmean ); }
679 inline long double long_double_wsd_m( long double const w[], size_t const wstride, long double const data[],
680 size_t const stride, size_t const n, double const wmean ){
681 return gsl_stats_long_double_wsd_m( w, wstride, data, stride, n, wmean ); }
692 inline long double long_double_wabsdev_m( long double const w[], size_t const wstride, long double const data[],
693 size_t const stride, size_t const n, double const wmean ){
694 return gsl_stats_long_double_wabsdev_m( w, wstride, data, stride, n, wmean ); }
706 inline long double long_double_wskew_m_sd( long double const w[], size_t const wstride, long double const data[],
707 size_t const stride, size_t const n, double const wmean,
708 double const wsd ){
709 return gsl_stats_long_double_wskew_m_sd( w, wstride, data, stride, n, wmean, wsd ); }
721 inline long double long_double_wkurtosis_m_sd( long double const w[], size_t const wstride, long double const data[],
722 size_t const stride, size_t const n, double const wmean,
723 double const wsd ){
724 return gsl_stats_long_double_wkurtosis_m_sd( w, wstride, data, stride, n, wmean, wsd ); }
725
726 // versions without stride parameters
734 inline long double long_double_wmean( long double const w[], long double const data[],
735 size_t const n ){
736 return gsl_stats_long_double_wmean( w, 1, data, 1, n ); }
744 inline long double long_double_wvariance( long double const w[], long double const data[],
745 size_t const n ){
746 return gsl_stats_long_double_wvariance( w, 1, data, 1, n ); }
754 inline long double long_double_wsd( long double const w[], long double const data[],
755 size_t const n ){
756 return gsl_stats_long_double_wsd( w, 1, data, 1, n ); }
765 inline long double long_double_wvariance_with_fixed_mean( long double const w[],
766 long double const data[],
767 size_t const n, double const mean ){
768 return gsl_stats_long_double_wvariance_with_fixed_mean( w, 1, data, 1, n, mean ); }
777 inline long double long_double_wsd_with_fixed_mean( long double const w[], long double const data[],
778 size_t const n, double const mean ){
779 return gsl_stats_long_double_wsd_with_fixed_mean( w, 1, data, 1, n, mean ); }
787 inline long double long_double_wtss( long double const w[], long double const data[],
788 size_t const n ){
789 return gsl_stats_long_double_wtss( w, 1, data, 1, n ); }
798 inline long double long_double_wtss_m( long double const w[], long double const data[],
799 size_t const n, double const wmean ){
800 return gsl_stats_long_double_wtss_m( w, 1, data, 1, n, wmean ); }
808 inline long double long_double_wabsdev( long double const w[], long double const data[],
809 size_t const n ){
810 return gsl_stats_long_double_wabsdev( w, 1, data, 1, n ); }
818 inline long double long_double_wskew( long double const w[], long double const data[],
819 size_t const n ){
820 return gsl_stats_long_double_wskew( w, 1, data, 1, n ); }
828 inline long double long_double_wkurtosis( long double const w[], long double const data[],
829 size_t const n ){
830 return gsl_stats_long_double_wkurtosis( w, 1, data, 1, n ); }
839 inline long double long_double_wvariance_m( long double const w[], long double const data[],
840 size_t const n, double const wmean ){
841 return gsl_stats_long_double_wvariance_m( w, 1, data, 1, n, wmean ); }
850 inline long double long_double_wsd_m( long double const w[], long double const data[],
851 size_t const n, double const wmean ){
852 return gsl_stats_long_double_wsd_m( w, 1, data, 1, n, wmean ); }
861 inline long double long_double_wabsdev_m( long double const w[], long double const data[],
862 size_t const n, double const wmean ){
863 return gsl_stats_long_double_wabsdev_m( w, 1, data, 1, n, wmean ); }
873 inline long double long_double_wskew_m_sd( long double const w[], long double const data[],
874 size_t const n, double const wmean,
875 double const wsd ){
876 return gsl_stats_long_double_wskew_m_sd( w, 1, data, 1, n, wmean, wsd ); }
886 inline long double long_double_wkurtosis_m_sd( long double const w[], long double const data[],
887 size_t const n, double const wmean,
888 double const wsd ){
889 return gsl_stats_long_double_wkurtosis_m_sd( w, 1, data, 1, n, wmean, wsd ); }
898 inline double long_double_pvariance( long double const data1[], size_t const n1,
899 long double const data2[], size_t const n2 ){
900 return gsl_stats_long_double_pvariance( data1, 1, n1, data2, 1, n2 ); }
910 inline double long_double_ttest( long double const data1[], size_t const n1,
911 long double const data2[], size_t const n2 ){
912 return gsl_stats_long_double_ttest( data1, 1, n1, data2, 1, n2 ); }
919 inline double long_double_max( long double const data[], size_t const n ){
920 return gsl_stats_long_double_max( data, 1, n ); }
927 inline double long_double_min( long double const data[], size_t const n ){
928 return gsl_stats_long_double_min( data, 1, n ); }
936 inline void long_double_minmax( long double* min, long double* max, long double const data[],
937 size_t const n ){
938 gsl_stats_long_double_minmax( min, max, data, 1, n ); }
945 inline size_t long_double_max_index( long double const data[], size_t const n ){
946 return gsl_stats_long_double_max_index( data, 1, n ); }
953 inline size_t long_double_min_index( long double const data[], size_t const n ){
954 return gsl_stats_long_double_min_index( data, 1, n ); }
962 inline void long_double_minmax_index( size_t* min_index, size_t* max_index, long double const data[],
963 size_t const n ){
964 gsl_stats_long_double_minmax_index( min_index, max_index, data, 1, n ); }
971 inline double long_double_median_from_sorted_data( long double const sorted_data[],
972 size_t const n ){
973 return gsl_stats_long_double_median_from_sorted_data( sorted_data, 1, n ); }
981 inline double long_double_quantile_from_sorted_data( long double const sorted_data[],
982 size_t const n, double const f ){
983 return gsl_stats_long_double_quantile_from_sorted_data( sorted_data, 1, n, f ); }
984#endif // DOXYGEN_SKIP
985
986 // Generic versions of the same functions
987
994 template<typename T>
995 inline double long_double_mean( T const& data, size_t const stride = 1 ){
996 return gsl_stats_long_double_mean( data.data(), stride, data.size() / stride ); }
1003 template<typename T>
1004 inline double long_double_variance( T const& data, size_t const stride = 1 ){
1005 return gsl_stats_long_double_variance( data.data(), stride, data.size() / stride ); }
1012 template<typename T>
1013 inline double long_double_sd( T const& data, size_t const stride = 1 ){
1014 return gsl_stats_long_double_sd( data.data(), stride, data.size() / stride ); }
1022 template<typename T>
1023 inline double long_double_variance_with_fixed_mean( T const& data, size_t const stride,
1024 double const mean ){
1025 return gsl_stats_long_double_variance_with_fixed_mean( data.data(), stride, data.size() / stride, mean ); }
1032 template<typename T>
1033 inline double long_double_variance_with_fixed_mean( T const& data, double const mean ){
1034 return gsl_stats_long_double_variance_with_fixed_mean( data.data(), 1, data.size(), mean ); }
1042 template<typename T>
1043 inline double long_double_sd_with_fixed_mean( T const& data, size_t const stride,
1044 double const mean ){
1045 return gsl_stats_long_double_sd_with_fixed_mean( data.data(), stride, data.size() / stride, mean ); }
1052 template<typename T>
1053 inline double long_double_sd_with_fixed_mean( T const& data, double const mean ){
1054 return gsl_stats_long_double_sd_with_fixed_mean( data.data(), 1, data.size(), mean ); }
1061 template<typename T>
1062 inline double long_double_tss( T const& data, size_t const stride = 1 ){
1063 return gsl_stats_long_double_tss( data.data(), stride, data.size() / stride ); }
1071 template<typename T>
1072 inline double long_double_tss_m( T const& data, size_t const stride, double const mean ){
1073 return gsl_stats_long_double_tss_m( data.data(), stride, data.size() / stride, mean ); }
1080 template<typename T>
1081 inline double long_double_tss_m( T const& data, double const mean ){
1082 return gsl_stats_long_double_tss_m( data.data(), 1, data.size(), mean ); }
1089 template<typename T>
1090 inline double long_double_absdev( T const& data, size_t const stride = 1 ){
1091 return gsl_stats_long_double_absdev( data.data(), stride, data.size() / stride ); }
1098 template<typename T>
1099 inline double long_double_skew( T const& data, size_t const stride = 1 ){
1100 return gsl_stats_long_double_skew( data.data(), stride, data.size() / stride ); }
1107 template<typename T>
1108 inline double long_double_kurtosis( T const& data, size_t const stride = 1 ){
1109 return gsl_stats_long_double_kurtosis( data.data(), stride, data.size() / stride ); }
1116 template<typename T>
1117 inline double long_double_lag1_autocorrelation( T const& data, size_t const stride = 1 ){
1118 return gsl_stats_long_double_lag1_autocorrelation( data.data(), stride, data.size() / stride ); }
1127 template<typename T, typename U>
1128 inline double long_double_covariance( T const& data1, size_t const stride1,
1129 U const& data2, size_t const stride2 ){
1130 return gsl_stats_long_double_covariance( data1.data(), stride1, data2.data(), stride2, data1.size() / stride1 ); }
1137 template<typename T, typename U>
1138 inline double long_double_covariance( T const& data1, U const& data2 ){
1139 return gsl_stats_long_double_covariance( data1.data(), 1, data2.data(), 1, data1.size() ); }
1140
1149 template<typename U, typename T>
1150 inline double long_double_wmean( U const& w, size_t const wstride, T const& data,
1151 size_t const stride ){
1152 return gsl_stats_long_double_wmean( w.data(), wstride, data.data(), stride, data.size() / stride ); }
1161 template<typename U, typename T>
1162 inline double long_double_wvariance( U const& w, size_t const wstride, T const& data,
1163 size_t const stride ){
1164 return gsl_stats_long_double_wvariance( w.data(), wstride, data.data(), stride, data.size() / stride ); }
1173 template<typename U, typename T>
1174 inline double long_double_wsd( U const& w, size_t const wstride, T const& data,
1175 size_t const stride ){
1176 return gsl_stats_long_double_wsd( w.data(), wstride, data.data(), stride, data.size() / stride ); }
1186 template<typename U, typename T>
1187 inline double long_double_wvariance_with_fixed_mean( U const& w, size_t const wstride,
1188 T const& data, size_t const stride,
1189 double const mean ){
1190 return gsl_stats_long_double_wvariance_with_fixed_mean( w.data(), wstride, data.data(), stride,
1191 data.size() / stride, mean ); }
1201 template<typename U, typename T>
1202 inline double long_double_wsd_with_fixed_mean( U const& w, size_t const wstride, T const& data,
1203 size_t const stride, double const mean ){
1204 return gsl_stats_long_double_wsd_with_fixed_mean( w.data(), wstride, data.data(), stride,
1205 data.size() / stride, mean ); }
1214 template<typename U, typename T>
1215 inline double long_double_wtss( U const& w, size_t const wstride, T const& data,
1216 size_t const stride ){
1217 return gsl_stats_long_double_wtss( w.data(), wstride, data.data(), stride, data.size() / stride ); }
1227 template<typename U, typename T>
1228 inline double long_double_wtss_m( U const& w, size_t const wstride, T const& data,
1229 size_t const stride, double const wmean ){
1230 return gsl_stats_long_double_wtss_m( w.data(), wstride, data.data(), stride, data.size() / stride, wmean ); }
1239 template<typename U, typename T>
1240 inline double long_double_wabsdev( U const& w, size_t const wstride, T const& data,
1241 size_t const stride ){
1242 return gsl_stats_long_double_wabsdev( w.data(), wstride, data.data(), stride, data.size() / stride ); }
1251 template<typename U, typename T>
1252 inline double long_double_wskew( U const& w, size_t const wstride, T const& data,
1253 size_t const stride ){
1254 return gsl_stats_long_double_wskew( w.data(), wstride, data.data(), stride, data.size() / stride ); }
1263 template<typename U, typename T>
1264 inline double long_double_wkurtosis( U const& w, size_t const wstride, T const& data,
1265 size_t const stride ){
1266 return gsl_stats_long_double_wkurtosis( w.data(), wstride, data.data(), stride, data.size() / stride ); }
1276 template<typename U, typename T>
1277 inline double long_double_wvariance_m( U const& w, size_t const wstride, T const& data,
1278 size_t const stride, double const wmean ){
1279 return gsl_stats_long_double_wvariance_m( w.data(), wstride, data.data(), stride, data.size() / stride, wmean ); }
1289 template<typename U, typename T>
1290 inline double long_double_wsd_m( U const& w, size_t const wstride, T const& data,
1291 size_t const stride, double const wmean ){
1292 return gsl_stats_long_double_wsd_m( w.data(), wstride, data.data(), stride, data.size() / stride, wmean ); }
1302 template<typename U, typename T>
1303 inline double long_double_wabsdev_m( U const& w, size_t const wstride, T const& data,
1304 size_t const stride, double const wmean ){
1305 return gsl_stats_long_double_wabsdev_m( w.data(), wstride, data.data(), stride, data.size() / stride, wmean ); }
1316 template<typename U, typename T>
1317 inline double long_double_wskew_m_sd( U const& w, size_t const wstride, T const& data,
1318 size_t const stride, double const wmean,
1319 double const wsd ){
1320 return gsl_stats_long_double_wskew_m_sd( w.data(), wstride, data.data(), stride,
1321 data.size() / stride, wmean, wsd ); }
1332 template<typename U, typename T>
1333 inline double long_double_wkurtosis_m_sd( U const& w, size_t const wstride, T const& data,
1334 size_t const stride, double const wmean,
1335 double const wsd ){
1336 return gsl_stats_long_double_wkurtosis_m_sd( w.data(), wstride, data.data(), stride,
1337 data.size() / stride, wmean, wsd ); }
1338 /* stride-free versions */
1345 template<typename U, typename T>
1346 inline double long_double_wmean( U const& w, T const& data ){
1347 return gsl_stats_long_double_wmean( w.data(), 1, data.data(), 1, data.size() ); }
1354 template<typename U, typename T>
1355 inline double long_double_wvariance( U const& w, T const& data ){
1356 return gsl_stats_long_double_wvariance( w.data(), 1, data.data(), 1, data.size() ); }
1363 template<typename U, typename T>
1364 inline double long_double_wsd( U const& w, T const& data ){
1365 return gsl_stats_long_double_wsd( w.data(), 1, data.data(), 1, data.size() ); }
1373 template<typename U, typename T>
1374 inline double long_double_wvariance_with_fixed_mean( U const& w, T const& data, double const mean ){
1375 return gsl_stats_long_double_wvariance_with_fixed_mean( w.data(), 1, data.data(), 1,
1376 data.size(), mean ); }
1384 template<typename U, typename T>
1385 inline double long_double_wsd_with_fixed_mean( U const& w, T const& data, double const mean ){
1386 return gsl_stats_long_double_wsd_with_fixed_mean( w.data(), 1, data.data(), 1,
1387 data.size(), mean ); }
1394 template<typename U, typename T>
1395 inline double long_double_wtss( U const& w, T const& data ){
1396 return gsl_stats_long_double_wtss( w.data(), 1, data.data(), 1, data.size() ); }
1404 template<typename U, typename T>
1405 inline double long_double_wtss_m( U const& w, T const& data, double const wmean ){
1406 return gsl_stats_long_double_wtss_m( w.data(), 1, data.data(), 1, data.size(), wmean ); }
1413 template<typename U, typename T>
1414 inline double long_double_wabsdev( U const& w, T const& data ){
1415 return gsl_stats_long_double_wabsdev( w.data(), 1, data.data(), 1, data.size() ); }
1422 template<typename U, typename T>
1423 inline double long_double_wskew( U const& w, T const& data ){
1424 return gsl_stats_long_double_wskew( w.data(), 1, data.data(), 1, data.size() ); }
1431 template<typename U, typename T>
1432 inline double long_double_wkurtosis( U const& w, T const& data ){
1433 return gsl_stats_long_double_wkurtosis( w.data(), 1, data.data(), 1, data.size() ); }
1441 template<typename U, typename T>
1442 inline double long_double_wvariance_m( U const& w, T const& data, double const wmean ){
1443 return gsl_stats_long_double_wvariance_m( w.data(), 1, data.data(), 1, data.size(), wmean ); }
1451 template<typename U, typename T>
1452 inline double long_double_wsd_m( U const& w, T const& data, double const wmean ){
1453 return gsl_stats_long_double_wsd_m( w.data(), 1, data.data(), 1, data.size(), wmean ); }
1461 template<typename U, typename T>
1462 inline double long_double_wabsdev_m( U const& w, T const& data, double const wmean ){
1463 return gsl_stats_long_double_wabsdev_m( w.data(), 1, data.data(), 1, data.size(), wmean ); }
1472 template<typename U, typename T>
1473 inline double long_double_wskew_m_sd( U const& w, T const& data, double const wmean, double const wsd ){
1474 return gsl_stats_long_double_wskew_m_sd( w.data(), 1, data.data(), 1, data.size(), wmean, wsd ); }
1483 template<typename U, typename T>
1484 inline double long_double_wkurtosis_m_sd( U const& w, T const& data, double const wmean, double const wsd ){
1485 return gsl_stats_long_double_wkurtosis_m_sd( w.data(), 1, data.data(), 1, data.size(), wmean, wsd ); }
1486 /* end of weighted functions */
1487
1496 template<typename T, typename U>
1497 inline double long_double_correlation( T const& data1, size_t const stride1, U const& data2,
1498 size_t const stride2 ){
1499 return gsl_stats_long_double_correlation( data1.data(), stride1, data2.data(), stride2, data1.size() / stride1 ); }
1506 template<typename T, typename U>
1507 inline double long_double_correlation( T const& data1, U const& data2 ){
1508 return gsl_stats_long_double_correlation( data1.data(), 1, data2.data(), 1, data1.size() ); }
1516 template<typename T>
1517 inline double long_double_variance_m( T const& data, size_t const stride, double const mean ){
1518 return gsl_stats_long_double_variance_m( data.data(), stride, data.size() / stride, mean ); }
1525 template<typename T>
1526 inline double long_double_variance_m( T const& data, double const mean ){
1527 return gsl_stats_long_double_variance_m( data.data(), 1, data.size(), mean ); }
1535 template<typename T>
1536 inline double long_double_sd_m( T const& data, size_t const stride, double const mean ){
1537 return gsl_stats_long_double_sd_m( data.data(), stride, data.size() / stride, mean ); }
1544 template<typename T>
1545 inline double long_double_sd_m( T const& data, double const mean ){
1546 return gsl_stats_long_double_sd_m( data.data(), 1, data.size(), mean ); }
1554 template<typename T>
1555 inline double long_double_absdev_m( T const& data, size_t const stride, double const mean ){
1556 return gsl_stats_long_double_absdev_m( data.data(), stride, data.size() / stride, mean ); }
1563 template<typename T>
1564 inline double long_double_absdev_m( T const& data, double const mean ){
1565 return gsl_stats_long_double_absdev_m( data.data(), 1, data.size(), mean ); }
1574 template<typename T>
1575 inline double long_double_skew_m_sd( T const& data, size_t const stride,
1576 double const mean, double const sd ){
1577 return gsl_stats_long_double_skew_m_sd( data.data(), stride, data.size() / stride, mean, sd ); }
1585 template<typename T>
1586 inline double long_double_skew_m_sd( T const& data, double const mean, double const sd ){
1587 return gsl_stats_long_double_skew_m_sd( data.data(), 1, data.size(), mean, sd ); }
1596 template<typename T>
1597 inline double long_double_kurtosis_m_sd( T const& data, size_t const stride,
1598 double const mean, double const sd ){
1599 return gsl_stats_long_double_kurtosis_m_sd( data.data(), stride, data.size() / stride, mean, sd ); }
1607 template<typename T>
1608 inline double long_double_kurtosis_m_sd( T const& data, double const mean, double const sd ){
1609 return gsl_stats_long_double_kurtosis_m_sd( data.data(), 1, data.size(), mean, sd ); }
1617 template<typename T>
1618 inline double long_double_lag1_autocorrelation_m( T const& data, size_t const stride,
1619 double const mean ){
1620 return gsl_stats_long_double_lag1_autocorrelation_m( data.data(), stride, data.size() / stride, mean ); }
1627 template<typename T>
1628 inline double long_double_lag1_autocorrelation_m( T const& data, double const mean ){
1629 return gsl_stats_long_double_lag1_autocorrelation_m( data.data(), 1, data.size(), mean ); }
1640 template<typename T, typename U>
1641 inline double long_double_covariance_m( T const& data1, size_t const stride1,
1642 U const& data2, size_t const stride2,
1643 double const mean1, double const mean2 ){
1644 return gsl_stats_long_double_covariance_m( data1.data(), stride1, data2.data(), stride2, data1.size() / stride1,
1645 mean1, mean2 ); }
1654 template<typename T>
1655 inline double long_double_covariance_m( T const& data1, T const& data2,
1656 double const mean1, double const mean2 ){
1657 return gsl_stats_long_double_covariance_m( data1.data(), 1, data2.data(), 1, data1.size(),
1658 mean1, mean2 ); }
1667 template<typename T, typename U>
1668 inline double long_double_pvariance( T const& data1, size_t const stride1,
1669 U const& data2, size_t const stride2 ){
1670 return gsl_stats_long_double_pvariance( data1.data(), stride1, data1.size() / stride1, data2.data(),
1671 stride2, data2.size() / stride2 ); }
1681 template<typename T, typename U>
1682 inline double long_double_ttest( T const& data1, size_t const stride1,
1683 U const& data2, size_t const stride2 ){
1684 return gsl_stats_long_double_ttest( data1.data(), stride1, data1.size() / stride1,
1685 data2.data(), stride2, data2.size() / stride2 ); }
1692 template<typename T>
1693 inline double long_double_max( T const& data, size_t const stride = 1 ){
1694 return gsl_stats_long_double_max( data.data(), stride, data.size() / stride ); }
1701 template<typename T>
1702 inline double long_double_min( T const& data, size_t const stride = 1 ){
1703 return gsl_stats_long_double_min( data.data(), stride, data.size() / stride ); }
1711 template<typename T>
1712 inline void long_double_minmax( long double& min, long double& max, T const& data, size_t const stride = 1 ){
1713 gsl_stats_long_double_minmax( &min, &max, data.data(), stride, data.size() / stride ); }
1720 template<typename T>
1721 inline size_t long_double_max_index( T const& data, size_t const stride = 1 ){
1722 return gsl_stats_long_double_max_index( data.data(), stride, data.size() / stride ); }
1729 template<typename T>
1730 inline size_t long_double_min_index( T const& data, size_t const stride = 1 ){
1731 return gsl_stats_long_double_min_index( data.data(), stride, data.size() / stride ); }
1739 template<typename T>
1740 inline void long_double_minmax_index( size_t& min_index, size_t& max_index, T const& data,
1741 size_t const stride = 1 ){
1742 gsl_stats_long_double_minmax_index( &min_index, &max_index, data.data(), stride, data.size() / stride ); }
1749 template<typename T>
1750 inline double long_double_median_from_sorted_data( T const& sorted_data, size_t const stride = 1 ){
1751 return gsl_stats_long_double_median_from_sorted_data( sorted_data.data(), stride, sorted_data.size() / stride ); }
1759 template<typename T>
1760 inline double long_double_quantile_from_sorted_data( T const& sorted_data, size_t const stride,
1761 double const f ){
1762 return gsl_stats_long_double_quantile_from_sorted_data( sorted_data.data(), stride,
1763 sorted_data.size() / stride, f ); }
1764 /* stride-free versions */
1771 template<typename T, typename U>
1772 inline double long_double_pvariance( T const& data1, U const& data2 ){
1773 return gsl_stats_long_double_pvariance( data1.data(), 1, data1.size(), data2.data(), 1, data1.size() ); }
1781 template<typename T, typename U>
1782 inline double long_double_ttest( T const& data1, U const& data2 ){
1783 return gsl_stats_long_double_ttest( data1.data(), 1, data1.size(), data2.data(), 1, data1.size() ); }
1790 template<typename T>
1791 inline double long_double_quantile_from_sorted_data( T const& sorted_data, double const f ){
1792 return gsl_stats_long_double_quantile_from_sorted_data( sorted_data.data(), 1, sorted_data.size(), f ); }
1793#ifndef DOXYGEN_SKIP
1806 inline double long_double_spearman( long double const data1[], size_t const stride1,
1807 long double const data2[], size_t const stride2,
1808 size_t const n, double work[] ){
1809 if( 0 != work )
1810 return gsl_stats_long_double_spearman( data1, stride1, data2, stride2, n, work );
1811 // create workspace
1812 double* workspace = new double[2 * n];
1813 double result = gsl_stats_long_double_spearman( data1, stride1, data2, stride2, n, workspace );
1814 delete[] workspace;
1815 return result;
1816 }
1827 inline double long_double_spearman( long double const data1[], long double const data2[],
1828 size_t const n, double work[] ){
1829 if( 0 != work )
1830 return gsl_stats_long_double_spearman( data1, 1, data2, 1, n, work );
1831 // create workspace
1832 double* workspace = new double[2 * n];
1833 double result = gsl_stats_long_double_spearman( data1, 1, data2, 1, n, workspace );
1834 delete[] workspace;
1835 return result;
1836 }
1837#endif // DOXYGEN_SKIP
1849 template<typename T, typename U>
1850 inline double long_double_spearman( T const& data1, size_t const stride1,
1851 U const& data2, size_t const stride2,
1852 double work[] ){
1853 if( 0 != work )
1854 return gsl_stats_long_double_spearman( data1.data(), stride1, data2.data(), stride2,
1855 data1.size() / stride1, work );
1856 // create workspace
1857 double* workspace = new double[2 * data1.size() / stride1];
1858 double result = gsl_stats_long_double_spearman( data1.data(), stride1, data2.data(), stride2,
1859 data1.size() / stride1, workspace );
1860 delete[] workspace;
1861 return result;
1862 }
1872 template<typename T, typename U>
1873 inline double long_double_spearman( T const& data1, U const& data2, double work[] ){
1874 if( 0 != work )
1875 return gsl_stats_long_double_spearman( data1, 1, data2, 1, data1.size(), work );
1876 // create workspace
1877 double* workspace = new double[2 * data1.size()];
1878 double result = gsl_stats_long_double_spearman( data1, 1, data2, 1, data1.size(), workspace );
1879 delete[] workspace;
1880 return result;
1881 }
1882
1889 template<typename T>
1890 inline double long_double_median( T& data, size_t const stride=1 ){
1891 return gsl_stats_long_double_median( data.data(), stride, data.size() ); }
1899 template<typename T>
1900 double long_double_trmean_from_sorted_data( double const trim, T const& sorted_data,
1901 size_t const stride=1 ){
1902 return gsl_stats_long_double_trmean_from_sorted_data( trim, sorted_data.data(), stride,
1903 sorted_data.size() ); }
1910 template<typename T>
1911 double long_double_gastwirth_from_sorted_data( T const& sorted_data, size_t const stride=1 ){
1912 return gsl_stats_long_double_gastwirth_from_sorted_data( sorted_data.data(), stride,
1913 sorted_data.size() ); }
1921 template<typename T,typename U>
1922 double long_double_mad0( T const& data, size_t const stride, U& work ){
1923 size_t const n = data.size();
1924 if( work.size() != n ){
1925 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
1927 throw( e );
1928 }
1929 return gsl_stats_long_double_mad0( data.data(), stride, n, work.data() ); }
1937 template<typename T,typename U>
1938 double long_double_mad( T const& data, size_t const stride, U& work ){
1939 size_t const n = data.size();
1940 if( work.size() != n ){
1941 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
1943 throw( e );
1944 }
1945 return gsl_stats_long_double_mad( data.data(), stride, n, work.data() );
1946 }
1954 template<typename T,typename U>
1955 double long_double_Sn0_from_sorted_data( T const& sorted_data, size_t const stride, U& work ){
1956 size_t const n = sorted_data.size();
1957 if( work.size() != n ){
1958 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
1960 throw( e );
1961 }
1962 return gsl_stats_long_double_Sn0_from_sorted_data( sorted_data.data(), stride, n, work.data() ); }
1970 template<typename T,typename U>
1971 double long_double_Sn_from_sorted_data( T const& sorted_data, size_t const stride, U& work ){
1972 size_t const n = sorted_data.size();
1973 if( work.size() != n ){
1974 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
1976 throw( e );
1977 }
1978 return gsl_stats_long_double_Sn_from_sorted_data( sorted_data.data(), stride, n, work.data() ); }
1987 template<typename T,typename U,typename V>
1988 double long_double_Qn0_from_sorted_data( T const& sorted_data, size_t const stride,
1989 U& work, V& work_int ){
1990 size_t const n = sorted_data.size();
1991 if( work.size() != 3*n ){
1992 gsl::exception e( "work must be 3 × length of data", __FILE__, __LINE__,
1994 throw( e );
1995 }
1996 if( work_int.size() != 5*n ){
1997 gsl::exception e( "work_int must be 5 × length of data", __FILE__, __LINE__,
1999 throw( e );
2000 }
2001 return gsl_stats_long_double_Qn0_from_sorted_data( sorted_data.data(), stride, n, work.data(),
2002 work_int.data() ); }
2011 template<typename T,typename U,typename V>
2012 double long_double_Qn_from_sorted_data( T const& sorted_data, size_t const stride,
2013 U& work, V& work_int ){
2014 size_t const n = sorted_data.size();
2015 if( work.size() != 3*n ){
2016 gsl::exception e( "work must be 3 × length of data", __FILE__, __LINE__,
2018 throw( e );
2019 }
2020 if( work_int.size() != 5*n ){
2021 gsl::exception e( "work_int must be 5 × length of data", __FILE__, __LINE__,
2023 throw( e );
2024 }
2025 return gsl_stats_long_double_Qn_from_sorted_data( sorted_data.data(), stride, n, work.data(),
2026 work_int.data() ); }
2027 /* stride-free versions */
2034 template<typename T,typename U>
2035 double long_double_mad0( T const& data, U& work ){
2036 size_t const n = data.size();
2037 if( work.size() != n ){
2038 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
2040 throw( e );
2041 }
2042 return gsl_stats_long_double_mad0( data.data(), 1, n, work.data() ); }
2049 template<typename T,typename U>
2050 double long_double_mad( T const& data, U& work ){
2051 size_t const n = data.size();
2052 if( work.size() != n ){
2053 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
2055 throw( e );
2056 }
2057 return gsl_stats_long_double_mad( data.data(), 1, n, work.data() );
2058 }
2065 template<typename T,typename U>
2066 double long_double_Sn0_from_sorted_data( T const& sorted_data, U& work ){
2067 size_t const n = sorted_data.size();
2068 if( work.size() != n ){
2069 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
2071 throw( e );
2072 }
2073 return gsl_stats_long_double_Sn0_from_sorted_data( sorted_data.data(), 1, n, work.data() ); }
2080 template<typename T,typename U>
2081 double long_double_Sn_from_sorted_data( T const& sorted_data, U& work ){
2082 size_t const n = sorted_data.size();
2083 if( work.size() != n ){
2084 gsl::exception e( "work and data must have same length", __FILE__, __LINE__,
2086 throw( e );
2087 }
2088 return gsl_stats_long_double_Sn_from_sorted_data( sorted_data.data(), 1, n, work.data() ); }
2096 template<typename T,typename U,typename V>
2097 double long_double_Qn0_from_sorted_data( T const& sorted_data, U& work, V& work_int ){
2098 size_t const n = sorted_data.size();
2099 if( work.size() != 3*n ){
2100 gsl::exception e( "work must be 3 × length of data", __FILE__, __LINE__,
2102 throw( e );
2103 }
2104 if( work_int.size() != 5*n ){
2105 gsl::exception e( "work_int must be 5 × length of data", __FILE__, __LINE__,
2107 throw( e );
2108 }
2109 return gsl_stats_long_double_Qn0_from_sorted_data( sorted_data.data(), 1, n, work.data(),
2110 work_int.data() ); }
2118 template<typename T,typename U,typename V>
2119 double long_double_Qn_from_sorted_data( T const& sorted_data, U& work, V& work_int ){
2120 size_t const n = sorted_data.size();
2121 if( work.size() != 3*n ){
2122 gsl::exception e( "work must be 3 × length of data", __FILE__, __LINE__,
2124 throw( e );
2125 }
2126 if( work_int.size() != 5*n ){
2127 gsl::exception e( "work_int must be 5 × length of data", __FILE__, __LINE__,
2129 throw( e );
2130 }
2131 return gsl_stats_long_double_Qn_from_sorted_data( sorted_data.data(), 1, n, work.data(),
2132 work_int.data() ); }
2133
2134
2135 }
2136}
2137#endif
This class is used to handle gsl exceptions so that gsl can use these rather than the GSL error handl...
Definition: exception.hpp:387
@ GSL_EBADLEN
matrix, vector lengths are not conformant
Definition: exception.hpp:490
size_t n(workspace const &w)
C++ version of gsl_rstat_n().
Definition: rstat.hpp:299
gsl_sf_result result
Typedef for gsl_sf_result.
Definition: sf_result.hpp:30
double long_double_trmean_from_sorted_data(double const trim, T const &sorted_data, size_t const stride=1)
C++ version of gsl_stats_double_long_double_trmean_from_sorted_data().
double min(T const &data, size_t const stride=1)
C++ version of gsl_stats_min().
double long_double_wsd(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_long_double_wsd().
double max(T const &data, size_t const stride=1)
C++ version of gsl_stats_max().
double wmean(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_wmean().
double long_double_sd(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_sd().
double long_double_lag1_autocorrelation(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_lag1_autocorrelation().
double long_double_wskew_m_sd(U const &w, size_t const wstride, T const &data, size_t const stride, double const wmean, double const wsd)
C++ version of gsl_stats_long_double_wskew_m_sd().
double long_double_kurtosis_m_sd(T const &data, size_t const stride, double const mean, double const sd)
C++ version of gsl_stats_long_double_kurtosis_m_sd().
double long_double_wsd_with_fixed_mean(U const &w, size_t const wstride, T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_wsd_with_fixed_mean().
double long_double_absdev_m(T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_absdev_m().
void long_double_minmax_index(size_t &min_index, size_t &max_index, T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_minmax_index().
double long_double_mad(T const &data, size_t const stride, U &work)
C++ version of gsl_stats_long_double_mad().
double wsd(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_wsd().
double long_double_wskew(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_long_double_wskew().
double long_double_tss_m(T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_tss_m().
double long_double_wvariance(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_long_double_wvariance().
double long_double_wvariance_m(U const &w, size_t const wstride, T const &data, size_t const stride, double const wmean)
C++ version of gsl_stats_long_double_wvariance_m().
double long_double_wtss(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_long_double_wtss().
size_t long_double_max_index(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_max_index().
double long_double_lag1_autocorrelation_m(T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_lag1_autocorrelation_m().
double long_double_wkurtosis_m_sd(U const &w, size_t const wstride, T const &data, size_t const stride, double const wmean, double const wsd)
C++ version of gsl_stats_long_double_wkurtosis_m_sd().
double long_double_wabsdev_m(U const &w, size_t const wstride, T const &data, size_t const stride, double const wmean)
C++ version of gsl_stats_long_double_wabsdev_m().
double long_double_gastwirth_from_sorted_data(T const &sorted_data, size_t const stride=1)
C++ version of gsl_stats_long_double_gastwirth_from_sorted_data().
double long_double_correlation(T const &data1, size_t const stride1, U const &data2, size_t const stride2)
C++ version of gsl_stats_long_double_correlation().
double long_double_sd_m(T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_sd_m().
double long_double_skew_m_sd(T const &data, size_t const stride, double const mean, double const sd)
C++ version of gsl_stats_long_double_skew_m_sd().
double long_double_ttest(T const &data1, size_t const stride1, U const &data2, size_t const stride2)
C++ version of gsl_stats_long_double_ttest().
double long_double_max(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_max().
double long_double_sd_with_fixed_mean(T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_sd_with_fixed_mean().
double long_double_wkurtosis(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_long_double_wkurtosis().
double long_double_kurtosis(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_kurtosis().
double long_double_wtss_m(U const &w, size_t const wstride, T const &data, size_t const stride, double const wmean)
C++ version of gsl_stats_long_double_wtss_m().
double long_double_covariance_m(T const &data1, size_t const stride1, U const &data2, size_t const stride2, double const mean1, double const mean2)
C++ version of gsl_stats_long_double_covariance_m().
double long_double_Qn0_from_sorted_data(T const &sorted_data, size_t const stride, U &work, V &work_int)
C++ version of gsl_stats_long_double_Qn0_from_sorted_data().
double long_double_skew(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_skew().
double long_double_Sn0_from_sorted_data(T const &sorted_data, size_t const stride, U &work)
C++ version of gsl_stats_long_double_Sn0_from_sorted_data().
double long_double_wvariance_with_fixed_mean(U const &w, size_t const wstride, T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_wvariance_with_fixed_mean().
double long_double_variance_m(T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_variance_m().
size_t long_double_min_index(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_min_index().
double long_double_variance_with_fixed_mean(T const &data, size_t const stride, double const mean)
C++ version of gsl_stats_long_double_variance_with_fixed_mean().
double long_double_absdev(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_absdev().
double long_double_wabsdev(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_long_double_wabsdev().
double long_double_tss(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_tss().
double mean(T const &data, size_t const stride=1)
C++ version of gsl_stats_mean().
void long_double_minmax(long double &min, long double &max, T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_minmax().
double long_double_covariance(T const &data1, size_t const stride1, U const &data2, size_t const stride2)
C++ version of gsl_stats_long_double_covariance().
double long_double_median(T &data, size_t const stride=1)
C++ version of gsl_stats_double_long_double_median().
double long_double_Qn_from_sorted_data(T const &sorted_data, size_t const stride, U &work, V &work_int)
C++ version of gsl_stats_long_double_Qn_from_sorted_data().
double long_double_spearman(T const &data1, size_t const stride1, U const &data2, size_t const stride2, double work[])
C++ version of gsl_stats_long_double_spearman().
double long_double_min(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_min().
double long_double_mad0(T const &data, size_t const stride, U &work)
C++ version of gsl_stats_long_double_mad0().
double long_double_mean(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_mean().
double long_double_wsd_m(U const &w, size_t const wstride, T const &data, size_t const stride, double const wmean)
C++ version of gsl_stats_long_double_wsd_m().
double long_double_Sn_from_sorted_data(T const &sorted_data, size_t const stride, U &work)
C++ version of gsl_stats_long_double_Sn_from_sorted_data().
double sd(T const &data, size_t const stride=1)
C++ version of gsl_stats_sd().
double long_double_median_from_sorted_data(T const &sorted_data, size_t const stride=1)
C++ version of gsl_stats_long_double_median_from_sorted_data().
double long_double_pvariance(T const &data1, size_t const stride1, U const &data2, size_t const stride2)
C++ version of gsl_stats_long_double_pvariance().
size_t min_index(T const &data, size_t const stride=1)
C++ version of gsl_stats_min_index().
size_t max_index(T const &data, size_t const stride=1)
C++ version of gsl_stats_max_index().
double long_double_quantile_from_sorted_data(T const &sorted_data, size_t const stride, double const f)
C++ version of gsl_stats_long_double_quantile_from_sorted_data().
double long_double_variance(T const &data, size_t const stride=1)
C++ version of gsl_stats_long_double_variance().
double long_double_wmean(U const &w, size_t const wstride, T const &data, size_t const stride)
C++ version of gsl_stats_long_double_wmean().
The gsl package creates an interface to the GNU Scientific Library for C++.
Definition: blas.hpp:34