@smake/eigen 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/README.md +1 -1
  2. package/eigen/Eigen/AccelerateSupport +52 -0
  3. package/eigen/Eigen/Cholesky +18 -20
  4. package/eigen/Eigen/CholmodSupport +28 -28
  5. package/eigen/Eigen/Core +187 -120
  6. package/eigen/Eigen/Eigenvalues +16 -13
  7. package/eigen/Eigen/Geometry +18 -18
  8. package/eigen/Eigen/Householder +9 -7
  9. package/eigen/Eigen/IterativeLinearSolvers +8 -4
  10. package/eigen/Eigen/Jacobi +14 -13
  11. package/eigen/Eigen/KLUSupport +23 -21
  12. package/eigen/Eigen/LU +15 -16
  13. package/eigen/Eigen/MetisSupport +12 -12
  14. package/eigen/Eigen/OrderingMethods +54 -51
  15. package/eigen/Eigen/PaStiXSupport +23 -21
  16. package/eigen/Eigen/PardisoSupport +17 -14
  17. package/eigen/Eigen/QR +18 -20
  18. package/eigen/Eigen/QtAlignedMalloc +5 -12
  19. package/eigen/Eigen/SPQRSupport +21 -14
  20. package/eigen/Eigen/SVD +23 -17
  21. package/eigen/Eigen/Sparse +1 -2
  22. package/eigen/Eigen/SparseCholesky +18 -15
  23. package/eigen/Eigen/SparseCore +18 -17
  24. package/eigen/Eigen/SparseLU +9 -9
  25. package/eigen/Eigen/SparseQR +16 -14
  26. package/eigen/Eigen/StdDeque +5 -2
  27. package/eigen/Eigen/StdList +5 -2
  28. package/eigen/Eigen/StdVector +5 -2
  29. package/eigen/Eigen/SuperLUSupport +30 -24
  30. package/eigen/Eigen/ThreadPool +80 -0
  31. package/eigen/Eigen/UmfPackSupport +19 -17
  32. package/eigen/Eigen/Version +14 -0
  33. package/eigen/Eigen/src/AccelerateSupport/AccelerateSupport.h +423 -0
  34. package/eigen/Eigen/src/AccelerateSupport/InternalHeaderCheck.h +3 -0
  35. package/eigen/Eigen/src/Cholesky/InternalHeaderCheck.h +3 -0
  36. package/eigen/Eigen/src/Cholesky/LDLT.h +366 -405
  37. package/eigen/Eigen/src/Cholesky/LLT.h +323 -367
  38. package/eigen/Eigen/src/Cholesky/LLT_LAPACKE.h +81 -56
  39. package/eigen/Eigen/src/CholmodSupport/CholmodSupport.h +585 -529
  40. package/eigen/Eigen/src/CholmodSupport/InternalHeaderCheck.h +3 -0
  41. package/eigen/Eigen/src/Core/ArithmeticSequence.h +143 -317
  42. package/eigen/Eigen/src/Core/Array.h +329 -370
  43. package/eigen/Eigen/src/Core/ArrayBase.h +190 -203
  44. package/eigen/Eigen/src/Core/ArrayWrapper.h +126 -170
  45. package/eigen/Eigen/src/Core/Assign.h +30 -40
  46. package/eigen/Eigen/src/Core/AssignEvaluator.h +651 -604
  47. package/eigen/Eigen/src/Core/Assign_MKL.h +125 -120
  48. package/eigen/Eigen/src/Core/BandMatrix.h +267 -282
  49. package/eigen/Eigen/src/Core/Block.h +371 -390
  50. package/eigen/Eigen/src/Core/CommaInitializer.h +85 -100
  51. package/eigen/Eigen/src/Core/ConditionEstimator.h +51 -53
  52. package/eigen/Eigen/src/Core/CoreEvaluators.h +1214 -937
  53. package/eigen/Eigen/src/Core/CoreIterators.h +72 -63
  54. package/eigen/Eigen/src/Core/CwiseBinaryOp.h +112 -129
  55. package/eigen/Eigen/src/Core/CwiseNullaryOp.h +676 -702
  56. package/eigen/Eigen/src/Core/CwiseTernaryOp.h +77 -103
  57. package/eigen/Eigen/src/Core/CwiseUnaryOp.h +55 -67
  58. package/eigen/Eigen/src/Core/CwiseUnaryView.h +127 -92
  59. package/eigen/Eigen/src/Core/DenseBase.h +630 -658
  60. package/eigen/Eigen/src/Core/DenseCoeffsBase.h +511 -628
  61. package/eigen/Eigen/src/Core/DenseStorage.h +511 -590
  62. package/eigen/Eigen/src/Core/DeviceWrapper.h +153 -0
  63. package/eigen/Eigen/src/Core/Diagonal.h +168 -207
  64. package/eigen/Eigen/src/Core/DiagonalMatrix.h +346 -317
  65. package/eigen/Eigen/src/Core/DiagonalProduct.h +12 -10
  66. package/eigen/Eigen/src/Core/Dot.h +167 -217
  67. package/eigen/Eigen/src/Core/EigenBase.h +74 -85
  68. package/eigen/Eigen/src/Core/Fill.h +138 -0
  69. package/eigen/Eigen/src/Core/FindCoeff.h +464 -0
  70. package/eigen/Eigen/src/Core/ForceAlignedAccess.h +90 -113
  71. package/eigen/Eigen/src/Core/Fuzzy.h +82 -105
  72. package/eigen/Eigen/src/Core/GeneralProduct.h +315 -261
  73. package/eigen/Eigen/src/Core/GenericPacketMath.h +1182 -520
  74. package/eigen/Eigen/src/Core/GlobalFunctions.h +193 -157
  75. package/eigen/Eigen/src/Core/IO.h +131 -156
  76. package/eigen/Eigen/src/Core/IndexedView.h +209 -125
  77. package/eigen/Eigen/src/Core/InnerProduct.h +260 -0
  78. package/eigen/Eigen/src/Core/InternalHeaderCheck.h +3 -0
  79. package/eigen/Eigen/src/Core/Inverse.h +50 -59
  80. package/eigen/Eigen/src/Core/Map.h +123 -141
  81. package/eigen/Eigen/src/Core/MapBase.h +255 -282
  82. package/eigen/Eigen/src/Core/MathFunctions.h +1247 -1201
  83. package/eigen/Eigen/src/Core/MathFunctionsImpl.h +162 -99
  84. package/eigen/Eigen/src/Core/Matrix.h +463 -494
  85. package/eigen/Eigen/src/Core/MatrixBase.h +468 -470
  86. package/eigen/Eigen/src/Core/NestByValue.h +58 -52
  87. package/eigen/Eigen/src/Core/NoAlias.h +79 -86
  88. package/eigen/Eigen/src/Core/NumTraits.h +206 -206
  89. package/eigen/Eigen/src/Core/PartialReduxEvaluator.h +163 -142
  90. package/eigen/Eigen/src/Core/PermutationMatrix.h +461 -511
  91. package/eigen/Eigen/src/Core/PlainObjectBase.h +858 -972
  92. package/eigen/Eigen/src/Core/Product.h +246 -130
  93. package/eigen/Eigen/src/Core/ProductEvaluators.h +779 -671
  94. package/eigen/Eigen/src/Core/Random.h +153 -164
  95. package/eigen/Eigen/src/Core/RandomImpl.h +262 -0
  96. package/eigen/Eigen/src/Core/RealView.h +250 -0
  97. package/eigen/Eigen/src/Core/Redux.h +334 -314
  98. package/eigen/Eigen/src/Core/Ref.h +259 -257
  99. package/eigen/Eigen/src/Core/Replicate.h +92 -104
  100. package/eigen/Eigen/src/Core/Reshaped.h +215 -271
  101. package/eigen/Eigen/src/Core/ReturnByValue.h +47 -55
  102. package/eigen/Eigen/src/Core/Reverse.h +133 -148
  103. package/eigen/Eigen/src/Core/Select.h +68 -140
  104. package/eigen/Eigen/src/Core/SelfAdjointView.h +254 -290
  105. package/eigen/Eigen/src/Core/SelfCwiseBinaryOp.h +23 -20
  106. package/eigen/Eigen/src/Core/SkewSymmetricMatrix3.h +382 -0
  107. package/eigen/Eigen/src/Core/Solve.h +88 -102
  108. package/eigen/Eigen/src/Core/SolveTriangular.h +126 -124
  109. package/eigen/Eigen/src/Core/SolverBase.h +132 -133
  110. package/eigen/Eigen/src/Core/StableNorm.h +113 -147
  111. package/eigen/Eigen/src/Core/StlIterators.h +404 -248
  112. package/eigen/Eigen/src/Core/Stride.h +90 -92
  113. package/eigen/Eigen/src/Core/Swap.h +70 -39
  114. package/eigen/Eigen/src/Core/Transpose.h +258 -295
  115. package/eigen/Eigen/src/Core/Transpositions.h +270 -333
  116. package/eigen/Eigen/src/Core/TriangularMatrix.h +642 -743
  117. package/eigen/Eigen/src/Core/VectorBlock.h +59 -72
  118. package/eigen/Eigen/src/Core/VectorwiseOp.h +653 -704
  119. package/eigen/Eigen/src/Core/Visitor.h +464 -308
  120. package/eigen/Eigen/src/Core/arch/AVX/Complex.h +380 -187
  121. package/eigen/Eigen/src/Core/arch/AVX/MathFunctions.h +65 -163
  122. package/eigen/Eigen/src/Core/arch/AVX/PacketMath.h +2145 -638
  123. package/eigen/Eigen/src/Core/arch/AVX/Reductions.h +353 -0
  124. package/eigen/Eigen/src/Core/arch/AVX/TypeCasting.h +253 -60
  125. package/eigen/Eigen/src/Core/arch/AVX512/Complex.h +278 -228
  126. package/eigen/Eigen/src/Core/arch/AVX512/GemmKernel.h +1245 -0
  127. package/eigen/Eigen/src/Core/arch/AVX512/MathFunctions.h +48 -269
  128. package/eigen/Eigen/src/Core/arch/AVX512/MathFunctionsFP16.h +75 -0
  129. package/eigen/Eigen/src/Core/arch/AVX512/PacketMath.h +1597 -754
  130. package/eigen/Eigen/src/Core/arch/AVX512/PacketMathFP16.h +1413 -0
  131. package/eigen/Eigen/src/Core/arch/AVX512/Reductions.h +297 -0
  132. package/eigen/Eigen/src/Core/arch/AVX512/TrsmKernel.h +1167 -0
  133. package/eigen/Eigen/src/Core/arch/AVX512/TrsmUnrolls.inc +1219 -0
  134. package/eigen/Eigen/src/Core/arch/AVX512/TypeCasting.h +229 -41
  135. package/eigen/Eigen/src/Core/arch/AVX512/TypeCastingFP16.h +130 -0
  136. package/eigen/Eigen/src/Core/arch/AltiVec/Complex.h +420 -184
  137. package/eigen/Eigen/src/Core/arch/AltiVec/MathFunctions.h +40 -49
  138. package/eigen/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2962 -2213
  139. package/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +196 -212
  140. package/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +713 -441
  141. package/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductMMAbfloat16.h +742 -0
  142. package/eigen/Eigen/src/Core/arch/AltiVec/MatrixVectorProduct.inc +2818 -0
  143. package/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h +2380 -1362
  144. package/eigen/Eigen/src/Core/arch/AltiVec/TypeCasting.h +153 -0
  145. package/eigen/Eigen/src/Core/arch/Default/BFloat16.h +390 -224
  146. package/eigen/Eigen/src/Core/arch/Default/ConjHelper.h +78 -67
  147. package/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1784 -799
  148. package/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +167 -50
  149. package/eigen/Eigen/src/Core/arch/Default/Half.h +528 -379
  150. package/eigen/Eigen/src/Core/arch/Default/Settings.h +10 -12
  151. package/eigen/Eigen/src/Core/arch/GPU/Complex.h +244 -0
  152. package/eigen/Eigen/src/Core/arch/GPU/MathFunctions.h +41 -40
  153. package/eigen/Eigen/src/Core/arch/GPU/PacketMath.h +550 -523
  154. package/eigen/Eigen/src/Core/arch/GPU/Tuple.h +268 -0
  155. package/eigen/Eigen/src/Core/arch/GPU/TypeCasting.h +27 -30
  156. package/eigen/Eigen/src/Core/arch/HIP/hcc/math_constants.h +8 -8
  157. package/eigen/Eigen/src/Core/arch/HVX/PacketMath.h +1088 -0
  158. package/eigen/Eigen/src/Core/arch/LSX/Complex.h +520 -0
  159. package/eigen/Eigen/src/Core/arch/LSX/GeneralBlockPanelKernel.h +23 -0
  160. package/eigen/Eigen/src/Core/arch/LSX/MathFunctions.h +43 -0
  161. package/eigen/Eigen/src/Core/arch/LSX/PacketMath.h +2866 -0
  162. package/eigen/Eigen/src/Core/arch/LSX/TypeCasting.h +526 -0
  163. package/eigen/Eigen/src/Core/arch/MSA/Complex.h +54 -82
  164. package/eigen/Eigen/src/Core/arch/MSA/MathFunctions.h +84 -92
  165. package/eigen/Eigen/src/Core/arch/MSA/PacketMath.h +51 -47
  166. package/eigen/Eigen/src/Core/arch/NEON/Complex.h +454 -306
  167. package/eigen/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +175 -115
  168. package/eigen/Eigen/src/Core/arch/NEON/MathFunctions.h +23 -30
  169. package/eigen/Eigen/src/Core/arch/NEON/PacketMath.h +4366 -2857
  170. package/eigen/Eigen/src/Core/arch/NEON/TypeCasting.h +616 -393
  171. package/eigen/Eigen/src/Core/arch/NEON/UnaryFunctors.h +57 -0
  172. package/eigen/Eigen/src/Core/arch/SSE/Complex.h +350 -198
  173. package/eigen/Eigen/src/Core/arch/SSE/MathFunctions.h +38 -149
  174. package/eigen/Eigen/src/Core/arch/SSE/PacketMath.h +1791 -912
  175. package/eigen/Eigen/src/Core/arch/SSE/Reductions.h +324 -0
  176. package/eigen/Eigen/src/Core/arch/SSE/TypeCasting.h +128 -40
  177. package/eigen/Eigen/src/Core/arch/SVE/MathFunctions.h +10 -6
  178. package/eigen/Eigen/src/Core/arch/SVE/PacketMath.h +156 -234
  179. package/eigen/Eigen/src/Core/arch/SVE/TypeCasting.h +6 -3
  180. package/eigen/Eigen/src/Core/arch/SYCL/InteropHeaders.h +27 -32
  181. package/eigen/Eigen/src/Core/arch/SYCL/MathFunctions.h +119 -117
  182. package/eigen/Eigen/src/Core/arch/SYCL/PacketMath.h +325 -419
  183. package/eigen/Eigen/src/Core/arch/SYCL/TypeCasting.h +15 -17
  184. package/eigen/Eigen/src/Core/arch/ZVector/Complex.h +325 -181
  185. package/eigen/Eigen/src/Core/arch/ZVector/MathFunctions.h +94 -83
  186. package/eigen/Eigen/src/Core/arch/ZVector/PacketMath.h +811 -458
  187. package/eigen/Eigen/src/Core/functors/AssignmentFunctors.h +121 -124
  188. package/eigen/Eigen/src/Core/functors/BinaryFunctors.h +576 -370
  189. package/eigen/Eigen/src/Core/functors/NullaryFunctors.h +194 -109
  190. package/eigen/Eigen/src/Core/functors/StlFunctors.h +95 -112
  191. package/eigen/Eigen/src/Core/functors/TernaryFunctors.h +34 -7
  192. package/eigen/Eigen/src/Core/functors/UnaryFunctors.h +1038 -749
  193. package/eigen/Eigen/src/Core/products/GeneralBlockPanelKernel.h +1883 -1375
  194. package/eigen/Eigen/src/Core/products/GeneralMatrixMatrix.h +312 -370
  195. package/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +189 -176
  196. package/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +84 -81
  197. package/eigen/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +154 -73
  198. package/eigen/Eigen/src/Core/products/GeneralMatrixVector.h +292 -337
  199. package/eigen/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +80 -77
  200. package/eigen/Eigen/src/Core/products/Parallelizer.h +207 -105
  201. package/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +327 -388
  202. package/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +206 -224
  203. package/eigen/Eigen/src/Core/products/SelfadjointMatrixVector.h +138 -147
  204. package/eigen/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +58 -61
  205. package/eigen/Eigen/src/Core/products/SelfadjointProduct.h +71 -71
  206. package/eigen/Eigen/src/Core/products/SelfadjointRank2Update.h +48 -47
  207. package/eigen/Eigen/src/Core/products/TriangularMatrixMatrix.h +294 -369
  208. package/eigen/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +246 -238
  209. package/eigen/Eigen/src/Core/products/TriangularMatrixVector.h +244 -247
  210. package/eigen/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +212 -192
  211. package/eigen/Eigen/src/Core/products/TriangularSolverMatrix.h +328 -277
  212. package/eigen/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +108 -109
  213. package/eigen/Eigen/src/Core/products/TriangularSolverVector.h +68 -94
  214. package/eigen/Eigen/src/Core/util/Assert.h +158 -0
  215. package/eigen/Eigen/src/Core/util/BlasUtil.h +342 -303
  216. package/eigen/Eigen/src/Core/util/ConfigureVectorization.h +348 -317
  217. package/eigen/Eigen/src/Core/util/Constants.h +297 -262
  218. package/eigen/Eigen/src/Core/util/DisableStupidWarnings.h +130 -90
  219. package/eigen/Eigen/src/Core/util/EmulateArray.h +270 -0
  220. package/eigen/Eigen/src/Core/util/ForwardDeclarations.h +449 -247
  221. package/eigen/Eigen/src/Core/util/GpuHipCudaDefines.inc +101 -0
  222. package/eigen/Eigen/src/Core/util/GpuHipCudaUndefines.inc +45 -0
  223. package/eigen/Eigen/src/Core/util/IndexedViewHelper.h +417 -116
  224. package/eigen/Eigen/src/Core/util/IntegralConstant.h +211 -204
  225. package/eigen/Eigen/src/Core/util/MKL_support.h +39 -37
  226. package/eigen/Eigen/src/Core/util/Macros.h +655 -773
  227. package/eigen/Eigen/src/Core/util/MaxSizeVector.h +139 -0
  228. package/eigen/Eigen/src/Core/util/Memory.h +970 -748
  229. package/eigen/Eigen/src/Core/util/Meta.h +581 -633
  230. package/eigen/Eigen/src/Core/util/MoreMeta.h +638 -0
  231. package/eigen/Eigen/src/Core/util/ReenableStupidWarnings.h +32 -19
  232. package/eigen/Eigen/src/Core/util/ReshapedHelper.h +17 -17
  233. package/eigen/Eigen/src/Core/util/Serializer.h +209 -0
  234. package/eigen/Eigen/src/Core/util/StaticAssert.h +50 -166
  235. package/eigen/Eigen/src/Core/util/SymbolicIndex.h +377 -225
  236. package/eigen/Eigen/src/Core/util/XprHelper.h +784 -547
  237. package/eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h +246 -277
  238. package/eigen/Eigen/src/Eigenvalues/ComplexSchur.h +299 -319
  239. package/eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +52 -48
  240. package/eigen/Eigen/src/Eigenvalues/EigenSolver.h +413 -456
  241. package/eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +309 -325
  242. package/eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +157 -171
  243. package/eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h +292 -310
  244. package/eigen/Eigen/src/Eigenvalues/InternalHeaderCheck.h +3 -0
  245. package/eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +89 -105
  246. package/eigen/Eigen/src/Eigenvalues/RealQZ.h +537 -607
  247. package/eigen/Eigen/src/Eigenvalues/RealSchur.h +342 -381
  248. package/eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +41 -35
  249. package/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +541 -595
  250. package/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +47 -44
  251. package/eigen/Eigen/src/Eigenvalues/Tridiagonalization.h +430 -462
  252. package/eigen/Eigen/src/Geometry/AlignedBox.h +226 -227
  253. package/eigen/Eigen/src/Geometry/AngleAxis.h +131 -133
  254. package/eigen/Eigen/src/Geometry/EulerAngles.h +163 -74
  255. package/eigen/Eigen/src/Geometry/Homogeneous.h +285 -333
  256. package/eigen/Eigen/src/Geometry/Hyperplane.h +151 -160
  257. package/eigen/Eigen/src/Geometry/InternalHeaderCheck.h +3 -0
  258. package/eigen/Eigen/src/Geometry/OrthoMethods.h +168 -146
  259. package/eigen/Eigen/src/Geometry/ParametrizedLine.h +127 -127
  260. package/eigen/Eigen/src/Geometry/Quaternion.h +566 -506
  261. package/eigen/Eigen/src/Geometry/Rotation2D.h +107 -105
  262. package/eigen/Eigen/src/Geometry/RotationBase.h +148 -145
  263. package/eigen/Eigen/src/Geometry/Scaling.h +113 -106
  264. package/eigen/Eigen/src/Geometry/Transform.h +858 -936
  265. package/eigen/Eigen/src/Geometry/Translation.h +94 -92
  266. package/eigen/Eigen/src/Geometry/Umeyama.h +79 -84
  267. package/eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h +90 -104
  268. package/eigen/Eigen/src/Householder/BlockHouseholder.h +51 -46
  269. package/eigen/Eigen/src/Householder/Householder.h +102 -124
  270. package/eigen/Eigen/src/Householder/HouseholderSequence.h +412 -453
  271. package/eigen/Eigen/src/Householder/InternalHeaderCheck.h +3 -0
  272. package/eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +149 -162
  273. package/eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +124 -119
  274. package/eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +92 -104
  275. package/eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +251 -243
  276. package/eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +224 -228
  277. package/eigen/Eigen/src/IterativeLinearSolvers/InternalHeaderCheck.h +3 -0
  278. package/eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +178 -227
  279. package/eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +79 -84
  280. package/eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +54 -60
  281. package/eigen/Eigen/src/Jacobi/InternalHeaderCheck.h +3 -0
  282. package/eigen/Eigen/src/Jacobi/Jacobi.h +252 -308
  283. package/eigen/Eigen/src/KLUSupport/InternalHeaderCheck.h +3 -0
  284. package/eigen/Eigen/src/KLUSupport/KLUSupport.h +208 -227
  285. package/eigen/Eigen/src/LU/Determinant.h +50 -69
  286. package/eigen/Eigen/src/LU/FullPivLU.h +545 -596
  287. package/eigen/Eigen/src/LU/InternalHeaderCheck.h +3 -0
  288. package/eigen/Eigen/src/LU/InverseImpl.h +206 -285
  289. package/eigen/Eigen/src/LU/PartialPivLU.h +390 -428
  290. package/eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h +54 -40
  291. package/eigen/Eigen/src/LU/arch/InverseSize4.h +72 -70
  292. package/eigen/Eigen/src/MetisSupport/InternalHeaderCheck.h +3 -0
  293. package/eigen/Eigen/src/MetisSupport/MetisSupport.h +81 -93
  294. package/eigen/Eigen/src/OrderingMethods/Amd.h +243 -265
  295. package/eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h +831 -1004
  296. package/eigen/Eigen/src/OrderingMethods/InternalHeaderCheck.h +3 -0
  297. package/eigen/Eigen/src/OrderingMethods/Ordering.h +112 -119
  298. package/eigen/Eigen/src/PaStiXSupport/InternalHeaderCheck.h +3 -0
  299. package/eigen/Eigen/src/PaStiXSupport/PaStiXSupport.h +524 -570
  300. package/eigen/Eigen/src/PardisoSupport/InternalHeaderCheck.h +3 -0
  301. package/eigen/Eigen/src/PardisoSupport/PardisoSupport.h +385 -430
  302. package/eigen/Eigen/src/QR/ColPivHouseholderQR.h +479 -479
  303. package/eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +120 -56
  304. package/eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h +166 -153
  305. package/eigen/Eigen/src/QR/FullPivHouseholderQR.h +495 -475
  306. package/eigen/Eigen/src/QR/HouseholderQR.h +394 -285
  307. package/eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h +32 -23
  308. package/eigen/Eigen/src/QR/InternalHeaderCheck.h +3 -0
  309. package/eigen/Eigen/src/SPQRSupport/InternalHeaderCheck.h +3 -0
  310. package/eigen/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +244 -264
  311. package/eigen/Eigen/src/SVD/BDCSVD.h +817 -713
  312. package/eigen/Eigen/src/SVD/BDCSVD_LAPACKE.h +174 -0
  313. package/eigen/Eigen/src/SVD/InternalHeaderCheck.h +3 -0
  314. package/eigen/Eigen/src/SVD/JacobiSVD.h +577 -543
  315. package/eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h +85 -49
  316. package/eigen/Eigen/src/SVD/SVDBase.h +242 -182
  317. package/eigen/Eigen/src/SVD/UpperBidiagonalization.h +200 -235
  318. package/eigen/Eigen/src/SparseCholesky/InternalHeaderCheck.h +3 -0
  319. package/eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h +765 -594
  320. package/eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +308 -94
  321. package/eigen/Eigen/src/SparseCore/AmbiVector.h +202 -251
  322. package/eigen/Eigen/src/SparseCore/CompressedStorage.h +184 -252
  323. package/eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +134 -178
  324. package/eigen/Eigen/src/SparseCore/InternalHeaderCheck.h +3 -0
  325. package/eigen/Eigen/src/SparseCore/SparseAssign.h +149 -140
  326. package/eigen/Eigen/src/SparseCore/SparseBlock.h +403 -440
  327. package/eigen/Eigen/src/SparseCore/SparseColEtree.h +100 -112
  328. package/eigen/Eigen/src/SparseCore/SparseCompressedBase.h +525 -303
  329. package/eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +555 -339
  330. package/eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +100 -108
  331. package/eigen/Eigen/src/SparseCore/SparseDenseProduct.h +169 -197
  332. package/eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h +71 -71
  333. package/eigen/Eigen/src/SparseCore/SparseDot.h +49 -47
  334. package/eigen/Eigen/src/SparseCore/SparseFuzzy.h +13 -11
  335. package/eigen/Eigen/src/SparseCore/SparseMap.h +243 -253
  336. package/eigen/Eigen/src/SparseCore/SparseMatrix.h +1603 -1245
  337. package/eigen/Eigen/src/SparseCore/SparseMatrixBase.h +403 -350
  338. package/eigen/Eigen/src/SparseCore/SparsePermutation.h +186 -115
  339. package/eigen/Eigen/src/SparseCore/SparseProduct.h +94 -97
  340. package/eigen/Eigen/src/SparseCore/SparseRedux.h +22 -24
  341. package/eigen/Eigen/src/SparseCore/SparseRef.h +268 -295
  342. package/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h +370 -416
  343. package/eigen/Eigen/src/SparseCore/SparseSolverBase.h +78 -87
  344. package/eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +81 -95
  345. package/eigen/Eigen/src/SparseCore/SparseTranspose.h +62 -71
  346. package/eigen/Eigen/src/SparseCore/SparseTriangularView.h +132 -144
  347. package/eigen/Eigen/src/SparseCore/SparseUtil.h +138 -115
  348. package/eigen/Eigen/src/SparseCore/SparseVector.h +426 -372
  349. package/eigen/Eigen/src/SparseCore/SparseView.h +164 -193
  350. package/eigen/Eigen/src/SparseCore/TriangularSolver.h +129 -170
  351. package/eigen/Eigen/src/SparseLU/InternalHeaderCheck.h +3 -0
  352. package/eigen/Eigen/src/SparseLU/SparseLU.h +756 -710
  353. package/eigen/Eigen/src/SparseLU/SparseLUImpl.h +61 -48
  354. package/eigen/Eigen/src/SparseLU/SparseLU_Memory.h +102 -118
  355. package/eigen/Eigen/src/SparseLU/SparseLU_Structs.h +38 -35
  356. package/eigen/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +245 -301
  357. package/eigen/Eigen/src/SparseLU/SparseLU_Utils.h +44 -49
  358. package/eigen/Eigen/src/SparseLU/SparseLU_column_bmod.h +104 -108
  359. package/eigen/Eigen/src/SparseLU/SparseLU_column_dfs.h +89 -100
  360. package/eigen/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +57 -58
  361. package/eigen/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +43 -55
  362. package/eigen/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +74 -71
  363. package/eigen/Eigen/src/SparseLU/SparseLU_panel_bmod.h +124 -132
  364. package/eigen/Eigen/src/SparseLU/SparseLU_panel_dfs.h +136 -159
  365. package/eigen/Eigen/src/SparseLU/SparseLU_pivotL.h +51 -52
  366. package/eigen/Eigen/src/SparseLU/SparseLU_pruneL.h +67 -73
  367. package/eigen/Eigen/src/SparseLU/SparseLU_relax_snode.h +24 -26
  368. package/eigen/Eigen/src/SparseQR/InternalHeaderCheck.h +3 -0
  369. package/eigen/Eigen/src/SparseQR/SparseQR.h +450 -502
  370. package/eigen/Eigen/src/StlSupport/StdDeque.h +28 -93
  371. package/eigen/Eigen/src/StlSupport/StdList.h +28 -84
  372. package/eigen/Eigen/src/StlSupport/StdVector.h +28 -108
  373. package/eigen/Eigen/src/StlSupport/details.h +48 -50
  374. package/eigen/Eigen/src/SuperLUSupport/InternalHeaderCheck.h +3 -0
  375. package/eigen/Eigen/src/SuperLUSupport/SuperLUSupport.h +634 -730
  376. package/eigen/Eigen/src/ThreadPool/Barrier.h +70 -0
  377. package/eigen/Eigen/src/ThreadPool/CoreThreadPoolDevice.h +336 -0
  378. package/eigen/Eigen/src/ThreadPool/EventCount.h +241 -0
  379. package/eigen/Eigen/src/ThreadPool/ForkJoin.h +140 -0
  380. package/eigen/Eigen/src/ThreadPool/InternalHeaderCheck.h +4 -0
  381. package/eigen/Eigen/src/ThreadPool/NonBlockingThreadPool.h +587 -0
  382. package/eigen/Eigen/src/ThreadPool/RunQueue.h +230 -0
  383. package/eigen/Eigen/src/ThreadPool/ThreadCancel.h +21 -0
  384. package/eigen/Eigen/src/ThreadPool/ThreadEnvironment.h +43 -0
  385. package/eigen/Eigen/src/ThreadPool/ThreadLocal.h +289 -0
  386. package/eigen/Eigen/src/ThreadPool/ThreadPoolInterface.h +50 -0
  387. package/eigen/Eigen/src/ThreadPool/ThreadYield.h +16 -0
  388. package/eigen/Eigen/src/UmfPackSupport/InternalHeaderCheck.h +3 -0
  389. package/eigen/Eigen/src/UmfPackSupport/UmfPackSupport.h +428 -464
  390. package/eigen/Eigen/src/misc/Image.h +41 -43
  391. package/eigen/Eigen/src/misc/InternalHeaderCheck.h +3 -0
  392. package/eigen/Eigen/src/misc/Kernel.h +39 -41
  393. package/eigen/Eigen/src/misc/RealSvd2x2.h +19 -21
  394. package/eigen/Eigen/src/misc/blas.h +83 -426
  395. package/eigen/Eigen/src/misc/lapacke.h +9972 -16179
  396. package/eigen/Eigen/src/misc/lapacke_helpers.h +163 -0
  397. package/eigen/Eigen/src/misc/lapacke_mangling.h +4 -5
  398. package/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.inc +344 -0
  399. package/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.inc +544 -0
  400. package/eigen/Eigen/src/plugins/{BlockMethods.h → BlockMethods.inc} +434 -506
  401. package/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.inc +116 -0
  402. package/eigen/Eigen/src/plugins/{CommonCwiseUnaryOps.h → CommonCwiseUnaryOps.inc} +58 -68
  403. package/eigen/Eigen/src/plugins/IndexedViewMethods.inc +192 -0
  404. package/eigen/Eigen/src/plugins/InternalHeaderCheck.inc +3 -0
  405. package/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.inc +331 -0
  406. package/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.inc +118 -0
  407. package/eigen/Eigen/src/plugins/ReshapedMethods.inc +133 -0
  408. package/package.json +1 -1
  409. package/eigen/COPYING.APACHE +0 -203
  410. package/eigen/COPYING.BSD +0 -26
  411. package/eigen/COPYING.GPL +0 -674
  412. package/eigen/COPYING.LGPL +0 -502
  413. package/eigen/COPYING.MINPACK +0 -51
  414. package/eigen/COPYING.MPL2 +0 -373
  415. package/eigen/COPYING.README +0 -18
  416. package/eigen/Eigen/src/Core/BooleanRedux.h +0 -162
  417. package/eigen/Eigen/src/Core/arch/CUDA/Complex.h +0 -258
  418. package/eigen/Eigen/src/Core/arch/Default/TypeCasting.h +0 -120
  419. package/eigen/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +0 -694
  420. package/eigen/Eigen/src/Core/util/NonMPL2.h +0 -3
  421. package/eigen/Eigen/src/SparseCore/MappedSparseMatrix.h +0 -67
  422. package/eigen/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +0 -280
  423. package/eigen/Eigen/src/misc/lapack.h +0 -152
  424. package/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h +0 -358
  425. package/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h +0 -696
  426. package/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h +0 -115
  427. package/eigen/Eigen/src/plugins/IndexedViewMethods.h +0 -262
  428. package/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h +0 -152
  429. package/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h +0 -95
  430. package/eigen/Eigen/src/plugins/ReshapedMethods.h +0 -149
  431. package/eigen/README.md +0 -5
