ruby-eigen 0.0.9 → 0.0.10.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (293) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +22 -0
  3. data/README.md +21 -0
  4. data/ext/eigen/eigen3/COPYING.BSD +26 -0
  5. data/ext/eigen/eigen3/COPYING.MPL2 +373 -0
  6. data/ext/eigen/eigen3/COPYING.README +18 -0
  7. data/ext/eigen/eigen3/Eigen/Array +11 -0
  8. data/ext/eigen/eigen3/Eigen/Cholesky +32 -0
  9. data/ext/eigen/eigen3/Eigen/CholmodSupport +45 -0
  10. data/ext/eigen/eigen3/Eigen/Core +376 -0
  11. data/ext/eigen/eigen3/Eigen/Dense +7 -0
  12. data/ext/eigen/eigen3/Eigen/Eigen +2 -0
  13. data/ext/eigen/eigen3/Eigen/Eigen2Support +95 -0
  14. data/ext/eigen/eigen3/Eigen/Eigenvalues +48 -0
  15. data/ext/eigen/eigen3/Eigen/Geometry +63 -0
  16. data/ext/eigen/eigen3/Eigen/Householder +23 -0
  17. data/ext/eigen/eigen3/Eigen/IterativeLinearSolvers +40 -0
  18. data/ext/eigen/eigen3/Eigen/Jacobi +26 -0
  19. data/ext/eigen/eigen3/Eigen/LU +41 -0
  20. data/ext/eigen/eigen3/Eigen/LeastSquares +32 -0
  21. data/ext/eigen/eigen3/Eigen/MetisSupport +28 -0
  22. data/ext/eigen/eigen3/Eigen/PaStiXSupport +46 -0
  23. data/ext/eigen/eigen3/Eigen/PardisoSupport +30 -0
  24. data/ext/eigen/eigen3/Eigen/QR +45 -0
  25. data/ext/eigen/eigen3/Eigen/QtAlignedMalloc +34 -0
  26. data/ext/eigen/eigen3/Eigen/SPQRSupport +29 -0
  27. data/ext/eigen/eigen3/Eigen/SVD +37 -0
  28. data/ext/eigen/eigen3/Eigen/Sparse +27 -0
  29. data/ext/eigen/eigen3/Eigen/SparseCore +64 -0
  30. data/ext/eigen/eigen3/Eigen/SparseLU +49 -0
  31. data/ext/eigen/eigen3/Eigen/SparseQR +33 -0
  32. data/ext/eigen/eigen3/Eigen/StdDeque +27 -0
  33. data/ext/eigen/eigen3/Eigen/StdList +26 -0
  34. data/ext/eigen/eigen3/Eigen/StdVector +27 -0
  35. data/ext/eigen/eigen3/Eigen/SuperLUSupport +59 -0
  36. data/ext/eigen/eigen3/Eigen/UmfPackSupport +36 -0
  37. data/ext/eigen/eigen3/Eigen/src/Cholesky/LDLT.h +611 -0
  38. data/ext/eigen/eigen3/Eigen/src/Cholesky/LLT.h +498 -0
  39. data/ext/eigen/eigen3/Eigen/src/Cholesky/LLT_MKL.h +102 -0
  40. data/ext/eigen/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h +607 -0
  41. data/ext/eigen/eigen3/Eigen/src/Core/Array.h +323 -0
  42. data/ext/eigen/eigen3/Eigen/src/Core/ArrayBase.h +226 -0
  43. data/ext/eigen/eigen3/Eigen/src/Core/ArrayWrapper.h +264 -0
  44. data/ext/eigen/eigen3/Eigen/src/Core/Assign.h +590 -0
  45. data/ext/eigen/eigen3/Eigen/src/Core/Assign_MKL.h +224 -0
  46. data/ext/eigen/eigen3/Eigen/src/Core/BandMatrix.h +334 -0
  47. data/ext/eigen/eigen3/Eigen/src/Core/Block.h +406 -0
  48. data/ext/eigen/eigen3/Eigen/src/Core/BooleanRedux.h +154 -0
  49. data/ext/eigen/eigen3/Eigen/src/Core/CommaInitializer.h +154 -0
  50. data/ext/eigen/eigen3/Eigen/src/Core/CoreIterators.h +61 -0
  51. data/ext/eigen/eigen3/Eigen/src/Core/CwiseBinaryOp.h +230 -0
  52. data/ext/eigen/eigen3/Eigen/src/Core/CwiseNullaryOp.h +864 -0
  53. data/ext/eigen/eigen3/Eigen/src/Core/CwiseUnaryOp.h +126 -0
  54. data/ext/eigen/eigen3/Eigen/src/Core/CwiseUnaryView.h +139 -0
  55. data/ext/eigen/eigen3/Eigen/src/Core/DenseBase.h +521 -0
  56. data/ext/eigen/eigen3/Eigen/src/Core/DenseCoeffsBase.h +754 -0
  57. data/ext/eigen/eigen3/Eigen/src/Core/DenseStorage.h +434 -0
  58. data/ext/eigen/eigen3/Eigen/src/Core/Diagonal.h +237 -0
  59. data/ext/eigen/eigen3/Eigen/src/Core/DiagonalMatrix.h +313 -0
  60. data/ext/eigen/eigen3/Eigen/src/Core/DiagonalProduct.h +131 -0
  61. data/ext/eigen/eigen3/Eigen/src/Core/Dot.h +263 -0
  62. data/ext/eigen/eigen3/Eigen/src/Core/EigenBase.h +131 -0
  63. data/ext/eigen/eigen3/Eigen/src/Core/Flagged.h +140 -0
  64. data/ext/eigen/eigen3/Eigen/src/Core/ForceAlignedAccess.h +146 -0
  65. data/ext/eigen/eigen3/Eigen/src/Core/Functors.h +1026 -0
  66. data/ext/eigen/eigen3/Eigen/src/Core/Fuzzy.h +150 -0
  67. data/ext/eigen/eigen3/Eigen/src/Core/GeneralProduct.h +635 -0
  68. data/ext/eigen/eigen3/Eigen/src/Core/GenericPacketMath.h +350 -0
  69. data/ext/eigen/eigen3/Eigen/src/Core/GlobalFunctions.h +92 -0
  70. data/ext/eigen/eigen3/Eigen/src/Core/IO.h +250 -0
  71. data/ext/eigen/eigen3/Eigen/src/Core/Map.h +192 -0
  72. data/ext/eigen/eigen3/Eigen/src/Core/MapBase.h +247 -0
  73. data/ext/eigen/eigen3/Eigen/src/Core/MathFunctions.h +768 -0
  74. data/ext/eigen/eigen3/Eigen/src/Core/Matrix.h +420 -0
  75. data/ext/eigen/eigen3/Eigen/src/Core/MatrixBase.h +563 -0
  76. data/ext/eigen/eigen3/Eigen/src/Core/NestByValue.h +111 -0
  77. data/ext/eigen/eigen3/Eigen/src/Core/NoAlias.h +134 -0
  78. data/ext/eigen/eigen3/Eigen/src/Core/NumTraits.h +150 -0
  79. data/ext/eigen/eigen3/Eigen/src/Core/PermutationMatrix.h +721 -0
  80. data/ext/eigen/eigen3/Eigen/src/Core/PlainObjectBase.h +822 -0
  81. data/ext/eigen/eigen3/Eigen/src/Core/ProductBase.h +290 -0
  82. data/ext/eigen/eigen3/Eigen/src/Core/Random.h +152 -0
  83. data/ext/eigen/eigen3/Eigen/src/Core/Redux.h +409 -0
  84. data/ext/eigen/eigen3/Eigen/src/Core/Ref.h +278 -0
  85. data/ext/eigen/eigen3/Eigen/src/Core/Replicate.h +177 -0
  86. data/ext/eigen/eigen3/Eigen/src/Core/ReturnByValue.h +99 -0
  87. data/ext/eigen/eigen3/Eigen/src/Core/Reverse.h +224 -0
  88. data/ext/eigen/eigen3/Eigen/src/Core/Select.h +162 -0
  89. data/ext/eigen/eigen3/Eigen/src/Core/SelfAdjointView.h +314 -0
  90. data/ext/eigen/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h +191 -0
  91. data/ext/eigen/eigen3/Eigen/src/Core/SolveTriangular.h +260 -0
  92. data/ext/eigen/eigen3/Eigen/src/Core/StableNorm.h +203 -0
  93. data/ext/eigen/eigen3/Eigen/src/Core/Stride.h +108 -0
  94. data/ext/eigen/eigen3/Eigen/src/Core/Swap.h +126 -0
  95. data/ext/eigen/eigen3/Eigen/src/Core/Transpose.h +419 -0
  96. data/ext/eigen/eigen3/Eigen/src/Core/Transpositions.h +436 -0
  97. data/ext/eigen/eigen3/Eigen/src/Core/TriangularMatrix.h +839 -0
  98. data/ext/eigen/eigen3/Eigen/src/Core/VectorBlock.h +95 -0
  99. data/ext/eigen/eigen3/Eigen/src/Core/VectorwiseOp.h +642 -0
  100. data/ext/eigen/eigen3/Eigen/src/Core/Visitor.h +237 -0
  101. data/ext/eigen/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h +217 -0
  102. data/ext/eigen/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h +501 -0
  103. data/ext/eigen/eigen3/Eigen/src/Core/arch/Default/Settings.h +49 -0
  104. data/ext/eigen/eigen3/Eigen/src/Core/arch/NEON/Complex.h +253 -0
  105. data/ext/eigen/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h +420 -0
  106. data/ext/eigen/eigen3/Eigen/src/Core/arch/SSE/Complex.h +442 -0
  107. data/ext/eigen/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h +475 -0
  108. data/ext/eigen/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h +649 -0
  109. data/ext/eigen/eigen3/Eigen/src/Core/products/CoeffBasedProduct.h +476 -0
  110. data/ext/eigen/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h +1341 -0
  111. data/ext/eigen/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h +427 -0
  112. data/ext/eigen/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +278 -0
  113. data/ext/eigen/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h +146 -0
  114. data/ext/eigen/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h +118 -0
  115. data/ext/eigen/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h +566 -0
  116. data/ext/eigen/eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h +131 -0
  117. data/ext/eigen/eigen3/Eigen/src/Core/products/Parallelizer.h +162 -0
  118. data/ext/eigen/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +436 -0
  119. data/ext/eigen/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h +295 -0
  120. data/ext/eigen/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h +281 -0
  121. data/ext/eigen/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h +114 -0
  122. data/ext/eigen/eigen3/Eigen/src/Core/products/SelfadjointProduct.h +123 -0
  123. data/ext/eigen/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h +93 -0
  124. data/ext/eigen/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h +427 -0
  125. data/ext/eigen/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h +309 -0
  126. data/ext/eigen/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h +348 -0
  127. data/ext/eigen/eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h +247 -0
  128. data/ext/eigen/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h +332 -0
  129. data/ext/eigen/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h +155 -0
  130. data/ext/eigen/eigen3/Eigen/src/Core/products/TriangularSolverVector.h +139 -0
  131. data/ext/eigen/eigen3/Eigen/src/Core/util/BlasUtil.h +264 -0
  132. data/ext/eigen/eigen3/Eigen/src/Core/util/Constants.h +451 -0
  133. data/ext/eigen/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h +40 -0
  134. data/ext/eigen/eigen3/Eigen/src/Core/util/ForwardDeclarations.h +302 -0
  135. data/ext/eigen/eigen3/Eigen/src/Core/util/MKL_support.h +158 -0
  136. data/ext/eigen/eigen3/Eigen/src/Core/util/Macros.h +451 -0
  137. data/ext/eigen/eigen3/Eigen/src/Core/util/Memory.h +977 -0
  138. data/ext/eigen/eigen3/Eigen/src/Core/util/Meta.h +243 -0
  139. data/ext/eigen/eigen3/Eigen/src/Core/util/NonMPL2.h +3 -0
  140. data/ext/eigen/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h +14 -0
  141. data/ext/eigen/eigen3/Eigen/src/Core/util/StaticAssert.h +208 -0
  142. data/ext/eigen/eigen3/Eigen/src/Core/util/XprHelper.h +469 -0
  143. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Block.h +126 -0
  144. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Cwise.h +192 -0
  145. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/CwiseOperators.h +298 -0
  146. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h +159 -0
  147. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/All.h +115 -0
  148. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h +214 -0
  149. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h +254 -0
  150. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h +141 -0
  151. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h +495 -0
  152. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h +145 -0
  153. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h +123 -0
  154. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h +167 -0
  155. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h +786 -0
  156. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h +184 -0
  157. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/LU.h +120 -0
  158. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Lazy.h +71 -0
  159. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/LeastSquares.h +169 -0
  160. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Macros.h +20 -0
  161. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/MathFunctions.h +57 -0
  162. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Memory.h +45 -0
  163. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Meta.h +75 -0
  164. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/Minor.h +117 -0
  165. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/QR.h +67 -0
  166. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/SVD.h +637 -0
  167. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/TriangularSolver.h +42 -0
  168. data/ext/eigen/eigen3/Eigen/src/Eigen2Support/VectorBlock.h +94 -0
  169. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h +341 -0
  170. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h +456 -0
  171. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h +94 -0
  172. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/EigenSolver.h +607 -0
  173. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +350 -0
  174. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +227 -0
  175. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h +373 -0
  176. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +160 -0
  177. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/RealQZ.h +624 -0
  178. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/RealSchur.h +525 -0
  179. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h +83 -0
  180. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +801 -0
  181. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h +92 -0
  182. data/ext/eigen/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h +557 -0
  183. data/ext/eigen/eigen3/Eigen/src/Geometry/AlignedBox.h +392 -0
  184. data/ext/eigen/eigen3/Eigen/src/Geometry/AngleAxis.h +233 -0
  185. data/ext/eigen/eigen3/Eigen/src/Geometry/EulerAngles.h +104 -0
  186. data/ext/eigen/eigen3/Eigen/src/Geometry/Homogeneous.h +307 -0
  187. data/ext/eigen/eigen3/Eigen/src/Geometry/Hyperplane.h +280 -0
  188. data/ext/eigen/eigen3/Eigen/src/Geometry/OrthoMethods.h +218 -0
  189. data/ext/eigen/eigen3/Eigen/src/Geometry/ParametrizedLine.h +195 -0
  190. data/ext/eigen/eigen3/Eigen/src/Geometry/Quaternion.h +776 -0
  191. data/ext/eigen/eigen3/Eigen/src/Geometry/Rotation2D.h +160 -0
  192. data/ext/eigen/eigen3/Eigen/src/Geometry/RotationBase.h +206 -0
  193. data/ext/eigen/eigen3/Eigen/src/Geometry/Scaling.h +166 -0
  194. data/ext/eigen/eigen3/Eigen/src/Geometry/Transform.h +1455 -0
  195. data/ext/eigen/eigen3/Eigen/src/Geometry/Translation.h +206 -0
  196. data/ext/eigen/eigen3/Eigen/src/Geometry/Umeyama.h +177 -0
  197. data/ext/eigen/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h +115 -0
  198. data/ext/eigen/eigen3/Eigen/src/Householder/BlockHouseholder.h +68 -0
  199. data/ext/eigen/eigen3/Eigen/src/Householder/Householder.h +171 -0
  200. data/ext/eigen/eigen3/Eigen/src/Householder/HouseholderSequence.h +441 -0
  201. data/ext/eigen/eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +149 -0
  202. data/ext/eigen/eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +263 -0
  203. data/ext/eigen/eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +256 -0
  204. data/ext/eigen/eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +282 -0
  205. data/ext/eigen/eigen3/Eigen/src/Jacobi/Jacobi.h +433 -0
  206. data/ext/eigen/eigen3/Eigen/src/LU/Determinant.h +101 -0
  207. data/ext/eigen/eigen3/Eigen/src/LU/FullPivLU.h +751 -0
  208. data/ext/eigen/eigen3/Eigen/src/LU/Inverse.h +400 -0
  209. data/ext/eigen/eigen3/Eigen/src/LU/PartialPivLU.h +509 -0
  210. data/ext/eigen/eigen3/Eigen/src/LU/PartialPivLU_MKL.h +85 -0
  211. data/ext/eigen/eigen3/Eigen/src/LU/arch/Inverse_SSE.h +329 -0
  212. data/ext/eigen/eigen3/Eigen/src/MetisSupport/MetisSupport.h +137 -0
  213. data/ext/eigen/eigen3/Eigen/src/OrderingMethods/Amd.h +444 -0
  214. data/ext/eigen/eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h +1850 -0
  215. data/ext/eigen/eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h +721 -0
  216. data/ext/eigen/eigen3/Eigen/src/PardisoSupport/PardisoSupport.h +592 -0
  217. data/ext/eigen/eigen3/Eigen/src/QR/ColPivHouseholderQR.h +580 -0
  218. data/ext/eigen/eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h +99 -0
  219. data/ext/eigen/eigen3/Eigen/src/QR/FullPivHouseholderQR.h +622 -0
  220. data/ext/eigen/eigen3/Eigen/src/QR/HouseholderQR.h +388 -0
  221. data/ext/eigen/eigen3/Eigen/src/QR/HouseholderQR_MKL.h +71 -0
  222. data/ext/eigen/eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +338 -0
  223. data/ext/eigen/eigen3/Eigen/src/SVD/JacobiSVD.h +976 -0
  224. data/ext/eigen/eigen3/Eigen/src/SVD/JacobiSVD_MKL.h +92 -0
  225. data/ext/eigen/eigen3/Eigen/src/SVD/UpperBidiagonalization.h +148 -0
  226. data/ext/eigen/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h +671 -0
  227. data/ext/eigen/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +199 -0
  228. data/ext/eigen/eigen3/Eigen/src/SparseCore/AmbiVector.h +373 -0
  229. data/ext/eigen/eigen3/Eigen/src/SparseCore/CompressedStorage.h +233 -0
  230. data/ext/eigen/eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +245 -0
  231. data/ext/eigen/eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h +181 -0
  232. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseBlock.h +537 -0
  233. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  234. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +325 -0
  235. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +163 -0
  236. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseDenseProduct.h +311 -0
  237. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h +196 -0
  238. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseDot.h +101 -0
  239. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseFuzzy.h +26 -0
  240. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseMatrix.h +1262 -0
  241. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseMatrixBase.h +461 -0
  242. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparsePermutation.h +148 -0
  243. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseProduct.h +188 -0
  244. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseRedux.h +45 -0
  245. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h +507 -0
  246. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +150 -0
  247. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseTranspose.h +63 -0
  248. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseTriangularView.h +179 -0
  249. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseUtil.h +172 -0
  250. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseVector.h +448 -0
  251. data/ext/eigen/eigen3/Eigen/src/SparseCore/SparseView.h +99 -0
  252. data/ext/eigen/eigen3/Eigen/src/SparseCore/TriangularSolver.h +334 -0
  253. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU.h +806 -0
  254. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
  255. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_Memory.h +227 -0
  256. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_Structs.h +111 -0
  257. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +298 -0
  258. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
  259. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h +180 -0
  260. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h +177 -0
  261. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +106 -0
  262. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +279 -0
  263. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +127 -0
  264. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
  265. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
  266. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
  267. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
  268. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h +135 -0
  269. data/ext/eigen/eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
  270. data/ext/eigen/eigen3/Eigen/src/SparseQR/SparseQR.h +714 -0
  271. data/ext/eigen/eigen3/Eigen/src/StlSupport/StdDeque.h +134 -0
  272. data/ext/eigen/eigen3/Eigen/src/StlSupport/StdList.h +114 -0
  273. data/ext/eigen/eigen3/Eigen/src/StlSupport/StdVector.h +126 -0
  274. data/ext/eigen/eigen3/Eigen/src/StlSupport/details.h +84 -0
  275. data/ext/eigen/eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h +1026 -0
  276. data/ext/eigen/eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h +474 -0
  277. data/ext/eigen/eigen3/Eigen/src/misc/Image.h +84 -0
  278. data/ext/eigen/eigen3/Eigen/src/misc/Kernel.h +81 -0
  279. data/ext/eigen/eigen3/Eigen/src/misc/Solve.h +76 -0
  280. data/ext/eigen/eigen3/Eigen/src/misc/SparseSolve.h +128 -0
  281. data/ext/eigen/eigen3/Eigen/src/misc/blas.h +658 -0
  282. data/ext/eigen/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h +253 -0
  283. data/ext/eigen/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h +187 -0
  284. data/ext/eigen/eigen3/Eigen/src/plugins/BlockMethods.h +935 -0
  285. data/ext/eigen/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h +46 -0
  286. data/ext/eigen/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h +172 -0
  287. data/ext/eigen/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h +143 -0
  288. data/ext/eigen/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h +52 -0
  289. data/ext/eigen/eigen3/signature_of_eigen3_matrix_library +1 -0
  290. data/ext/eigen/eigen_wrap.cxx +19420 -10396
  291. data/ext/eigen/extconf.rb +37 -2
  292. data/lib/eigen.rb +146 -3
  293. metadata +294 -7
