hmatrix-gsl-stats 0.3.0.2 → 0.3.0.3
raw patch · 4 files changed
+42/−38 lines, 4 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- CHANGES +4/−0
- hmatrix-gsl-stats.cabal +1/−1
- lib/Numeric/GSL/Distribution/Discrete.hs +1/−1
- lib/Numeric/GSL/statistics-aux.c +36/−36
CHANGES view
@@ -84,3 +84,7 @@ 0.3.0.2: bumped hmatrix dependency added gsl to library dependencies++0.3.0.3:+ removed inline modifier from statistics-aux.c+ fixed CInt -> CUInt in discrete_1p_v FFI call
hmatrix-gsl-stats.cabal view
@@ -1,5 +1,5 @@ Name: hmatrix-gsl-stats-Version: 0.3.0.2+Version: 0.3.0.3 License: BSD3 License-file: LICENSE Copyright: (c) A.V.H. McPhail 2010, 2011, 2013, 2015
lib/Numeric/GSL/Distribution/Discrete.hs view
@@ -121,7 +121,7 @@ else distribution_dist_one_param (fromei f') (fromei d') (fromIntegral x') p' foreign import ccall "distribution-aux.h discrete1" distribution_discrete_one_param :: CInt -> CInt -> Double -> Ptr CUInt -> IO CInt-foreign import ccall "distribution-aux.h discrete1_v" distribution_discrete_one_param_v :: CInt -> CInt -> Double -> CInt -> Ptr Int -> IO CInt+foreign import ccall "distribution-aux.h discrete1_v" distribution_discrete_one_param_v :: CInt -> CInt -> Double -> CInt -> Ptr CUInt -> IO CInt foreign import ccall "distribution-aux.h discrete1_dist" distribution_dist_one_param :: CInt -> CInt -> CUInt -> Double -> IO Double -----------------------------------------------------------------------------
lib/Numeric/GSL/statistics-aux.c view
@@ -1,116 +1,116 @@ #include <gsl/gsl_statistics_double.h> -inline int mean(double* r, int vs, const double* v)+int mean(double* r, int vs, const double* v) { (*r) = gsl_stats_mean(v,1,vs); return 0; } -inline int variance(double* r, int vs, const double* v)+int variance(double* r, int vs, const double* v) { (*r) = gsl_stats_variance(v,1,vs); return 0; } -inline int variance_m(double m, double* r, int vs, const double* v)+int variance_m(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_variance_m(v,1,vs,m); return 0; } -inline int stddev(double* r, int vs, const double* v)+int stddev(double* r, int vs, const double* v) { (*r) = gsl_stats_sd(v,1,vs); return 0; } -inline int stddev_m(double m, double* r, int vs, const double* v)+int stddev_m(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_sd_m(v,1,vs,m); return 0; } -inline int tot_sumsq(double* r, int vs, const double* v)+int tot_sumsq(double* r, int vs, const double* v) { (*r) = gsl_stats_tss(v,1,vs); return 0; } -inline int tot_sumsq_m(double m, double* r, int vs, const double* v)+int tot_sumsq_m(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_tss_m(v,1,vs,m); return 0; } -inline int var_with_fixed_m(double m, double* r, int vs, const double* v)+int var_with_fixed_m(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_variance_with_fixed_mean(v,1,vs,m); return 0; } -inline int stddev_with_fixed_m(double m, double* r, int vs, const double* v)+int stddev_with_fixed_m(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_sd_with_fixed_mean(v,1,vs,m); return 0; } -inline int absdev(double m, double* r, int vs, const double* v)+int absdev(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_absdev(v,1,vs); return 0; } -inline int absdev_m(double m, double* r, int vs, const double* v)+int absdev_m(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_absdev_m(v,1,vs,m); return 0; } -inline int skew(double m, double* r, int vs, const double* v)+int skew(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_skew(v,1,vs); return 0; } -inline int skew_m_sd(double m, double sd, double* r, int vs, const double* v)+int skew_m_sd(double m, double sd, double* r, int vs, const double* v) { (*r) = gsl_stats_skew_m_sd(v,1,vs,m,sd); return 0; } -inline int kurtosis(double m, double* r, int vs, const double* v)+int kurtosis(double m, double* r, int vs, const double* v) { (*r) = gsl_stats_kurtosis(v,1,vs); return 0; } -inline int kurtosis_m_sd(double m, double sd, double* r, int vs, const double* v)+int kurtosis_m_sd(double m, double sd, double* r, int vs, const double* v) { (*r) = gsl_stats_kurtosis_m_sd(v,1,vs,m,sd); return 0; } -inline int lag1_autocorrelation(double* r, int vs, const double* v)+int lag1_autocorrelation(double* r, int vs, const double* v) { (*r) = gsl_stats_lag1_autocorrelation(v,1,vs); return 0; } -inline int covariance(double* r, int vs, const double* v, int ws, const double* w)+int covariance(double* r, int vs, const double* v, int ws, const double* w) { if (vs != ws) return 2000; // BAD_LENGTH (*r) = gsl_stats_covariance(v,1,w,1,vs); return 0; } -inline int covariance_m(double mv, double mw, double* r, int vs, const double* v, int ws, const double* w)+int covariance_m(double mv, double mw, double* r, int vs, const double* v, int ws, const double* w) { if (vs != ws) return 2000; // BAD_LENGTH (*r) = gsl_stats_covariance_m(v,1,w,1,vs,mv,mw); return 0; } -inline int correlation(double* r, int vs, const double* v, int ws, const double* w)+int correlation(double* r, int vs, const double* v, int ws, const double* w) { if (vs != ws) return 2000; // BAD_LENGTH (*r) = gsl_stats_correlation(v,1,w,1,vs);@@ -118,103 +118,103 @@ } -inline int w_mean(int ws, const double* w, double* r, int vs, const double* v)+int w_mean(int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wmean(w,1,v,1,vs); return 0; } -inline int w_variance(int ws, const double* w, double* r, int vs, const double* v)+int w_variance(int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wvariance(w,1,v,1,vs); return 0; } -inline int w_variance_m(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_variance_m(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wvariance_m(w,1,v,1,vs,m); return 0; } -inline int w_stddev(int ws, const double* w, double* r, int vs, const double* v)+int w_stddev(int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wsd(w,1,v,1,vs); return 0; } -inline int w_stddev_m(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_stddev_m(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wsd_m(w,1,v,1,vs,m); return 0; } -inline int w_tot_sumsq(int ws, const double* w, double* r, int vs, const double* v)+int w_tot_sumsq(int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wtss(w,1,v,1,vs); return 0; } -inline int w_tot_sumsq_m(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_tot_sumsq_m(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wtss_m(w,1,v,1,vs,m); return 0; } -inline int w_var_with_fixed_m(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_var_with_fixed_m(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wvariance_with_fixed_mean(w,1,v,1,vs,m); return 0; } -inline int w_stddev_with_fixed_m(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_stddev_with_fixed_m(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wsd_with_fixed_mean(w,1,v,1,vs,m); return 0; } -inline int w_absdev(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_absdev(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wabsdev(w,1,v,1,vs); return 0; } -inline int w_absdev_m(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_absdev_m(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wabsdev_m(w,1,v,1,vs,m); return 0; } -inline int w_skew(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_skew(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wskew(w,1,v,1,vs); return 0; } -inline int w_skew_m_sd(double m, double sd, int ws, const double* w, double* r, int vs, const double* v)+int w_skew_m_sd(double m, double sd, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wskew_m_sd(w,1,v,1,vs,m,sd); return 0; } -inline int w_kurtosis(double m, int ws, const double* w, double* r, int vs, const double* v)+int w_kurtosis(double m, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wkurtosis(w,1,v,1,vs); return 0; } -inline int w_kurtosis_m_sd(double m, double sd, int ws, const double* w, double* r, int vs, const double* v)+int w_kurtosis_m_sd(double m, double sd, int ws, const double* w, double* r, int vs, const double* v) { (*r) = gsl_stats_wkurtosis_m_sd(w,1,v,1,vs,m,sd); return 0; } -inline int median(double* r, int vs, const double* v)+int median(double* r, int vs, const double* v) { (*r) = gsl_stats_median_from_sorted_data(v,1,vs); return 0; } -inline int quantile(double f, double* r, int vs, const double* v)+int quantile(double f, double* r, int vs, const double* v) { (*r) = gsl_stats_quantile_from_sorted_data(v,1,vs,f); return 0;