@@ -13,20 +13,21 @@
13
13
  #include "src/Core/util/DisableStupidWarnings.h"
14
14
 
15
15
  /** \defgroup Jacobi_Module Jacobi module
16
- * This module provides Jacobi and Givens rotations.
17
- *
18
- * \code
19
- * #include <Eigen/Jacobi>
20
- * \endcode
21
- *
22
- * In addition to listed classes, it defines the two following MatrixBase methods to apply a Jacobi or Givens rotation:
23
- * - MatrixBase::applyOnTheLeft()
24
- * - MatrixBase::applyOnTheRight().
25
- */
26
-
16
+ * This module provides Jacobi and Givens rotations.
17
+ *
18
+ * \code
19
+ * #include <Eigen/Jacobi>
20
+ * \endcode
21
+ *
22
+ * In addition to listed classes, it defines the two following MatrixBase methods to apply a Jacobi or Givens rotation:
23
+ * - MatrixBase::applyOnTheLeft()
24
+ * - MatrixBase::applyOnTheRight().
25
+ */
26
+
27
+ // IWYU pragma: begin_exports
27
28
  #include "src/Jacobi/Jacobi.h"
29
+ // IWYU pragma: end_exports
28
30
 
29
31
  #include "src/Core/util/ReenableStupidWarnings.h"