@@ -0,0 +1,30 @@
1
+ #ifndef EIGEN_PARDISOSUPPORT_MODULE_H
2
+ #define EIGEN_PARDISOSUPPORT_MODULE_H
3
+
4
+ #include "SparseCore"
5
+
6
+ #include "src/Core/util/DisableStupidWarnings.h"
7
+
8
+ #include <mkl_pardiso.h>
9
+
10
+ #include <unsupported/Eigen/SparseExtra>
11
+
12
+ /** \ingroup Support_modules
13
+ * \defgroup PardisoSupport_Module PardisoSupport module
14
+ *
15
+ * This module brings support for the Intel(R) MKL PARDISO direct sparse solvers.
16
+ *
17
+ * \code
18
+ * #include <Eigen/PardisoSupport>
19
+ * \endcode
20
+ *
21
+ * In order to use this module, the MKL headers must be accessible from the include paths, and your binary must be linked to the MKL library and its dependencies.
22
+ * See this \ref TopicUsingIntelMKL "page" for more information on MKL-Eigen integration.
23
+ *
24
+ */
25
+
26
+ #include "src/PardisoSupport/PardisoSupport.h"
27
+
28
+ #include "src/Core/util/ReenableStupidWarnings.h"
29
+
30
+ #endif // EIGEN_PARDISOSUPPORT_MODULE_H
@@ -0,0 +1,45 @@
1
+ #ifndef EIGEN_QR_MODULE_H
2
+ #define EIGEN_QR_MODULE_H
3
+
4
+ #include "Core"
5
+
6
+ #include "src/Core/util/DisableStupidWarnings.h"
7
+
8
+ #include "Cholesky"
9
+ #include "Jacobi"
10
+ #include "Householder"
11
+
12
+ /** \defgroup QR_Module QR module
13
+ *
14
+ *
15
+ *
16
+ * This module provides various QR decompositions
17
+ * This module also provides some MatrixBase methods, including:
18
+ * - MatrixBase::qr(),
19
+ *
20
+ * \code
21
+ * #include <Eigen/QR>
22
+ * \endcode
23
+ */
24
+
25
+ #include "src/misc/Solve.h"
26
+ #include "src/QR/HouseholderQR.h"
27
+ #include "src/QR/FullPivHouseholderQR.h"
28
+ #include "src/QR/ColPivHouseholderQR.h"
29
+ #ifdef EIGEN_USE_LAPACKE
30
+ #include "src/QR/HouseholderQR_MKL.h"
31
+ #include "src/QR/ColPivHouseholderQR_MKL.h"
32
+ #endif
33
+
34
+ #ifdef EIGEN2_SUPPORT
35
+ #include "src/Eigen2Support/QR.h"
36
+ #endif
37
+
38
+ #include "src/Core/util/ReenableStupidWarnings.h"
39
+
40
+ #ifdef EIGEN2_SUPPORT
41
+ #include "Eigenvalues"
42
+ #endif
43
+
44
+ #endif // EIGEN_QR_MODULE_H
45
+ /* vim: set filetype=cpp et sw=2 ts=2 ai: */
@@ -0,0 +1,34 @@
1
+
2
+ #ifndef EIGEN_QTMALLOC_MODULE_H
3
+ #define EIGEN_QTMALLOC_MODULE_H
4
+
5
+ #include "Core"
6
+
7
+ #if (!EIGEN_MALLOC_ALREADY_ALIGNED)
8
+
9
+ #include "src/Core/util/DisableStupidWarnings.h"
10
+
11
+ void *qMalloc(size_t size)
12
+ {
13
+ return Eigen::internal::aligned_malloc(size);
14
+ }
15
+
16
+ void qFree(void *ptr)
17
+ {
18
+ Eigen::internal::aligned_free(ptr);
19
+ }
20
+
21
+ void *qRealloc(void *ptr, size_t size)
22
+ {
23
+ void* newPtr = Eigen::internal::aligned_malloc(size);
24
+ memcpy(newPtr, ptr, size);
25
+ Eigen::internal::aligned_free(ptr);
26
+ return newPtr;
27
+ }
28
+
29
+ #include "src/Core/util/ReenableStupidWarnings.h"
30
+
31
+ #endif
32
+
33
+ #endif // EIGEN_QTMALLOC_MODULE_H
34
+ /* vim: set filetype=cpp et sw=2 ts=2 ai: */
@@ -0,0 +1,29 @@
1
+ #ifndef EIGEN_SPQRSUPPORT_MODULE_H
2
+ #define EIGEN_SPQRSUPPORT_MODULE_H
3
+
4
+ #include "SparseCore"
5
+
6
+ #include "src/Core/util/DisableStupidWarnings.h"
7
+
8
+ #include "SuiteSparseQR.hpp"
9
+
10
+ /** \ingroup Support_modules
11
+ * \defgroup SPQRSupport_Module SuiteSparseQR module
12
+ *
13
+ * This module provides an interface to the SPQR library, which is part of the <a href="http://www.cise.ufl.edu/research/sparse/SuiteSparse/">suitesparse</a> package.
14
+ *
15
+ * \code
16
+ * #include <Eigen/SPQRSupport>
17
+ * \endcode
18
+ *
19
+ * In order to use this module, the SPQR headers must be accessible from the include paths, and your binary must be linked to the SPQR library and its dependencies (Cholmod, AMD, COLAMD,...).
20
+ * For a cmake based project, you can use our FindSPQR.cmake and FindCholmod.Cmake modules
21
+ *
22
+ */
23
+
24
+ #include "src/misc/Solve.h"
25
+ #include "src/misc/SparseSolve.h"
26
+ #include "src/CholmodSupport/CholmodSupport.h"
27
+ #include "src/SPQRSupport/SuiteSparseQRSupport.h"
28
+
29
+ #endif
@@ -0,0 +1,37 @@
1
+ #ifndef EIGEN_SVD_MODULE_H
2
+ #define EIGEN_SVD_MODULE_H
3
+
4
+ #include "QR"
5
+ #include "Householder"
6
+ #include "Jacobi"
7
+
8
+ #include "src/Core/util/DisableStupidWarnings.h"
9
+
10
+ /** \defgroup SVD_Module SVD module
11
+ *
12
+ *
13
+ *
14
+ * This module provides SVD decomposition for matrices (both real and complex).
15
+ * This decomposition is accessible via the following MatrixBase method:
16
+ * - MatrixBase::jacobiSvd()
17
+ *
18
+ * \code
19
+ * #include <Eigen/SVD>
20
+ * \endcode
21
+ */
22
+
23
+ #include "src/misc/Solve.h"
24
+ #include "src/SVD/JacobiSVD.h"
25
+ #if defined(EIGEN_USE_LAPACKE) && !defined(EIGEN_USE_LAPACKE_STRICT)
26
+ #include "src/SVD/JacobiSVD_MKL.h"
27
+ #endif
28
+ #include "src/SVD/UpperBidiagonalization.h"
29
+
30
+ #ifdef EIGEN2_SUPPORT
31
+ #include "src/Eigen2Support/SVD.h"
32
+ #endif
33
+
34
+ #include "src/Core/util/ReenableStupidWarnings.h"
35
+
36
+ #endif // EIGEN_SVD_MODULE_H
37
+ /* vim: set filetype=cpp et sw=2 ts=2 ai: */
@@ -0,0 +1,27 @@
1
+ #ifndef EIGEN_SPARSE_MODULE_H
2
+ #define EIGEN_SPARSE_MODULE_H
3
+
4
+ /** \defgroup Sparse_Module Sparse meta-module
5
+ *
6
+ * Meta-module including all related modules:
7
+ * - \ref SparseCore_Module
8
+ * - \ref OrderingMethods_Module
9
+ * - \ref SparseCholesky_Module
10
+ * - \ref SparseLU_Module
11
+ * - \ref SparseQR_Module
12
+ * - \ref IterativeLinearSolvers_Module
13
+ *
14
+ * \code
15
+ * #include <Eigen/Sparse>
16
+ * \endcode
17
+ */
18
+
19
+ #include "SparseCore"
20
+ #include "OrderingMethods"
21
+ #include "SparseCholesky"
22
+ #include "SparseLU"
23
+ #include "SparseQR"
24
+ #include "IterativeLinearSolvers"
25
+
26
+ #endif // EIGEN_SPARSE_MODULE_H
27
+
@@ -0,0 +1,64 @@
1
+ #ifndef EIGEN_SPARSECORE_MODULE_H
2
+ #define EIGEN_SPARSECORE_MODULE_H
3
+
4
+ #include "Core"
5
+
6
+ #include "src/Core/util/DisableStupidWarnings.h"
7
+
8
+ #include <vector>
9
+ #include <map>
10
+ #include <cstdlib>
11
+ #include <cstring>
12
+ #include <algorithm>
13
+
14
+ /**
15
+ * \defgroup SparseCore_Module SparseCore module
16
+ *
17
+ * This module provides a sparse matrix representation, and basic associated matrix manipulations
18
+ * and operations.
19
+ *
20
+ * See the \ref TutorialSparse "Sparse tutorial"
21
+ *
22
+ * \code
23
+ * #include <Eigen/SparseCore>
24
+ * \endcode
25
+ *
26
+ * This module depends on: Core.
27
+ */
28
+
29
+ namespace Eigen {
30
+
31
+ /** The type used to identify a general sparse storage. */
32
+ struct Sparse {};
33
+
34
+ }
35
+
36
+ #include "src/SparseCore/SparseUtil.h"
37
+ #include "src/SparseCore/SparseMatrixBase.h"
38
+ #include "src/SparseCore/CompressedStorage.h"
39
+ #include "src/SparseCore/AmbiVector.h"
40
+ #include "src/SparseCore/SparseMatrix.h"
41
+ #include "src/SparseCore/MappedSparseMatrix.h"
42
+ #include "src/SparseCore/SparseVector.h"
43
+ #include "src/SparseCore/SparseBlock.h"
44
+ #include "src/SparseCore/SparseTranspose.h"
45
+ #include "src/SparseCore/SparseCwiseUnaryOp.h"
46
+ #include "src/SparseCore/SparseCwiseBinaryOp.h"
47
+ #include "src/SparseCore/SparseDot.h"
48
+ #include "src/SparseCore/SparsePermutation.h"
49
+ #include "src/SparseCore/SparseRedux.h"
50
+ #include "src/SparseCore/SparseFuzzy.h"
51
+ #include "src/SparseCore/ConservativeSparseSparseProduct.h"
52
+ #include "src/SparseCore/SparseSparseProductWithPruning.h"
53
+ #include "src/SparseCore/SparseProduct.h"
54
+ #include "src/SparseCore/SparseDenseProduct.h"
55
+ #include "src/SparseCore/SparseDiagonalProduct.h"
56
+ #include "src/SparseCore/SparseTriangularView.h"
57
+ #include "src/SparseCore/SparseSelfAdjointView.h"
58
+ #include "src/SparseCore/TriangularSolver.h"
59
+ #include "src/SparseCore/SparseView.h"
60
+
61
+ #include "src/Core/util/ReenableStupidWarnings.h"
62
+
63
+ #endif // EIGEN_SPARSECORE_MODULE_H
64
+
@@ -0,0 +1,49 @@
1
+ // This file is part of Eigen, a lightweight C++ template library
2
+ // for linear algebra.
3
+ //
4
+ // Copyright (C) 2012 Désiré Nuentsa-Wakam <desire.nuentsa_wakam@inria.fr>
5
+ // Copyright (C) 2012 Gael Guennebaud <gael.guennebaud@inria.fr>
6
+ //
7
+ // This Source Code Form is subject to the terms of the Mozilla
8
+ // Public License v. 2.0. If a copy of the MPL was not distributed
9
+ // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
10
+
11
+ #ifndef EIGEN_SPARSELU_MODULE_H
12
+ #define EIGEN_SPARSELU_MODULE_H
13
+
14
+ #include "SparseCore"
15
+
16
+ /**
17
+ * \defgroup SparseLU_Module SparseLU module
18
+ * This module defines a supernodal factorization of general sparse matrices.
19
+ * The code is fully optimized for supernode-panel updates with specialized kernels.
20
+ * Please, see the documentation of the SparseLU class for more details.
21
+ */
22
+
23
+ #include "src/misc/Solve.h"
24
+ #include "src/misc/SparseSolve.h"
25
+
26
+ // Ordering interface
27
+ #include "OrderingMethods"
28
+
29
+ #include "src/SparseLU/SparseLU_gemm_kernel.h"
30
+
31
+ #include "src/SparseLU/SparseLU_Structs.h"
32
+ #include "src/SparseLU/SparseLU_SupernodalMatrix.h"
33
+ #include "src/SparseLU/SparseLUImpl.h"
34
+ #include "src/SparseCore/SparseColEtree.h"
35
+ #include "src/SparseLU/SparseLU_Memory.h"
36
+ #include "src/SparseLU/SparseLU_heap_relax_snode.h"
37
+ #include "src/SparseLU/SparseLU_relax_snode.h"
38
+ #include "src/SparseLU/SparseLU_pivotL.h"
39
+ #include "src/SparseLU/SparseLU_panel_dfs.h"
40
+ #include "src/SparseLU/SparseLU_kernel_bmod.h"
41
+ #include "src/SparseLU/SparseLU_panel_bmod.h"
42
+ #include "src/SparseLU/SparseLU_column_dfs.h"
43
+ #include "src/SparseLU/SparseLU_column_bmod.h"
44
+ #include "src/SparseLU/SparseLU_copy_to_ucol.h"
45
+ #include "src/SparseLU/SparseLU_pruneL.h"
46
+ #include "src/SparseLU/SparseLU_Utils.h"
47
+ #include "src/SparseLU/SparseLU.h"
48
+
49
+ #endif // EIGEN_SPARSELU_MODULE_H
@@ -0,0 +1,33 @@
1
+ #ifndef EIGEN_SPARSEQR_MODULE_H
2
+ #define EIGEN_SPARSEQR_MODULE_H
3
+
4
+ #include "SparseCore"
5
+ #include "OrderingMethods"
6
+ #include "src/Core/util/DisableStupidWarnings.h"
7
+
8
+ /** \defgroup SparseQR_Module SparseQR module
9
+ * \brief Provides QR decomposition for sparse matrices
10
+ *
11
+ * This module provides a simplicial version of the left-looking Sparse QR decomposition.
12
+ * The columns of the input matrix should be reordered to limit the fill-in during the
13
+ * decomposition. Built-in methods (COLAMD, AMD) or external methods (METIS) can be used to this end.
14
+ * See the \link OrderingMethods_Module OrderingMethods\endlink module for the list
15
+ * of built-in and external ordering methods.
16
+ *
17
+ * \code
18
+ * #include <Eigen/SparseQR>
19
+ * \endcode
20
+ *
21
+ *
22
+ */
23
+
24
+ #include "src/misc/Solve.h"
25
+ #include "src/misc/SparseSolve.h"
26
+
27
+ #include "OrderingMethods"
28
+ #include "src/SparseCore/SparseColEtree.h"
29
+ #include "src/SparseQR/SparseQR.h"
30
+
31
+ #include "src/Core/util/ReenableStupidWarnings.h"
32
+
33
+ #endif
@@ -0,0 +1,27 @@
1
+ // This file is part of Eigen, a lightweight C++ template library
2
+ // for linear algebra.
3
+ //
4
+ // Copyright (C) 2009 Gael Guennebaud <gael.guennebaud@inria.fr>
5
+ // Copyright (C) 2009 Hauke Heibel <hauke.heibel@googlemail.com>
6
+ //
7
+ // This Source Code Form is subject to the terms of the Mozilla
8
+ // Public License v. 2.0. If a copy of the MPL was not distributed
9
+ // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
10
+
11
+ #ifndef EIGEN_STDDEQUE_MODULE_H
12
+ #define EIGEN_STDDEQUE_MODULE_H
13
+
14
+ #include "Core"
15
+ #include <deque>
16
+
17
+ #if (defined(_MSC_VER) && defined(_WIN64)) /* MSVC auto aligns in 64 bit builds */
18
+
19
+ #define EIGEN_DEFINE_STL_DEQUE_SPECIALIZATION(...)
20
+
21
+ #else
22
+
23
+ #include "src/StlSupport/StdDeque.h"
24
+
25
+ #endif
26
+
27
+ #endif // EIGEN_STDDEQUE_MODULE_H
@@ -0,0 +1,26 @@
1
+ // This file is part of Eigen, a lightweight C++ template library
2
+ // for linear algebra.
3
+ //
4
+ // Copyright (C) 2009 Hauke Heibel <hauke.heibel@googlemail.com>
5
+ //
6
+ // This Source Code Form is subject to the terms of the Mozilla
7
+ // Public License v. 2.0. If a copy of the MPL was not distributed
8
+ // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
+
10
+ #ifndef EIGEN_STDLIST_MODULE_H
11
+ #define EIGEN_STDLIST_MODULE_H
12
+
13
+ #include "Core"
14
+ #include <list>
15
+
16
+ #if (defined(_MSC_VER) && defined(_WIN64)) /* MSVC auto aligns in 64 bit builds */
17
+
18
+ #define EIGEN_DEFINE_STL_LIST_SPECIALIZATION(...)
19
+
20
+ #else
21
+
22
+ #include "src/StlSupport/StdList.h"
23
+
24
+ #endif
25
+
26
+ #endif // EIGEN_STDLIST_MODULE_H
@@ -0,0 +1,27 @@
1
+ // This file is part of Eigen, a lightweight C++ template library
2
+ // for linear algebra.
3
+ //
4
+ // Copyright (C) 2009 Gael Guennebaud <gael.guennebaud@inria.fr>
5
+ // Copyright (C) 2009 Hauke Heibel <hauke.heibel@googlemail.com>
6
+ //
7
+ // This Source Code Form is subject to the terms of the Mozilla
8
+ // Public License v. 2.0. If a copy of the MPL was not distributed
9
+ // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
10
+
11
+ #ifndef EIGEN_STDVECTOR_MODULE_H
12
+ #define EIGEN_STDVECTOR_MODULE_H
13
+
14
+ #include "Core"
15
+ #include <vector>
16
+
17
+ #if (defined(_MSC_VER) && defined(_WIN64)) /* MSVC auto aligns in 64 bit builds */
18
+
19
+ #define EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(...)
20
+
21
+ #else
22
+
23
+ #include "src/StlSupport/StdVector.h"
24
+
25
+ #endif
26
+
27
+ #endif // EIGEN_STDVECTOR_MODULE_H