alglib 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. data/History.txt +7 -0
  2. data/Manifest.txt +253 -0
  3. data/README.txt +33 -0
  4. data/Rakefile +27 -0
  5. data/ext/Rakefile +24 -0
  6. data/ext/alglib.i +24 -0
  7. data/ext/alglib/Makefile +157 -0
  8. data/ext/alglib/airyf.cpp +372 -0
  9. data/ext/alglib/airyf.h +81 -0
  10. data/ext/alglib/alglib.cpp +8558 -0
  11. data/ext/alglib/alglib_util.cpp +19 -0
  12. data/ext/alglib/alglib_util.h +14 -0
  13. data/ext/alglib/ap.cpp +877 -0
  14. data/ext/alglib/ap.english.html +364 -0
  15. data/ext/alglib/ap.h +666 -0
  16. data/ext/alglib/ap.russian.html +442 -0
  17. data/ext/alglib/apvt.h +754 -0
  18. data/ext/alglib/bdss.cpp +1500 -0
  19. data/ext/alglib/bdss.h +251 -0
  20. data/ext/alglib/bdsvd.cpp +1339 -0
  21. data/ext/alglib/bdsvd.h +164 -0
  22. data/ext/alglib/bessel.cpp +1226 -0
  23. data/ext/alglib/bessel.h +331 -0
  24. data/ext/alglib/betaf.cpp +105 -0
  25. data/ext/alglib/betaf.h +74 -0
  26. data/ext/alglib/bidiagonal.cpp +1328 -0
  27. data/ext/alglib/bidiagonal.h +350 -0
  28. data/ext/alglib/binomialdistr.cpp +247 -0
  29. data/ext/alglib/binomialdistr.h +153 -0
  30. data/ext/alglib/blas.cpp +576 -0
  31. data/ext/alglib/blas.h +132 -0
  32. data/ext/alglib/cblas.cpp +226 -0
  33. data/ext/alglib/cblas.h +57 -0
  34. data/ext/alglib/cdet.cpp +138 -0
  35. data/ext/alglib/cdet.h +92 -0
  36. data/ext/alglib/chebyshev.cpp +216 -0
  37. data/ext/alglib/chebyshev.h +76 -0
  38. data/ext/alglib/chisquaredistr.cpp +157 -0
  39. data/ext/alglib/chisquaredistr.h +144 -0
  40. data/ext/alglib/cholesky.cpp +285 -0
  41. data/ext/alglib/cholesky.h +86 -0
  42. data/ext/alglib/cinverse.cpp +298 -0
  43. data/ext/alglib/cinverse.h +111 -0
  44. data/ext/alglib/clu.cpp +337 -0
  45. data/ext/alglib/clu.h +120 -0
  46. data/ext/alglib/correlation.cpp +280 -0
  47. data/ext/alglib/correlation.h +77 -0
  48. data/ext/alglib/correlationtests.cpp +726 -0
  49. data/ext/alglib/correlationtests.h +134 -0
  50. data/ext/alglib/crcond.cpp +826 -0
  51. data/ext/alglib/crcond.h +148 -0
  52. data/ext/alglib/creflections.cpp +310 -0
  53. data/ext/alglib/creflections.h +165 -0
  54. data/ext/alglib/csolve.cpp +312 -0
  55. data/ext/alglib/csolve.h +99 -0
  56. data/ext/alglib/ctrinverse.cpp +387 -0
  57. data/ext/alglib/ctrinverse.h +98 -0
  58. data/ext/alglib/ctrlinsolve.cpp +297 -0
  59. data/ext/alglib/ctrlinsolve.h +81 -0
  60. data/ext/alglib/dawson.cpp +234 -0
  61. data/ext/alglib/dawson.h +74 -0
  62. data/ext/alglib/descriptivestatistics.cpp +436 -0
  63. data/ext/alglib/descriptivestatistics.h +112 -0
  64. data/ext/alglib/det.cpp +140 -0
  65. data/ext/alglib/det.h +94 -0
  66. data/ext/alglib/dforest.cpp +1819 -0
  67. data/ext/alglib/dforest.h +316 -0
  68. data/ext/alglib/elliptic.cpp +497 -0
  69. data/ext/alglib/elliptic.h +217 -0
  70. data/ext/alglib/estnorm.cpp +429 -0
  71. data/ext/alglib/estnorm.h +107 -0
  72. data/ext/alglib/expintegrals.cpp +422 -0
  73. data/ext/alglib/expintegrals.h +108 -0
  74. data/ext/alglib/faq.english.html +258 -0
  75. data/ext/alglib/faq.russian.html +272 -0
  76. data/ext/alglib/fdistr.cpp +202 -0
  77. data/ext/alglib/fdistr.h +163 -0
  78. data/ext/alglib/fresnel.cpp +211 -0
  79. data/ext/alglib/fresnel.h +91 -0
  80. data/ext/alglib/gammaf.cpp +338 -0
  81. data/ext/alglib/gammaf.h +104 -0
  82. data/ext/alglib/gqgengauss.cpp +235 -0
  83. data/ext/alglib/gqgengauss.h +92 -0
  84. data/ext/alglib/gqgenhermite.cpp +268 -0
  85. data/ext/alglib/gqgenhermite.h +63 -0
  86. data/ext/alglib/gqgenjacobi.cpp +297 -0
  87. data/ext/alglib/gqgenjacobi.h +72 -0
  88. data/ext/alglib/gqgenlaguerre.cpp +265 -0
  89. data/ext/alglib/gqgenlaguerre.h +69 -0
  90. data/ext/alglib/gqgenlegendre.cpp +300 -0
  91. data/ext/alglib/gqgenlegendre.h +62 -0
  92. data/ext/alglib/gqgenlobatto.cpp +305 -0
  93. data/ext/alglib/gqgenlobatto.h +97 -0
  94. data/ext/alglib/gqgenradau.cpp +232 -0
  95. data/ext/alglib/gqgenradau.h +95 -0
  96. data/ext/alglib/hbisinv.cpp +480 -0
  97. data/ext/alglib/hbisinv.h +183 -0
  98. data/ext/alglib/hblas.cpp +228 -0
  99. data/ext/alglib/hblas.h +64 -0
  100. data/ext/alglib/hcholesky.cpp +339 -0
  101. data/ext/alglib/hcholesky.h +91 -0
  102. data/ext/alglib/hermite.cpp +114 -0
  103. data/ext/alglib/hermite.h +49 -0
  104. data/ext/alglib/hessenberg.cpp +370 -0
  105. data/ext/alglib/hessenberg.h +152 -0
  106. data/ext/alglib/hevd.cpp +247 -0
  107. data/ext/alglib/hevd.h +107 -0
  108. data/ext/alglib/hsschur.cpp +1316 -0
  109. data/ext/alglib/hsschur.h +108 -0
  110. data/ext/alglib/htridiagonal.cpp +734 -0
  111. data/ext/alglib/htridiagonal.h +180 -0
  112. data/ext/alglib/ialglib.cpp +6 -0
  113. data/ext/alglib/ialglib.h +9 -0
  114. data/ext/alglib/ibetaf.cpp +960 -0
  115. data/ext/alglib/ibetaf.h +125 -0
  116. data/ext/alglib/igammaf.cpp +430 -0
  117. data/ext/alglib/igammaf.h +157 -0
  118. data/ext/alglib/inv.cpp +274 -0
  119. data/ext/alglib/inv.h +115 -0
  120. data/ext/alglib/inverseupdate.cpp +480 -0
  121. data/ext/alglib/inverseupdate.h +185 -0
  122. data/ext/alglib/jacobianelliptic.cpp +164 -0
  123. data/ext/alglib/jacobianelliptic.h +94 -0
  124. data/ext/alglib/jarquebera.cpp +2271 -0
  125. data/ext/alglib/jarquebera.h +80 -0
  126. data/ext/alglib/kmeans.cpp +356 -0
  127. data/ext/alglib/kmeans.h +76 -0
  128. data/ext/alglib/laguerre.cpp +94 -0
  129. data/ext/alglib/laguerre.h +48 -0
  130. data/ext/alglib/lbfgs.cpp +1167 -0
  131. data/ext/alglib/lbfgs.h +218 -0
  132. data/ext/alglib/lda.cpp +434 -0
  133. data/ext/alglib/lda.h +133 -0
  134. data/ext/alglib/ldlt.cpp +1130 -0
  135. data/ext/alglib/ldlt.h +124 -0
  136. data/ext/alglib/leastsquares.cpp +1252 -0
  137. data/ext/alglib/leastsquares.h +290 -0
  138. data/ext/alglib/legendre.cpp +107 -0
  139. data/ext/alglib/legendre.h +49 -0
  140. data/ext/alglib/linreg.cpp +1185 -0
  141. data/ext/alglib/linreg.h +380 -0
  142. data/ext/alglib/logit.cpp +1523 -0
  143. data/ext/alglib/logit.h +333 -0
  144. data/ext/alglib/lq.cpp +399 -0
  145. data/ext/alglib/lq.h +160 -0
  146. data/ext/alglib/lu.cpp +462 -0
  147. data/ext/alglib/lu.h +119 -0
  148. data/ext/alglib/mannwhitneyu.cpp +4490 -0
  149. data/ext/alglib/mannwhitneyu.h +115 -0
  150. data/ext/alglib/minlm.cpp +918 -0
  151. data/ext/alglib/minlm.h +312 -0
  152. data/ext/alglib/mlpbase.cpp +3375 -0
  153. data/ext/alglib/mlpbase.h +589 -0
  154. data/ext/alglib/mlpe.cpp +1369 -0
  155. data/ext/alglib/mlpe.h +552 -0
  156. data/ext/alglib/mlptrain.cpp +1056 -0
  157. data/ext/alglib/mlptrain.h +283 -0
  158. data/ext/alglib/nearunityunit.cpp +91 -0
  159. data/ext/alglib/nearunityunit.h +17 -0
  160. data/ext/alglib/normaldistr.cpp +377 -0
  161. data/ext/alglib/normaldistr.h +175 -0
  162. data/ext/alglib/nsevd.cpp +1869 -0
  163. data/ext/alglib/nsevd.h +140 -0
  164. data/ext/alglib/pca.cpp +168 -0
  165. data/ext/alglib/pca.h +87 -0
  166. data/ext/alglib/poissondistr.cpp +143 -0
  167. data/ext/alglib/poissondistr.h +130 -0
  168. data/ext/alglib/polinterpolation.cpp +685 -0
  169. data/ext/alglib/polinterpolation.h +206 -0
  170. data/ext/alglib/psif.cpp +173 -0
  171. data/ext/alglib/psif.h +88 -0
  172. data/ext/alglib/qr.cpp +414 -0
  173. data/ext/alglib/qr.h +168 -0
  174. data/ext/alglib/ratinterpolation.cpp +134 -0
  175. data/ext/alglib/ratinterpolation.h +72 -0
  176. data/ext/alglib/rcond.cpp +705 -0
  177. data/ext/alglib/rcond.h +140 -0
  178. data/ext/alglib/reflections.cpp +504 -0
  179. data/ext/alglib/reflections.h +165 -0
  180. data/ext/alglib/rotations.cpp +473 -0
  181. data/ext/alglib/rotations.h +128 -0
  182. data/ext/alglib/rsolve.cpp +221 -0
  183. data/ext/alglib/rsolve.h +99 -0
  184. data/ext/alglib/sbisinv.cpp +217 -0
  185. data/ext/alglib/sbisinv.h +171 -0
  186. data/ext/alglib/sblas.cpp +185 -0
  187. data/ext/alglib/sblas.h +64 -0
  188. data/ext/alglib/schur.cpp +156 -0
  189. data/ext/alglib/schur.h +102 -0
  190. data/ext/alglib/sdet.cpp +193 -0
  191. data/ext/alglib/sdet.h +101 -0
  192. data/ext/alglib/sevd.cpp +116 -0
  193. data/ext/alglib/sevd.h +99 -0
  194. data/ext/alglib/sinverse.cpp +672 -0
  195. data/ext/alglib/sinverse.h +138 -0
  196. data/ext/alglib/spddet.cpp +138 -0
  197. data/ext/alglib/spddet.h +96 -0
  198. data/ext/alglib/spdgevd.cpp +842 -0
  199. data/ext/alglib/spdgevd.h +200 -0
  200. data/ext/alglib/spdinverse.cpp +509 -0
  201. data/ext/alglib/spdinverse.h +122 -0
  202. data/ext/alglib/spdrcond.cpp +421 -0
  203. data/ext/alglib/spdrcond.h +118 -0
  204. data/ext/alglib/spdsolve.cpp +275 -0
  205. data/ext/alglib/spdsolve.h +105 -0
  206. data/ext/alglib/spline2d.cpp +1192 -0
  207. data/ext/alglib/spline2d.h +301 -0
  208. data/ext/alglib/spline3.cpp +1264 -0
  209. data/ext/alglib/spline3.h +290 -0
  210. data/ext/alglib/srcond.cpp +595 -0
  211. data/ext/alglib/srcond.h +127 -0
  212. data/ext/alglib/ssolve.cpp +895 -0
  213. data/ext/alglib/ssolve.h +139 -0
  214. data/ext/alglib/stdafx.h +0 -0
  215. data/ext/alglib/stest.cpp +131 -0
  216. data/ext/alglib/stest.h +94 -0
  217. data/ext/alglib/studenttdistr.cpp +222 -0
  218. data/ext/alglib/studenttdistr.h +115 -0
  219. data/ext/alglib/studentttests.cpp +377 -0
  220. data/ext/alglib/studentttests.h +178 -0
  221. data/ext/alglib/svd.cpp +620 -0
  222. data/ext/alglib/svd.h +126 -0
  223. data/ext/alglib/tdbisinv.cpp +2608 -0
  224. data/ext/alglib/tdbisinv.h +228 -0
  225. data/ext/alglib/tdevd.cpp +1229 -0
  226. data/ext/alglib/tdevd.h +115 -0
  227. data/ext/alglib/tridiagonal.cpp +594 -0
  228. data/ext/alglib/tridiagonal.h +171 -0
  229. data/ext/alglib/trigintegrals.cpp +490 -0
  230. data/ext/alglib/trigintegrals.h +131 -0
  231. data/ext/alglib/trinverse.cpp +345 -0
  232. data/ext/alglib/trinverse.h +98 -0
  233. data/ext/alglib/trlinsolve.cpp +926 -0
  234. data/ext/alglib/trlinsolve.h +73 -0
  235. data/ext/alglib/tsort.cpp +405 -0
  236. data/ext/alglib/tsort.h +54 -0
  237. data/ext/alglib/variancetests.cpp +245 -0
  238. data/ext/alglib/variancetests.h +134 -0
  239. data/ext/alglib/wsr.cpp +6285 -0
  240. data/ext/alglib/wsr.h +96 -0
  241. data/ext/ap.i +97 -0
  242. data/ext/correlation.i +24 -0
  243. data/ext/extconf.rb +6 -0
  244. data/ext/logit.i +89 -0
  245. data/lib/alglib.rb +71 -0
  246. data/lib/alglib/correlation.rb +26 -0
  247. data/lib/alglib/linearregression.rb +63 -0
  248. data/lib/alglib/logit.rb +42 -0
  249. data/test/test_alglib.rb +52 -0
  250. data/test/test_correlation.rb +44 -0
  251. data/test/test_correlationtest.rb +45 -0
  252. data/test/test_linreg.rb +35 -0
  253. data/test/test_logit.rb +43 -0
  254. data/test/test_pca.rb +27 -0
  255. metadata +326 -0