30
32
 
31
- #endif // EIGEN_JACOBI_MODULE_H
32
-
33
+ #endif // EIGEN_JACOBI_MODULE_H
@@ -8,34 +8,36 @@
8
8
  #ifndef EIGEN_KLUSUPPORT_MODULE_H
9
9
  #define EIGEN_KLUSUPPORT_MODULE_H
10
10
 
11
- #include <Eigen/SparseCore>
11
+ #include "SparseCore"
12
12
 
13
- #include <Eigen/src/Core/util/DisableStupidWarnings.h>
13
+ #include "src/Core/util/DisableStupidWarnings.h"
14
14
 
15
15
  extern "C" {
16
16
  #include <btf.h>
17
17
  #include <klu.h>
18
- }
18
+ }
19
19
 
20
20
  /** \ingroup Support_modules
21
- * \defgroup KLUSupport_Module KLUSupport module
22
- *
23
- * This module provides an interface to the KLU library which is part of the <a href="http://www.suitesparse.com">suitesparse</a> package.
24
- * It provides the following factorization class:
25
- * - class KLU: a sparse LU factorization, well-suited for circuit simulation.
26
- *
27
- * \code
28
- * #include <Eigen/KLUSupport>
29
- * \endcode
30
- *
31
- * In order to use this module, the klu and btf headers must be accessible from the include paths, and your binary must be linked to the klu library and its dependencies.
32
- * The dependencies depend on how umfpack has been compiled.
33
- * For a cmake based project, you can use our FindKLU.cmake module to help you in this task.
34
- *
35
- */
36
-
21
+ * \defgroup KLUSupport_Module KLUSupport module
22
+ *
23
+ * This module provides an interface to the KLU library which is part of the <a
24
+ * href="http://www.suitesparse.com">suitesparse</a> package. It provides the following factorization class:
25
+ * - class KLU: a sparse LU factorization, well-suited for circuit simulation.
26
+ *
27
+ * \code
28
+ * #include <Eigen/KLUSupport>
29
+ * \endcode
30
+ *
31
+ * In order to use this module, the klu and btf headers must be accessible from the include paths, and your binary must
32
+ * be linked to the klu library and its dependencies. The dependencies depend on how umfpack has been compiled. For a
33
+ * cmake based project, you can use our FindKLU.cmake module to help you in this task.
34
+ *
35
+ */
36
+
37
+ // IWYU pragma: begin_exports
37
38
  #include "src/KLUSupport/KLUSupport.h"
39
+ // IWYU pragma: end_exports
38
40
 
39
- #include <Eigen/src/Core/util/ReenableStupidWarnings.h>
41
+ #include "src/Core/util/ReenableStupidWarnings.h"
40
42
 
41
- #endif // EIGEN_KLUSUPPORT_MODULE_H
43
+ #endif // EIGEN_KLUSUPPORT_MODULE_H
package/eigen/Eigen/LU CHANGED
@@ -13,35 +13,34 @@
13
13
  #include "src/Core/util/DisableStupidWarnings.h"
14
14
 
15
15
  /** \defgroup LU_Module LU module
16
- * This module includes %LU decomposition and related notions such as matrix inversion and determinant.
17
- * This module defines the following MatrixBase methods:
18
- * - MatrixBase::inverse()
19
- * - MatrixBase::determinant()
20
- *
21
- * \code
22
- * #include <Eigen/LU>
23
- * \endcode
24
- */
16
+ * This module includes %LU decomposition and related notions such as matrix inversion and determinant.
17
+ * This module defines the following MatrixBase methods:
18
+ * - MatrixBase::inverse()
19
+ * - MatrixBase::determinant()
20
+ *
21
+ * \code
22
+ * #include <Eigen/LU>
23
+ * \endcode
24
+ */
25
25
 