@@ -0,0 +1,7 @@
1
+ === 1.0.1 / 2009-08-20
2
+ * Logit class. Implemented Logit#process and Logit#unpack.
3
+ * Correlation. Implemented Alglib.pearson_correlation and Alglib.spearman_correlation
4
+
5
+ === 1.0.0 / 2009-07-28
6
+
7
+ * First version of Alglib. Only Multiple Regression Implemented
@@ -0,0 +1,253 @@
1
+ History.txt
2
+ Manifest.txt
3
+ README.txt
4
+ Rakefile
5
+ ext/Rakefile
6
+ ext/alglib.i
7
+ ext/alglib/airyf.cpp
8
+ ext/alglib/airyf.h
9
+ ext/alglib/alglib.cpp
10
+ ext/alglib/alglib_util.cpp
11
+ ext/alglib/alglib_util.h
12
+ ext/alglib/ap.cpp
13
+ ext/alglib/ap.english.html
14
+ ext/alglib/ap.h
15
+ ext/alglib/ap.russian.html
16
+ ext/alglib/apvt.h
17
+ ext/alglib/bdss.cpp
18
+ ext/alglib/bdss.h
19
+ ext/alglib/bdsvd.cpp
20
+ ext/alglib/bdsvd.h
21
+ ext/alglib/bessel.cpp
22
+ ext/alglib/bessel.h
23
+ ext/alglib/betaf.cpp
24
+ ext/alglib/betaf.h
25
+ ext/alglib/bidiagonal.cpp
26
+ ext/alglib/bidiagonal.h
27
+ ext/alglib/binomialdistr.cpp
28
+ ext/alglib/binomialdistr.h
29
+ ext/alglib/blas.cpp
30
+ ext/alglib/blas.h
31
+ ext/alglib/cblas.cpp
32
+ ext/alglib/cblas.h
33
+ ext/alglib/cdet.cpp
34
+ ext/alglib/cdet.h
35
+ ext/alglib/chebyshev.cpp
36
+ ext/alglib/chebyshev.h
37
+ ext/alglib/chisquaredistr.cpp
38
+ ext/alglib/chisquaredistr.h
39
+ ext/alglib/cholesky.cpp
40
+ ext/alglib/cholesky.h
41
+ ext/alglib/cinverse.cpp
42
+ ext/alglib/cinverse.h
43
+ ext/alglib/clu.cpp
44
+ ext/alglib/clu.h
45
+ ext/alglib/correlation.cpp
46
+ ext/alglib/correlation.h
47
+ ext/alglib/correlationtests.cpp
48
+ ext/alglib/correlationtests.h
49
+ ext/alglib/crcond.cpp
50
+ ext/alglib/crcond.h
51
+ ext/alglib/creflections.cpp
52
+ ext/alglib/creflections.h
53
+ ext/alglib/csolve.cpp
54
+ ext/alglib/csolve.h
55
+ ext/alglib/ctrinverse.cpp
56
+ ext/alglib/ctrinverse.h
57
+ ext/alglib/ctrlinsolve.cpp
58
+ ext/alglib/ctrlinsolve.h
59
+ ext/alglib/dawson.cpp
60
+ ext/alglib/dawson.h
61
+ ext/alglib/descriptivestatistics.cpp
62
+ ext/alglib/descriptivestatistics.h
63
+ ext/alglib/det.cpp
64
+ ext/alglib/det.h
65
+ ext/alglib/dforest.cpp
66
+ ext/alglib/dforest.h
67
+ ext/alglib/elliptic.cpp
68
+ ext/alglib/elliptic.h
69
+ ext/alglib/estnorm.cpp
70
+ ext/alglib/estnorm.h
71
+ ext/alglib/expintegrals.cpp
72
+ ext/alglib/expintegrals.h
73
+ ext/alglib/faq.english.html
74
+ ext/alglib/faq.russian.html
75
+ ext/alglib/fdistr.cpp
76
+ ext/alglib/fdistr.h
77
+ ext/alglib/fresnel.cpp
78
+ ext/alglib/fresnel.h
79
+ ext/alglib/gammaf.cpp
80
+ ext/alglib/gammaf.h
81
+ ext/alglib/gqgengauss.cpp
82
+ ext/alglib/gqgengauss.h
83
+ ext/alglib/gqgenhermite.cpp
84
+ ext/alglib/gqgenhermite.h
85
+ ext/alglib/gqgenjacobi.cpp
86
+ ext/alglib/gqgenjacobi.h
87
+ ext/alglib/gqgenlaguerre.cpp
88
+ ext/alglib/gqgenlaguerre.h
89
+ ext/alglib/gqgenlegendre.cpp
90
+ ext/alglib/gqgenlegendre.h
91
+ ext/alglib/gqgenlobatto.cpp
92
+ ext/alglib/gqgenlobatto.h
93
+ ext/alglib/gqgenradau.cpp
94
+ ext/alglib/gqgenradau.h
95
+ ext/alglib/hbisinv.cpp
96
+ ext/alglib/hbisinv.h
97
+ ext/alglib/hblas.cpp
98
+ ext/alglib/hblas.h
99
+ ext/alglib/hcholesky.cpp
100
+ ext/alglib/hcholesky.h
101
+ ext/alglib/hermite.cpp
102
+ ext/alglib/hermite.h
103
+ ext/alglib/hessenberg.cpp
104
+ ext/alglib/hessenberg.h
105
+ ext/alglib/hevd.cpp
106
+ ext/alglib/hevd.h
107
+ ext/alglib/hsschur.cpp
108
+ ext/alglib/hsschur.h
109
+ ext/alglib/htridiagonal.cpp
110
+ ext/alglib/htridiagonal.h
111
+ ext/alglib/ialglib.cpp
112
+ ext/alglib/ialglib.h
113
+ ext/alglib/ibetaf.cpp
114
+ ext/alglib/ibetaf.h
115
+ ext/alglib/igammaf.cpp
116
+ ext/alglib/igammaf.h
117
+ ext/alglib/inv.cpp
118
+ ext/alglib/inv.h
119
+ ext/alglib/inverseupdate.cpp
120
+ ext/alglib/inverseupdate.h
121
+ ext/alglib/jacobianelliptic.cpp
122
+ ext/alglib/jacobianelliptic.h
123
+ ext/alglib/jarquebera.cpp
124
+ ext/alglib/jarquebera.h
125
+ ext/alglib/kmeans.cpp
126
+ ext/alglib/kmeans.h
127
+ ext/alglib/laguerre.cpp
128
+ ext/alglib/laguerre.h
129
+ ext/alglib/lbfgs.cpp
130
+ ext/alglib/lbfgs.h
131
+ ext/alglib/lda.cpp
132
+ ext/alglib/lda.h
133
+ ext/alglib/ldlt.cpp
134
+ ext/alglib/ldlt.h
135
+ ext/alglib/leastsquares.cpp
136
+ ext/alglib/leastsquares.h
137
+ ext/alglib/legendre.cpp
138
+ ext/alglib/legendre.h
139
+ ext/alglib/linreg.cpp
140
+ ext/alglib/linreg.h
141
+ ext/alglib/logit.cpp
142
+ ext/alglib/logit.h
143
+ ext/alglib/lq.cpp
144
+ ext/alglib/lq.h
145
+ ext/alglib/lu.cpp
146
+ ext/alglib/lu.h
147
+ ext/alglib/Makefile
148
+ ext/alglib/mannwhitneyu.cpp
149
+ ext/alglib/mannwhitneyu.h
150
+ ext/alglib/minlm.cpp
151
+ ext/alglib/minlm.h
152
+ ext/alglib/mlpbase.cpp
153
+ ext/alglib/mlpbase.h
154
+ ext/alglib/mlpe.cpp
155
+ ext/alglib/mlpe.h
156
+ ext/alglib/mlptrain.cpp
157
+ ext/alglib/mlptrain.h
158
+ ext/alglib/nearunityunit.cpp
159
+ ext/alglib/nearunityunit.h
160
+ ext/alglib/normaldistr.cpp
161
+ ext/alglib/normaldistr.h
162
+ ext/alglib/nsevd.cpp
163
+ ext/alglib/nsevd.h
164
+ ext/alglib/pca.cpp
165
+ ext/alglib/pca.h
166
+ ext/alglib/poissondistr.cpp
167
+ ext/alglib/poissondistr.h
168
+ ext/alglib/polinterpolation.cpp
169
+ ext/alglib/polinterpolation.h
170
+ ext/alglib/psif.cpp
171
+ ext/alglib/psif.h
172
+ ext/alglib/qr.cpp
173
+ ext/alglib/qr.h
174
+ ext/alglib/ratinterpolation.cpp
175
+ ext/alglib/ratinterpolation.h
176
+ ext/alglib/rcond.cpp
177
+ ext/alglib/rcond.h
178
+ ext/alglib/reflections.cpp
179
+ ext/alglib/reflections.h
180
+ ext/alglib/rotations.cpp
181
+ ext/alglib/rotations.h
182
+ ext/alglib/rsolve.cpp
183
+ ext/alglib/rsolve.h
184
+ ext/alglib/sbisinv.cpp
185
+ ext/alglib/sbisinv.h
186
+ ext/alglib/sblas.cpp
187
+ ext/alglib/sblas.h
188
+ ext/alglib/schur.cpp
189
+ ext/alglib/schur.h
190
+ ext/alglib/sdet.cpp
191
+ ext/alglib/sdet.h
192
+ ext/alglib/sevd.cpp
193
+ ext/alglib/sevd.h
194
+ ext/alglib/sinverse.cpp
195
+ ext/alglib/sinverse.h
196
+ ext/alglib/spddet.cpp
197
+ ext/alglib/spddet.h
198
+ ext/alglib/spdgevd.cpp
199
+ ext/alglib/spdgevd.h
200
+ ext/alglib/spdinverse.cpp
201
+ ext/alglib/spdinverse.h
202
+ ext/alglib/spdrcond.cpp
203
+ ext/alglib/spdrcond.h
204
+ ext/alglib/spdsolve.cpp
205
+ ext/alglib/spdsolve.h
206
+ ext/alglib/spline2d.cpp
207
+ ext/alglib/spline2d.h
208
+ ext/alglib/spline3.cpp
209
+ ext/alglib/spline3.h
210
+ ext/alglib/srcond.cpp
211
+ ext/alglib/srcond.h
212
+ ext/alglib/ssolve.cpp
213
+ ext/alglib/ssolve.h
214
+ ext/alglib/stdafx.h
215
+ ext/alglib/stest.cpp
216
+ ext/alglib/stest.h
217
+ ext/alglib/studenttdistr.cpp
218
+ ext/alglib/studenttdistr.h
219
+ ext/alglib/studentttests.cpp
220
+ ext/alglib/studentttests.h
221
+ ext/alglib/svd.cpp
222
+ ext/alglib/svd.h
223
+ ext/alglib/tdbisinv.cpp
224
+ ext/alglib/tdbisinv.h
225
+ ext/alglib/tdevd.cpp
226
+ ext/alglib/tdevd.h
227
+ ext/alglib/tridiagonal.cpp
228
+ ext/alglib/tridiagonal.h
229
+ ext/alglib/trigintegrals.cpp
230
+ ext/alglib/trigintegrals.h
231
+ ext/alglib/trinverse.cpp
232
+ ext/alglib/trinverse.h
233
+ ext/alglib/trlinsolve.cpp
234
+ ext/alglib/trlinsolve.h
235
+ ext/alglib/tsort.cpp
236
+ ext/alglib/tsort.h
237
+ ext/alglib/variancetests.cpp
238
+ ext/alglib/variancetests.h
239
+ ext/alglib/wsr.cpp
240
+ ext/alglib/wsr.h
241
+ ext/ap.i
242
+ ext/correlation.i
243
+ ext/extconf.rb
244
+ ext/logit.i
245
+ lib/alglib.rb
246
+ lib/alglib/correlation.rb
247
+ lib/alglib/linearregression.rb
248
+ lib/alglib/logit.rb
249
+ test/test_alglib.rb
250
+ test/test_correlation.rb
251
+ test/test_correlationtest.rb
252
+ test/test_linreg.rb
253
+ test/test_logit.rb
@@ -0,0 +1,33 @@
1
+ = Alglib
2
+
3
+ Ruby wrapper for Alglib libraries (http://www.alglib.net/).
4
+ First layer based on swig and a second on Ruby, for comfortable use.
5
+
6
+ == DESCRIPTION:
7
+
8
+ ALGLIB - is a multilingual collection of algorithms designed to solve problems in the field of numeric analysis and data processing. ALGLIB is distributed under a 3-clause BSD license. This license is unrestrictive and allows using the package both in open and proprietary programs and even relicensing the code (if the new license doesn't conflict with the terms of the 3-clause BSD license).
9
+
10
+ == FEATURES/PROBLEMS:
11
+
12
+ * Only Multiple regression, Logit Regression and Correlation implemented
13
+
14
+
15
+ == SYNOPSIS:
16
+ require 'alglib'
17
+ matrix=Matrix[[2,3,4],[2,5,5],[1,5,3],[4,6,5]]
18
+ lr=Alglib::LinearRegression.build_from_matrix(matrix)
19
+ => #<Alglib::LinearRegression:0x7ffaf6c05dc0 @model=#<Alglib_ext::LinearModel:0x7ffaf6c05e60>, @cases=4, @report=#<Alglib_ext::LrReport:0x7ffaf6c05e10>, @ivars=2>
20
+ lr.coeffs
21
+ => [0.585714285714286, -0.0142857142857142]
22
+
23
+ == REQUIREMENTS:
24
+
25
+ * A good compiler
26
+
27
+ == INSTALL:
28
+
29
+ sudo gem install alglib
30
+
31
+ == LICENSE:
32
+
33
+ The Source Codes are distributed under some non-restrictive software license, mostly under BSD (see Source Codes for specific terms and conditions).
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/ruby
2
+ # -*- ruby -*-
3
+
4
+ require 'rubygems'
5
+ require 'hoe'
6
+
7
+ task :default => [:compile]
8
+ task :compile => ["ext/alglib_ext.so"]
9
+
10
+ file "ext/Makefile" => "ext/extconf.rb" do |t|
11
+ system %(cd ext && ruby extconf.rb)
12
+ end
13
+
14
+ file "ext/alglib_ext.so" => Dir.glob("ext/*.i")+["ext/Makefile", "ext/alglib/alglib_util.cpp", "ext/alglib/alglib_util.h"] do |t|
15
+ system %(cd ext && rake)
16
+
17
+ end
18
+ require File.dirname(__FILE__)+'/lib/alglib_version.rb'
19
+ Hoe.spec 'alglib' do
20
+ self.version=Alglib::VERSION
21
+ self.rubyforge_name = 'ruby-statsample' # if different than 'alglib'
22
+ self.developer('Claudio Bustos', 'clbustos@gmail.com')
23
+ self.spec_extras= {'extensions' => ['ext/extconf.rb']}
24
+ self.url = "http://rubyforge.org/projects/ruby-statsample/"
25
+ end
26
+
27
+ # vim: syntax=ruby
@@ -0,0 +1,24 @@
1
+ require 'rake/testtask'
2
+ require 'rake/rdoctask'
3
+
4
+
5
+ task :default => [:compile]
6
+ task :test => ["test.rb"] do |t|
7
+ system %(ruby test.rb)
8
+ end
9
+ task :compile => ["alglib.so"]
10
+
11
+ file "alglib/alglib.cpp"=>Dir.glob("*.i") do |t|
12
+ puts "Reconstruyendo swig"
13
+ system %(swig -fvirtual -Wall -c++ -o alglib/alglib.cpp -ruby alglib.i)
14
+ end
15
+
16
+
17
+ cpp=Dir.glob("alglib/*.cpp")+Dir.glob("alglib/*.h")
18
+ file "alglib.so"=>cpp + ["Makefile"] do |t|
19
+ system %(make)
20
+ end
21
+
22
+ file "Makefile" => ["extconf.rb"] do |t|
23
+ system %(ruby extconf.rb)
24
+ end
@@ -0,0 +1,24 @@
1
+ %module alglib_ext
2
+ %{
3
+ #include "ap.h"
4
+ #include "alglib_util.h"
5
+ #include "iostream"
6
+
7
+ %}
8
+
9
+ %include "typemaps.i"
10
+ %apply int *OUTPUT {int& info};
11
+ %apply int *INPUT {int& nvars};
12
+ %apply int *INPUT {int& nvars};
13
+ %apply int *INPUT {int& nclasses};
14
+ %apply double *INPUT {double &bothtails};
15
+ %apply double *INPUT {double &lefttail};
16
+ %apply double *INPUT {double &righttail};
17
+
18
+
19
+ %include "ap.i"
20
+ %include "correlation.i"
21
+ %include "correlationtests.i"
22
+ %include "linreg.i"
23
+ %include "logit.i"
24
+ %include "pca.i"
@@ -0,0 +1,157 @@
1
+
2
+ SHELL = /bin/sh
3
+
4
+ #### Start of system configuration section. ####
5
+
6
+ srcdir = .
7
+ topdir = /usr/lib/ruby/1.8/x86_64-linux
8
+ hdrdir = $(topdir)
9
+ VPATH = $(srcdir):$(topdir):$(hdrdir)
10
+ exec_prefix = $(prefix)
11
+ prefix = $(DESTDIR)/usr
12
+ sharedstatedir = $(prefix)/com
13
+ mandir = $(prefix)/share/man
14
+ psdir = $(docdir)
15
+ oldincludedir = $(DESTDIR)/usr/include
16
+ localedir = $(datarootdir)/locale
17
+ bindir = $(exec_prefix)/bin
18
+ libexecdir = $(prefix)/lib/ruby1.8
19
+ sitedir = $(DESTDIR)/usr/local/lib/site_ruby
20
+ htmldir = $(docdir)
21
+ vendorarchdir = $(vendorlibdir)/$(sitearch)
22
+ includedir = $(prefix)/include
23
+ infodir = $(prefix)/share/info
24
+ vendorlibdir = $(vendordir)/$(ruby_version)
25
+ sysconfdir = $(DESTDIR)/etc
26
+ libdir = $(exec_prefix)/lib
27
+ sbindir = $(exec_prefix)/sbin
28
+ rubylibdir = $(libdir)/ruby/$(ruby_version)
29
+ docdir = $(datarootdir)/doc/$(PACKAGE)
30
+ dvidir = $(docdir)
31
+ vendordir = $(libdir)/ruby/vendor_ruby
32
+ datarootdir = $(prefix)/share
33
+ pdfdir = $(docdir)
34
+ archdir = $(rubylibdir)/$(arch)
35
+ sitearchdir = $(sitelibdir)/$(sitearch)
36
+ datadir = $(datarootdir)
37
+ localstatedir = $(DESTDIR)/var
38
+ sitelibdir = $(sitedir)/$(ruby_version)
39
+
40
+ CC = cc
41
+ LIBRUBY = $(LIBRUBY_SO)
42
+ LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
43
+ LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
44
+ LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static
45
+
46
+ RUBY_EXTCONF_H =
47
+ CFLAGS = -fPIC -fno-strict-aliasing -g -g -O2 -fPIC $(cflags) -DEBUG
48
+ INCFLAGS = -I. -I$(topdir) -I$(hdrdir) -I$(srcdir)
49
+ DEFS =
50
+ CPPFLAGS = $(DEFS) $(cppflags)
51
+ CXXFLAGS = $(CFLAGS)
52
+ ldflags = -L. -Wl,-Bsymbolic-functions -rdynamic -Wl,-export-dynamic
53
+ dldflags =
54
+ archflag =
55
+ DLDFLAGS = $(ldflags) $(dldflags) $(archflag)
56
+ LDSHARED = $(CC) -shared
57
+ AR = ar
58
+ EXEEXT =
59
+
60
+ RUBY_INSTALL_NAME = ruby1.8
61
+ RUBY_SO_NAME = ruby1.8
62
+ arch = x86_64-linux
63
+ sitearch = x86_64-linux
64
+ ruby_version = 1.8
65
+ ruby = /usr/bin/ruby1.8
66
+ RUBY = $(ruby)
67
+ RM = rm -f
68
+ MAKEDIRS = mkdir -p
69
+ INSTALL = /usr/bin/install -c
70
+ INSTALL_PROG = $(INSTALL) -m 0755
71
+ INSTALL_DATA = $(INSTALL) -m 644
72
+ COPY = cp
73
+
74
+ #### End of system configuration section. ####
75
+
76
+ preload =
77
+
78
+ libpath = . $(libdir)
79
+ LIBPATH = -L. -L$(libdir)
80
+ DEFFILE =
81
+
82
+ CLEANFILES = mkmf.log
83
+ DISTCLEANFILES =
84
+
85
+ extout =
86
+ extout_prefix =
87
+ target_prefix =
88
+ LOCAL_LIBS =
89
+ LIBS = $(LIBRUBYARG_SHARED) -lstdc++ -lsupc++ -lpthread -ldl -lcrypt -lm -lc
90
+ SRCS = alglib.cxx clu.cpp wsr.cpp expintegrals.cpp gqgenlaguerre.cpp bdsvd.cpp crcond.cpp mlpe.cpp cholesky.cpp laguerre.cpp det.cpp spdrcond.cpp binomialdistr.cpp srcond.cpp ibetaf.cpp mannwhitneyu.cpp normaldistr.cpp hevd.cpp polinterpolation.cpp cblas.cpp gqgenlegendre.cpp mlpbase.cpp fresnel.cpp poissondistr.cpp legendre.cpp tridiagonal.cpp spdgevd.cpp spline2d.cpp dawson.cpp trigintegrals.cpp lda.cpp studenttdistr.cpp sbisinv.cpp hbisinv.cpp ldlt.cpp rsolve.cpp variancetests.cpp cinverse.cpp kmeans.cpp creflections.cpp descriptivestatistics.cpp blas.cpp sblas.cpp mlptrain.cpp tdevd.cpp hcholesky.cpp reflections.cpp ctrlinsolve.cpp airyf.cpp bdss.cpp logit.cpp stest.cpp igammaf.cpp spdinverse.cpp minlm.cpp gqgenradau.cpp bessel.cpp sdet.cpp csolve.cpp ap.cpp lbfgs.cpp chebyshev.cpp jarquebera.cpp gqgenlobatto.cpp svd.cpp spdsolve.cpp ssolve.cpp betaf.cpp estnorm.cpp ialglib.cpp sinverse.cpp elliptic.cpp trinverse.cpp nearunityunit.cpp hermite.cpp tdbisinv.cpp dforest.cpp lq.cpp schur.cpp lu.cpp hessenberg.cpp hsschur.cpp leastsquares.cpp ratinterpolation.cpp qr.cpp bidiagonal.cpp gqgenjacobi.cpp jacobianelliptic.cpp gqgenhermite.cpp correlation.cpp rotations.cpp chisquaredistr.cpp ctrinverse.cpp pca.cpp cdet.cpp gammaf.cpp sevd.cpp tsort.cpp gqgengauss.cpp alglib_util.cpp correlationtests.cpp spddet.cpp nsevd.cpp psif.cpp htridiagonal.cpp inv.cpp rcond.cpp inverseupdate.cpp spline3.cpp linreg.cpp hblas.cpp trlinsolve.cpp fdistr.cpp studentttests.cpp
91
+ OBJS = alglib.o clu.o wsr.o expintegrals.o gqgenlaguerre.o bdsvd.o crcond.o mlpe.o cholesky.o laguerre.o det.o spdrcond.o binomialdistr.o srcond.o ibetaf.o mannwhitneyu.o normaldistr.o hevd.o polinterpolation.o cblas.o gqgenlegendre.o mlpbase.o fresnel.o poissondistr.o legendre.o tridiagonal.o spdgevd.o spline2d.o dawson.o trigintegrals.o lda.o studenttdistr.o sbisinv.o hbisinv.o ldlt.o rsolve.o variancetests.o cinverse.o kmeans.o creflections.o descriptivestatistics.o blas.o sblas.o mlptrain.o tdevd.o hcholesky.o reflections.o ctrlinsolve.o airyf.o bdss.o logit.o stest.o igammaf.o spdinverse.o minlm.o gqgenradau.o bessel.o sdet.o csolve.o ap.o lbfgs.o chebyshev.o jarquebera.o gqgenlobatto.o svd.o spdsolve.o ssolve.o betaf.o estnorm.o ialglib.o sinverse.o elliptic.o trinverse.o nearunityunit.o hermite.o tdbisinv.o dforest.o lq.o schur.o lu.o hessenberg.o hsschur.o leastsquares.o ratinterpolation.o qr.o bidiagonal.o gqgenjacobi.o jacobianelliptic.o gqgenhermite.o correlation.o rotations.o chisquaredistr.o ctrinverse.o pca.o cdet.o gammaf.o sevd.o tsort.o gqgengauss.o alglib_util.o correlationtests.o spddet.o nsevd.o psif.o htridiagonal.o inv.o rcond.o inverseupdate.o spline3.o linreg.o hblas.o trlinsolve.o fdistr.o studentttests.o
92
+ TARGET = alglib
93
+ DLLIB = $(TARGET).so
94
+ EXTSTATIC =
95
+ STATIC_LIB =
96
+
97
+ BINDIR = $(bindir)
98
+ RUBYCOMMONDIR = $(sitedir)$(target_prefix)
99
+ RUBYLIBDIR = $(sitelibdir)$(target_prefix)
100
+ RUBYARCHDIR = $(sitearchdir)$(target_prefix)
101
+
102
+ TARGET_SO = $(DLLIB)
103
+ CLEANLIBS = $(TARGET).so $(TARGET).il? $(TARGET).tds $(TARGET).map
104
+ CLEANOBJS = *.o *.a *.s[ol] *.pdb *.exp *.bak
105
+
106
+ all: $(DLLIB)
107
+ static: $(STATIC_LIB)
108
+
109
+ clean:
110
+ @-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
111
+
112
+ distclean: clean
113
+ @-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
114
+ @-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
115
+
116
+ realclean: distclean
117
+ install: install-so install-rb
118
+
119
+ install-so: $(RUBYARCHDIR)
120
+ install-so: $(RUBYARCHDIR)/$(DLLIB)
121
+ $(RUBYARCHDIR)/$(DLLIB): $(DLLIB)
122
+ $(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
123
+ install-rb: pre-install-rb install-rb-default
124
+ install-rb-default: pre-install-rb-default
125
+ pre-install-rb: Makefile
126
+ pre-install-rb-default: Makefile
127
+ $(RUBYARCHDIR):
128
+ $(MAKEDIRS) $@
129
+
130
+ site-install: site-install-so site-install-rb
131
+ site-install-so: install-so
132
+ site-install-rb: install-rb
133
+
134
+ .SUFFIXES: .c .m .cc .cxx .cpp .C .o
135
+
136
+ .cc.o:
137
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
138
+
139
+ .cxx.o:
140
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
141
+
142
+ .cpp.o:
143
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
144
+
145
+ .C.o:
146
+ $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
147
+
148
+ .c.o:
149
+ $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) -c $<
150
+
151
+ $(DLLIB): $(OBJS)
152
+ @-$(RM) $@
153
+ $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
154
+
155
+
156
+
157
+ $(OBJS): ruby.h defines.h