26
26
  #include "src/misc/Kernel.h"
27
27
  #include "src/misc/Image.h"
28
+
29
+ // IWYU pragma: begin_exports
28
30
  #include "src/LU/FullPivLU.h"
29
31
  #include "src/LU/PartialPivLU.h"
30
32
  #ifdef EIGEN_USE_LAPACKE
31
- #ifdef EIGEN_USE_MKL
32
- #include "mkl_lapacke.h"
33
- #else
34
- #include "src/misc/lapacke.h"
35
- #endif
33
+ #include "src/misc/lapacke_helpers.h"
36
34
  #include "src/LU/PartialPivLU_LAPACKE.h"
37
35
  #endif
38
36
  #include "src/LU/Determinant.h"
39
37
  #include "src/LU/InverseImpl.h"
40
38
 
41
39
  #if defined EIGEN_VECTORIZE_SSE || defined EIGEN_VECTORIZE_NEON
42
- #include "src/LU/arch/InverseSize4.h"
40
+ #include "src/LU/arch/InverseSize4.h"
43
41
  #endif
42
+ // IWYU pragma: end_exports
44
43
 
45
44
  #include "src/Core/util/ReenableStupidWarnings.h"
46
45
 
47
- #endif // EIGEN_LU_MODULE_H
46
+ #endif // EIGEN_LU_MODULE_H
@@ -16,20 +16,20 @@ extern "C" {
16
16
  #include <metis.h>
17
17
  }
18
18
 
19
-
20
19
  /** \ingroup Support_modules
21
- * \defgroup MetisSupport_Module MetisSupport module
22
- *
23
- * \code
24
- * #include <Eigen/MetisSupport>
25
- * \endcode
26
- * This module defines an interface to the METIS reordering package (http://glaros.dtc.umn.edu/gkhome/views/metis).
27
- * It can be used just as any other built-in method as explained in \link OrderingMethods_Module here. \endlink
28
- */
29
-
30
-
20
+ * \defgroup MetisSupport_Module MetisSupport module
21
+ *
22
+ * \code
23
+ * #include <Eigen/MetisSupport>
24
+ * \endcode
25
+ * This module defines an interface to the METIS reordering package (http://glaros.dtc.umn.edu/gkhome/views/metis).
26
+ * It can be used just as any other built-in method as explained in \link OrderingMethods_Module here. \endlink
27
+ */
28
+
29
+ // IWYU pragma: begin_exports
31
30
  #include "src/MetisSupport/MetisSupport.h"
31
+ // IWYU pragma: end_exports
32
32
 
33
33
  #include "src/Core/util/ReenableStupidWarnings.h"
34
34
 
35
- #endif // EIGEN_METISSUPPORT_MODULE_H
35
+ #endif // EIGEN_METISSUPPORT_MODULE_H
@@ -12,59 +12,62 @@
12
12
 
13
13
  #include "src/Core/util/DisableStupidWarnings.h"
14
14
 
15
- /**
16
- * \defgroup OrderingMethods_Module OrderingMethods module
17
- *
18
- * This module is currently for internal use only
19
- *
20
- * It defines various built-in and external ordering methods for sparse matrices.
21
- * They are typically used to reduce the number of elements during
22
- * the sparse matrix decomposition (LLT, LU, QR).
23
- * Precisely, in a preprocessing step, a permutation matrix P is computed using
24
- * those ordering methods and applied to the columns of the matrix.
25
- * Using for instance the sparse Cholesky decomposition, it is expected that
26
- * the nonzeros elements in LLT(A*P) will be much smaller than that in LLT(A).
27
- *
28
- *
29
- * Usage :
30
- * \code
31
- * #include <Eigen/OrderingMethods>
32
- * \endcode
33
- *
34
- * A simple usage is as a template parameter in the sparse decomposition classes :
35
- *
36
- * \code
37
- * SparseLU<MatrixType, COLAMDOrdering<int> > solver;
38
- * \endcode
39
- *
40
- * \code
41
- * SparseQR<MatrixType, COLAMDOrdering<int> > solver;
42
- * \endcode
43
- *
44
- * It is possible as well to call directly a particular ordering method for your own purpose,
45
- * \code
46
- * AMDOrdering<int> ordering;
47
- * PermutationMatrix<Dynamic, Dynamic, int> perm;
48
- * SparseMatrix<double> A;
49
- * //Fill the matrix ...
50
- *
51
- * ordering(A, perm); // Call AMD
52
- * \endcode
53
- *
54
- * \note Some of these methods (like AMD or METIS), need the sparsity pattern
55
- * of the input matrix to be symmetric. When the matrix is structurally unsymmetric,
56
- * Eigen computes internally the pattern of \f$A^T*A\f$ before calling the method.
57
- * If your matrix is already symmetric (at leat in structure), you can avoid that
58
- * by calling the method with a SelfAdjointView type.
59
- *
60
- * \code
61
- * // Call the ordering on the pattern of the lower triangular matrix A
62
- * ordering(A.selfadjointView<Lower>(), perm);
63
- * \endcode
64
- */
15
+ /**
16
+ * \defgroup OrderingMethods_Module OrderingMethods module
17
+ *
18
+ * This module is currently for internal use only
19
+ *
20
+ * It defines various built-in and external ordering methods for sparse matrices.
21
+ * They are typically used to reduce the number of elements during
22
+ * the sparse matrix decomposition (LLT, LU, QR).
23
+ * Precisely, in a preprocessing step, a permutation matrix P is computed using
24
+ * those ordering methods and applied to the columns of the matrix.
25
+ * Using for instance the sparse Cholesky decomposition, it is expected that
26
+ * the nonzeros elements in LLT(A*P) will be much smaller than that in LLT(A).
27
+ *
28
+ *
29
+ * Usage :
30
+ * \code
31
+ * #include <Eigen/OrderingMethods>
32
+ * \endcode
33
+ *
34
+ * A simple usage is as a template parameter in the sparse decomposition classes :
35
+ *
36
+ * \code
37
+ * SparseLU<MatrixType, COLAMDOrdering<int> > solver;
38
+ * \endcode
39
+ *
40
+ * \code
41
+ * SparseQR<MatrixType, COLAMDOrdering<int> > solver;
42
+ * \endcode
43
+ *
44
+ * It is possible as well to call directly a particular ordering method for your own purpose,
45
+ * \code
46
+ * AMDOrdering<int> ordering;
47
+ * PermutationMatrix<Dynamic, Dynamic, int> perm;
48
+ * SparseMatrix<double> A;
49
+ * //Fill the matrix ...
50
+ *
51
+ * ordering(A, perm); // Call AMD
52
+ * \endcode
53
+ *
54
+ * \note Some of these methods (like AMD or METIS), need the sparsity pattern
55
+ * of the input matrix to be symmetric. When the matrix is structurally unsymmetric,
56
+ * Eigen computes internally the pattern of \f$A^T*A\f$ before calling the method.
57
+ * If your matrix is already symmetric (at least in structure), you can avoid that
58
+ * by calling the method with a SelfAdjointView type.
59
+ *
60
+ * \code
61
+ * // Call the ordering on the pattern of the lower triangular matrix A
62
+ * ordering(A.selfadjointView<Lower>(), perm);
63
+ * \endcode
64
+ */
65
65
 
66
+ // IWYU pragma: begin_exports
66
67
  #include "src/OrderingMethods/Amd.h"
67
68
  #include "src/OrderingMethods/Ordering.h"
69
+ // IWYU pragma: end_exports
70
+
68
71
  #include "src/Core/util/ReenableStupidWarnings.h"
69
72
 
70
- #endif // EIGEN_ORDERINGMETHODS_MODULE_H
73
+ #endif // EIGEN_ORDERINGMETHODS_MODULE_H
@@ -22,28 +22,30 @@ extern "C" {
22
22
  #endif
23
23
 
24
24
  /** \ingroup Support_modules
25
- * \defgroup PaStiXSupport_Module PaStiXSupport module
26
- *
27
- * This module provides an interface to the <a href="http://pastix.gforge.inria.fr/">PaSTiX</a> library.
28
- * PaSTiX is a general \b supernodal, \b parallel and \b opensource sparse solver.
29
- * It provides the two following main factorization classes:
30
- * - class PastixLLT : a supernodal, parallel LLt Cholesky factorization.
31
- * - class PastixLDLT: a supernodal, parallel LDLt Cholesky factorization.
32
- * - class PastixLU : a supernodal, parallel LU factorization (optimized for a symmetric pattern).
33
- *
34
- * \code
35
- * #include <Eigen/PaStiXSupport>
36
- * \endcode
37
- *
38
- * In order to use this module, the PaSTiX headers must be accessible from the include paths, and your binary must be linked to the PaSTiX library and its dependencies.
39
- * This wrapper resuires PaStiX version 5.x compiled without MPI support.
40
- * The dependencies depend on how PaSTiX has been compiled.
41
- * For a cmake based project, you can use our FindPaSTiX.cmake module to help you in this task.
42
- *
43
- */
44
-
25
+ * \defgroup PaStiXSupport_Module PaStiXSupport module
26
+ *
27
+ * This module provides an interface to the <a href="http://pastix.gforge.inria.fr/">PaSTiX</a> library.
28
+ * PaSTiX is a general \b supernodal, \b parallel and \b opensource sparse solver.
29
+ * It provides the two following main factorization classes:
30
+ * - class PastixLLT : a supernodal, parallel LLt Cholesky factorization.
31
+ * - class PastixLDLT: a supernodal, parallel LDLt Cholesky factorization.
32
+ * - class PastixLU : a supernodal, parallel LU factorization (optimized for a symmetric pattern).
33
+ *
34
+ * \code
35
+ * #include <Eigen/PaStiXSupport>
36
+ * \endcode
37
+ *
38
+ * In order to use this module, the PaSTiX headers must be accessible from the include paths, and your binary must be
39
+ * linked to the PaSTiX library and its dependencies. This wrapper resuires PaStiX version 5.x compiled without MPI
40
+ * support. The dependencies depend on how PaSTiX has been compiled. For a cmake based project, you can use our
41
+ * FindPaSTiX.cmake module to help you in this task.
42
+ *
43
+ */
44
+
45
+ // IWYU pragma: begin_exports
45
46
  #include "src/PaStiXSupport/PaStiXSupport.h"
47
+ // IWYU pragma: end_exports
46
48
 
47
49
  #include "src/Core/util/ReenableStupidWarnings.h"
48
50
 
49
- #endif // EIGEN_PASTIXSUPPORT_MODULE_H
51
+ #endif // EIGEN_PASTIXSUPPORT_MODULE_H
@@ -15,21 +15,24 @@
15
15
  #include <mkl_pardiso.h>
16
16
 
17
17
  /** \ingroup Support_modules
18
- * \defgroup PardisoSupport_Module PardisoSupport module
19
- *
20
- * This module brings support for the Intel(R) MKL PARDISO direct sparse solvers.
21
- *
22
- * \code
23
- * #include <Eigen/PardisoSupport>
24
- * \endcode
25
- *
26
- * 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.
27
- * See this \ref TopicUsingIntelMKL "page" for more information on MKL-Eigen integration.
28
- *
29
- */
30
-
18
+ * \defgroup PardisoSupport_Module PardisoSupport module
19
+ *
20
+ * This module brings support for the Intel(R) MKL PARDISO direct sparse solvers.
21
+ *
22
+ * \code
23
+ * #include <Eigen/PardisoSupport>
24
+ * \endcode
25
+ *
26
+ * In order to use this module, the MKL headers must be accessible from the include paths, and your binary must be
27
+ * linked to the MKL library and its dependencies. See this \ref TopicUsingIntelMKL "page" for more information on
28
+ * MKL-Eigen integration.
29
+ *
30
+ */
31
+
32
+ // IWYU pragma: begin_exports
31
33
  #include "src/PardisoSupport/PardisoSupport.h"
34
+ // IWYU pragma: end_exports
32
35
 
33
36
  #include "src/Core/util/ReenableStupidWarnings.h"
34
37
 
35
- #endif // EIGEN_PARDISOSUPPORT_MODULE_H
38
+ #endif // EIGEN_PARDISOSUPPORT_MODULE_H
package/eigen/Eigen/QR CHANGED
@@ -17,34 +17,32 @@
17
17
  #include "src/Core/util/DisableStupidWarnings.h"
18
18
 
19
19
  /** \defgroup QR_Module QR module
20
- *
21
- *
22
- *
23
- * This module provides various QR decompositions
24
- * This module also provides some MatrixBase methods, including:
25
- * - MatrixBase::householderQr()
26
- * - MatrixBase::colPivHouseholderQr()
27
- * - MatrixBase::fullPivHouseholderQr()
28
- *
29
- * \code
30
- * #include <Eigen/QR>
31
- * \endcode
32
- */
33
-
20
+ *
21
+ *
22
+ *
23
+ * This module provides various QR decompositions
24
+ * This module also provides some MatrixBase methods, including:
25
+ * - MatrixBase::householderQr()
26
+ * - MatrixBase::colPivHouseholderQr()
27
+ * - MatrixBase::fullPivHouseholderQr()
28
+ *
29
+ * \code
30
+ * #include <Eigen/QR>
31
+ * \endcode
32
+ */
33
+
34
+ // IWYU pragma: begin_exports
34
35
  #include "src/QR/HouseholderQR.h"
35
36
  #include "src/QR/FullPivHouseholderQR.h"
36
37
  #include "src/QR/ColPivHouseholderQR.h"
37
38
  #include "src/QR/CompleteOrthogonalDecomposition.h"
38
39
  #ifdef EIGEN_USE_LAPACKE
39
- #ifdef EIGEN_USE_MKL
40
- #include "mkl_lapacke.h"
41
- #else
42
- #include "src/misc/lapacke.h"
43
- #endif
40
+ #include "src/misc/lapacke_helpers.h"
44
41
  #include "src/QR/HouseholderQR_LAPACKE.h"
45
42
  #include "src/QR/ColPivHouseholderQR_LAPACKE.h"
46
43
  #endif
44
+ // IWYU pragma: end_exports
47
45
 
48
46
  #include "src/Core/util/ReenableStupidWarnings.h"
49
47
 
50
- #endif // EIGEN_QR_MODULE_H
48
+ #endif // EIGEN_QR_MODULE_H
@@ -14,19 +14,12 @@
14
14
 
15
15
  #include "src/Core/util/DisableStupidWarnings.h"
16
16
 
17
- void *qMalloc(std::size_t size)
18
- {
19
- return Eigen::internal::aligned_malloc(size);
20
- }
17
+ void *qMalloc(std::size_t size) { return Eigen::internal::aligned_malloc(size); }
21
18
 
22
- void qFree(void *ptr)
23
- {
24
- Eigen::internal::aligned_free(ptr);
25
- }
19
+ void qFree(void *ptr) { Eigen::internal::aligned_free(ptr); }
26
20
 
27
- void *qRealloc(void *ptr, std::size_t size)
28
- {
29
- void* newPtr = Eigen::internal::aligned_malloc(size);
21
+ void *qRealloc(void *ptr, std::size_t size) {
22
+ void *newPtr = Eigen::internal::aligned_malloc(size);
30
23
  std::memcpy(newPtr, ptr, size);
31
24
  Eigen::internal::aligned_free(ptr);
32
25
  return newPtr;
@@ -36,4 +29,4 @@ void *qRealloc(void *ptr, std::size_t size)
36
29
 
37
30
  #endif
38
31
 
39
- #endif // EIGEN_QTMALLOC_MODULE_H
32
+ #endif // EIGEN_QTMALLOC_MODULE_H
@@ -15,20 +15,27 @@
15
15
  #include "SuiteSparseQR.hpp"
16
16
 
17
17
  /** \ingroup Support_modules
18
- * \defgroup SPQRSupport_Module SuiteSparseQR module
19
- *
20
- * This module provides an interface to the SPQR library, which is part of the <a href="http://www.suitesparse.com">suitesparse</a> package.
21
- *
22
- * \code
23
- * #include <Eigen/SPQRSupport>
24
- * \endcode
25
- *
26
- * 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,...).
27
- * For a cmake based project, you can use our FindSPQR.cmake and FindCholmod.Cmake modules
28
- *
29
- */
30
-
31
- #include "src/CholmodSupport/CholmodSupport.h"
18
+ * \defgroup SPQRSupport_Module SuiteSparseQR module
19
+ *
20
+ * This module provides an interface to the SPQR library, which is part of the <a
21
+ * href="http://www.suitesparse.com">suitesparse</a> package.
22
+ *
23
+ * \code
24
+ * #include <Eigen/SPQRSupport>
25
+ * \endcode
26
+ *
27
+ * In order to use this module, the SPQR headers must be accessible from the include paths, and your binary must be
28
+ * linked to the SPQR library and its dependencies (Cholmod, AMD, COLAMD,...). For a cmake based project, you can use
29
+ * our FindSPQR.cmake and FindCholmod.Cmake modules
30
+ *
31
+ */
32
+
33
+ #include "CholmodSupport"
34
+
35
+ // IWYU pragma: begin_exports
32
36
  #include "src/SPQRSupport/SuiteSparseQRSupport.h"
37
+ // IWYU pragma: end_exports
38
+
39
+ #include "src/Core/util/ReenableStupidWarnings.h"
33
40
 
34
41
  #endif
package/eigen/Eigen/SVD CHANGED
@@ -15,36 +15,42 @@
15
15
  #include "src/Core/util/DisableStupidWarnings.h"
16
16
 
17
17
  /** \defgroup SVD_Module SVD module
18
- *
19
- *
20
- *
21
- * This module provides SVD decomposition for matrices (both real and complex).
22
- * Two decomposition algorithms are provided:
23
- * - JacobiSVD implementing two-sided Jacobi iterations is numerically very accurate, fast for small matrices, but very slow for larger ones.
24
- * - BDCSVD implementing a recursive divide & conquer strategy on top of an upper-bidiagonalization which remains fast for large problems.
25
- * These decompositions are accessible via the respective classes and following MatrixBase methods:
26
- * - MatrixBase::jacobiSvd()
27
- * - MatrixBase::bdcSvd()
28
- *
29
- * \code
30
- * #include <Eigen/SVD>
31
- * \endcode
32
- */
18
+ *
19
+ *
20
+ *
21
+ * This module provides SVD decomposition for matrices (both real and complex).
22
+ * Two decomposition algorithms are provided:
23
+ * - JacobiSVD implementing two-sided Jacobi iterations is numerically very accurate, fast for small matrices, but very
24
+ * slow for larger ones.
25
+ * - BDCSVD implementing a recursive divide & conquer strategy on top of an upper-bidiagonalization which remains fast
26
+ * for large problems. These decompositions are accessible via the respective classes and following MatrixBase methods:
27
+ * - MatrixBase::jacobiSvd()
28
+ * - MatrixBase::bdcSvd()
29
+ *
30
+ * \code
31
+ * #include <Eigen/SVD>
32
+ * \endcode
33
+ */
33
34
 
35
+ // IWYU pragma: begin_exports
34
36
  #include "src/misc/RealSvd2x2.h"
35
37
  #include "src/SVD/UpperBidiagonalization.h"
36
38
  #include "src/SVD/SVDBase.h"
37
39
  #include "src/SVD/JacobiSVD.h"
38
40
  #include "src/SVD/BDCSVD.h"
39
- #if defined(EIGEN_USE_LAPACKE) && !defined(EIGEN_USE_LAPACKE_STRICT)
41
+ #ifdef EIGEN_USE_LAPACKE
40
42
  #ifdef EIGEN_USE_MKL
41
43
  #include "mkl_lapacke.h"
42
44
  #else
43
45
  #include "src/misc/lapacke.h"
44
46
  #endif
47
+ #ifndef EIGEN_USE_LAPACKE_STRICT
45
48
  #include "src/SVD/JacobiSVD_LAPACKE.h"
46
49
  #endif
50
+ #include "src/SVD/BDCSVD_LAPACKE.h"
51
+ #endif
52
+ // IWYU pragma: end_exports
47
53
 
48
54
  #include "src/Core/util/ReenableStupidWarnings.h"
49
55
 
50
- #endif // EIGEN_SVD_MODULE_H
56
+ #endif // EIGEN_SVD_MODULE_H
@@ -30,5 +30,4 @@
30
30
  #include "SparseQR"
31
31
  #include "IterativeLinearSolvers"
32
32
 
33
- #endif // EIGEN_SPARSE_MODULE_H
34
-
33
+ #endif // EIGEN_SPARSE_MODULE_H
@@ -15,23 +15,26 @@
15
15
 
16
16
  #include "src/Core/util/DisableStupidWarnings.h"
17
17
 
18
- /**
19
- * \defgroup SparseCholesky_Module SparseCholesky module
20
- *
21
- * This module currently provides two variants of the direct sparse Cholesky decomposition for selfadjoint (hermitian) matrices.
22
- * Those decompositions are accessible via the following classes:
23
- * - SimplicialLLt,
24
- * - SimplicialLDLt
25
- *
26
- * Such problems can also be solved using the ConjugateGradient solver from the IterativeLinearSolvers module.
27
- *
28
- * \code
29
- * #include <Eigen/SparseCholesky>
30
- * \endcode
31
- */
18
+ /**
19
+ * \defgroup SparseCholesky_Module SparseCholesky module
20
+ *
21
+ * This module currently provides two variants of the direct sparse Cholesky decomposition for selfadjoint (hermitian)
22
+ * matrices. Those decompositions are accessible via the following classes:
23
+ * - SimplicialLLt,
24
+ * - SimplicialLDLt
25
+ *
26
+ * Such problems can also be solved using the ConjugateGradient solver from the IterativeLinearSolvers module.
27
+ *
28
+ * \code
29
+ * #include <Eigen/SparseCholesky>
30
+ * \endcode
31
+ */
32
32
 
33
+ // IWYU pragma: begin_exports
33
34
  #include "src/SparseCholesky/SimplicialCholesky.h"
34
35
  #include "src/SparseCholesky/SimplicialCholesky_impl.h"
36
+ // IWYU pragma: end_exports
37
+
35
38
  #include "src/Core/util/ReenableStupidWarnings.h"
36
39
 
37
- #endif // EIGEN_SPARSECHOLESKY_MODULE_H
40
+ #endif // EIGEN_SPARSECHOLESKY_MODULE_H