pylibsparseir 0.1.0__cp312-cp312-macosx_15_0_arm64.whl → 0.6.0__cp312-cp312-macosx_15_0_arm64.whl

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.

Potentially problematic release.


This version of pylibsparseir might be problematic. Click here for more details.

Files changed (549) hide show
  1. include/eigen3/Eigen/Cholesky +45 -0
  2. include/eigen3/Eigen/CholmodSupport +48 -0
  3. include/eigen3/Eigen/Core +384 -0
  4. include/eigen3/Eigen/Dense +7 -0
  5. include/eigen3/Eigen/Eigen +2 -0
  6. include/eigen3/Eigen/Eigenvalues +60 -0
  7. include/eigen3/Eigen/Geometry +59 -0
  8. include/eigen3/Eigen/Householder +29 -0
  9. include/eigen3/Eigen/IterativeLinearSolvers +48 -0
  10. include/eigen3/Eigen/Jacobi +32 -0
  11. include/eigen3/Eigen/KLUSupport +41 -0
  12. include/eigen3/Eigen/LU +47 -0
  13. include/eigen3/Eigen/MetisSupport +35 -0
  14. include/eigen3/Eigen/OrderingMethods +70 -0
  15. include/eigen3/Eigen/PaStiXSupport +49 -0
  16. include/eigen3/Eigen/PardisoSupport +35 -0
  17. include/eigen3/Eigen/QR +50 -0
  18. include/eigen3/Eigen/QtAlignedMalloc +39 -0
  19. include/eigen3/Eigen/SPQRSupport +34 -0
  20. include/eigen3/Eigen/SVD +50 -0
  21. include/eigen3/Eigen/Sparse +34 -0
  22. include/eigen3/Eigen/SparseCholesky +37 -0
  23. include/eigen3/Eigen/SparseCore +69 -0
  24. include/eigen3/Eigen/SparseLU +50 -0
  25. include/eigen3/Eigen/SparseQR +36 -0
  26. include/eigen3/Eigen/StdDeque +27 -0
  27. include/eigen3/Eigen/StdList +26 -0
  28. include/eigen3/Eigen/StdVector +27 -0
  29. include/eigen3/Eigen/SuperLUSupport +64 -0
  30. include/eigen3/Eigen/UmfPackSupport +40 -0
  31. include/eigen3/Eigen/src/Cholesky/LDLT.h +688 -0
  32. include/eigen3/Eigen/src/Cholesky/LLT.h +558 -0
  33. include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
  34. include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
  35. include/eigen3/Eigen/src/Core/ArithmeticSequence.h +413 -0
  36. include/eigen3/Eigen/src/Core/Array.h +417 -0
  37. include/eigen3/Eigen/src/Core/ArrayBase.h +226 -0
  38. include/eigen3/Eigen/src/Core/ArrayWrapper.h +209 -0
  39. include/eigen3/Eigen/src/Core/Assign.h +90 -0
  40. include/eigen3/Eigen/src/Core/AssignEvaluator.h +1010 -0
  41. include/eigen3/Eigen/src/Core/Assign_MKL.h +178 -0
  42. include/eigen3/Eigen/src/Core/BandMatrix.h +353 -0
  43. include/eigen3/Eigen/src/Core/Block.h +448 -0
  44. include/eigen3/Eigen/src/Core/BooleanRedux.h +162 -0
  45. include/eigen3/Eigen/src/Core/CommaInitializer.h +164 -0
  46. include/eigen3/Eigen/src/Core/ConditionEstimator.h +175 -0
  47. include/eigen3/Eigen/src/Core/CoreEvaluators.h +1741 -0
  48. include/eigen3/Eigen/src/Core/CoreIterators.h +132 -0
  49. include/eigen3/Eigen/src/Core/CwiseBinaryOp.h +183 -0
  50. include/eigen3/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
  51. include/eigen3/Eigen/src/Core/CwiseTernaryOp.h +197 -0
  52. include/eigen3/Eigen/src/Core/CwiseUnaryOp.h +103 -0
  53. include/eigen3/Eigen/src/Core/CwiseUnaryView.h +132 -0
  54. include/eigen3/Eigen/src/Core/DenseBase.h +701 -0
  55. include/eigen3/Eigen/src/Core/DenseCoeffsBase.h +685 -0
  56. include/eigen3/Eigen/src/Core/DenseStorage.h +652 -0
  57. include/eigen3/Eigen/src/Core/Diagonal.h +258 -0
  58. include/eigen3/Eigen/src/Core/DiagonalMatrix.h +391 -0
  59. include/eigen3/Eigen/src/Core/DiagonalProduct.h +28 -0
  60. include/eigen3/Eigen/src/Core/Dot.h +318 -0
  61. include/eigen3/Eigen/src/Core/EigenBase.h +160 -0
  62. include/eigen3/Eigen/src/Core/ForceAlignedAccess.h +150 -0
  63. include/eigen3/Eigen/src/Core/Fuzzy.h +155 -0
  64. include/eigen3/Eigen/src/Core/GeneralProduct.h +465 -0
  65. include/eigen3/Eigen/src/Core/GenericPacketMath.h +1040 -0
  66. include/eigen3/Eigen/src/Core/GlobalFunctions.h +194 -0
  67. include/eigen3/Eigen/src/Core/IO.h +258 -0
  68. include/eigen3/Eigen/src/Core/IndexedView.h +237 -0
  69. include/eigen3/Eigen/src/Core/Inverse.h +117 -0
  70. include/eigen3/Eigen/src/Core/Map.h +171 -0
  71. include/eigen3/Eigen/src/Core/MapBase.h +310 -0
  72. include/eigen3/Eigen/src/Core/MathFunctions.h +2057 -0
  73. include/eigen3/Eigen/src/Core/MathFunctionsImpl.h +200 -0
  74. include/eigen3/Eigen/src/Core/Matrix.h +565 -0
  75. include/eigen3/Eigen/src/Core/MatrixBase.h +547 -0
  76. include/eigen3/Eigen/src/Core/NestByValue.h +85 -0
  77. include/eigen3/Eigen/src/Core/NoAlias.h +109 -0
  78. include/eigen3/Eigen/src/Core/NumTraits.h +335 -0
  79. include/eigen3/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
  80. include/eigen3/Eigen/src/Core/PermutationMatrix.h +605 -0
  81. include/eigen3/Eigen/src/Core/PlainObjectBase.h +1128 -0
  82. include/eigen3/Eigen/src/Core/Product.h +191 -0
  83. include/eigen3/Eigen/src/Core/ProductEvaluators.h +1179 -0
  84. include/eigen3/Eigen/src/Core/Random.h +218 -0
  85. include/eigen3/Eigen/src/Core/Redux.h +515 -0
  86. include/eigen3/Eigen/src/Core/Ref.h +381 -0
  87. include/eigen3/Eigen/src/Core/Replicate.h +142 -0
  88. include/eigen3/Eigen/src/Core/Reshaped.h +454 -0
  89. include/eigen3/Eigen/src/Core/ReturnByValue.h +119 -0
  90. include/eigen3/Eigen/src/Core/Reverse.h +217 -0
  91. include/eigen3/Eigen/src/Core/Select.h +164 -0
  92. include/eigen3/Eigen/src/Core/SelfAdjointView.h +365 -0
  93. include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
  94. include/eigen3/Eigen/src/Core/Solve.h +188 -0
  95. include/eigen3/Eigen/src/Core/SolveTriangular.h +235 -0
  96. include/eigen3/Eigen/src/Core/SolverBase.h +168 -0
  97. include/eigen3/Eigen/src/Core/StableNorm.h +251 -0
  98. include/eigen3/Eigen/src/Core/StlIterators.h +463 -0
  99. include/eigen3/Eigen/src/Core/Stride.h +116 -0
  100. include/eigen3/Eigen/src/Core/Swap.h +68 -0
  101. include/eigen3/Eigen/src/Core/Transpose.h +464 -0
  102. include/eigen3/Eigen/src/Core/Transpositions.h +386 -0
  103. include/eigen3/Eigen/src/Core/TriangularMatrix.h +1001 -0
  104. include/eigen3/Eigen/src/Core/VectorBlock.h +96 -0
  105. include/eigen3/Eigen/src/Core/VectorwiseOp.h +784 -0
  106. include/eigen3/Eigen/src/Core/Visitor.h +381 -0
  107. include/eigen3/Eigen/src/Core/arch/AVX/Complex.h +372 -0
  108. include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
  109. include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
  110. include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
  111. include/eigen3/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
  112. include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
  113. include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
  114. include/eigen3/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
  115. include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
  116. include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
  117. include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
  118. include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
  119. include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
  120. include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
  121. include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
  122. include/eigen3/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
  123. include/eigen3/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
  124. include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
  125. include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
  126. include/eigen3/Eigen/src/Core/arch/Default/Half.h +942 -0
  127. include/eigen3/Eigen/src/Core/arch/Default/Settings.h +49 -0
  128. include/eigen3/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
  129. include/eigen3/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
  130. include/eigen3/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
  131. include/eigen3/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
  132. include/eigen3/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
  133. include/eigen3/Eigen/src/Core/arch/MSA/Complex.h +648 -0
  134. include/eigen3/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
  135. include/eigen3/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
  136. include/eigen3/Eigen/src/Core/arch/NEON/Complex.h +584 -0
  137. include/eigen3/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
  138. include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
  139. include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
  140. include/eigen3/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
  141. include/eigen3/Eigen/src/Core/arch/SSE/Complex.h +351 -0
  142. include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
  143. include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
  144. include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
  145. include/eigen3/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
  146. include/eigen3/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
  147. include/eigen3/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
  148. include/eigen3/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
  149. include/eigen3/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
  150. include/eigen3/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
  151. include/eigen3/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
  152. include/eigen3/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
  153. include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
  154. include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
  155. include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
  156. include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
  157. include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
  158. include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
  159. include/eigen3/Eigen/src/Core/functors/StlFunctors.h +166 -0
  160. include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
  161. include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
  162. include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
  163. include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
  164. include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
  165. include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
  166. include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
  167. include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
  168. include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
  169. include/eigen3/Eigen/src/Core/products/Parallelizer.h +180 -0
  170. include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
  171. include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
  172. include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
  173. include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
  174. include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
  175. include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
  176. include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
  177. include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
  178. include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
  179. include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
  180. include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
  181. include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
  182. include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
  183. include/eigen3/Eigen/src/Core/util/BlasUtil.h +583 -0
  184. include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
  185. include/eigen3/Eigen/src/Core/util/Constants.h +563 -0
  186. include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
  187. include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
  188. include/eigen3/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
  189. include/eigen3/Eigen/src/Core/util/IntegralConstant.h +272 -0
  190. include/eigen3/Eigen/src/Core/util/MKL_support.h +137 -0
  191. include/eigen3/Eigen/src/Core/util/Macros.h +1464 -0
  192. include/eigen3/Eigen/src/Core/util/Memory.h +1163 -0
  193. include/eigen3/Eigen/src/Core/util/Meta.h +812 -0
  194. include/eigen3/Eigen/src/Core/util/NonMPL2.h +3 -0
  195. include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
  196. include/eigen3/Eigen/src/Core/util/ReshapedHelper.h +51 -0
  197. include/eigen3/Eigen/src/Core/util/StaticAssert.h +221 -0
  198. include/eigen3/Eigen/src/Core/util/SymbolicIndex.h +293 -0
  199. include/eigen3/Eigen/src/Core/util/XprHelper.h +856 -0
  200. include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
  201. include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
  202. include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
  203. include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
  204. include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
  205. include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
  206. include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
  207. include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
  208. include/eigen3/Eigen/src/Eigenvalues/RealQZ.h +657 -0
  209. include/eigen3/Eigen/src/Eigenvalues/RealSchur.h +558 -0
  210. include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
  211. include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
  212. include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
  213. include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
  214. include/eigen3/Eigen/src/Geometry/AlignedBox.h +486 -0
  215. include/eigen3/Eigen/src/Geometry/AngleAxis.h +247 -0
  216. include/eigen3/Eigen/src/Geometry/EulerAngles.h +114 -0
  217. include/eigen3/Eigen/src/Geometry/Homogeneous.h +501 -0
  218. include/eigen3/Eigen/src/Geometry/Hyperplane.h +282 -0
  219. include/eigen3/Eigen/src/Geometry/OrthoMethods.h +235 -0
  220. include/eigen3/Eigen/src/Geometry/ParametrizedLine.h +232 -0
  221. include/eigen3/Eigen/src/Geometry/Quaternion.h +870 -0
  222. include/eigen3/Eigen/src/Geometry/Rotation2D.h +199 -0
  223. include/eigen3/Eigen/src/Geometry/RotationBase.h +206 -0
  224. include/eigen3/Eigen/src/Geometry/Scaling.h +188 -0
  225. include/eigen3/Eigen/src/Geometry/Transform.h +1563 -0
  226. include/eigen3/Eigen/src/Geometry/Translation.h +202 -0
  227. include/eigen3/Eigen/src/Geometry/Umeyama.h +166 -0
  228. include/eigen3/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
  229. include/eigen3/Eigen/src/Householder/BlockHouseholder.h +110 -0
  230. include/eigen3/Eigen/src/Householder/Householder.h +176 -0
  231. include/eigen3/Eigen/src/Householder/HouseholderSequence.h +545 -0
  232. include/eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
  233. include/eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
  234. include/eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
  235. include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
  236. include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
  237. include/eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
  238. include/eigen3/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
  239. include/eigen3/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
  240. include/eigen3/Eigen/src/Jacobi/Jacobi.h +483 -0
  241. include/eigen3/Eigen/src/KLUSupport/KLUSupport.h +358 -0
  242. include/eigen3/Eigen/src/LU/Determinant.h +117 -0
  243. include/eigen3/Eigen/src/LU/FullPivLU.h +877 -0
  244. include/eigen3/Eigen/src/LU/InverseImpl.h +432 -0
  245. include/eigen3/Eigen/src/LU/PartialPivLU.h +624 -0
  246. include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
  247. include/eigen3/Eigen/src/LU/arch/InverseSize4.h +351 -0
  248. include/eigen3/Eigen/src/MetisSupport/MetisSupport.h +137 -0
  249. include/eigen3/Eigen/src/OrderingMethods/Amd.h +435 -0
  250. include/eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
  251. include/eigen3/Eigen/src/OrderingMethods/Ordering.h +153 -0
  252. include/eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
  253. include/eigen3/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
  254. include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
  255. include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
  256. include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
  257. include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
  258. include/eigen3/Eigen/src/QR/HouseholderQR.h +434 -0
  259. include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
  260. include/eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
  261. include/eigen3/Eigen/src/SVD/BDCSVD.h +1366 -0
  262. include/eigen3/Eigen/src/SVD/JacobiSVD.h +812 -0
  263. include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
  264. include/eigen3/Eigen/src/SVD/SVDBase.h +376 -0
  265. include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
  266. include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
  267. include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
  268. include/eigen3/Eigen/src/SparseCore/AmbiVector.h +378 -0
  269. include/eigen3/Eigen/src/SparseCore/CompressedStorage.h +274 -0
  270. include/eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
  271. include/eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
  272. include/eigen3/Eigen/src/SparseCore/SparseAssign.h +270 -0
  273. include/eigen3/Eigen/src/SparseCore/SparseBlock.h +571 -0
  274. include/eigen3/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  275. include/eigen3/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
  276. include/eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
  277. include/eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
  278. include/eigen3/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
  279. include/eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
  280. include/eigen3/Eigen/src/SparseCore/SparseDot.h +98 -0
  281. include/eigen3/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
  282. include/eigen3/Eigen/src/SparseCore/SparseMap.h +305 -0
  283. include/eigen3/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
  284. include/eigen3/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
  285. include/eigen3/Eigen/src/SparseCore/SparsePermutation.h +178 -0
  286. include/eigen3/Eigen/src/SparseCore/SparseProduct.h +181 -0
  287. include/eigen3/Eigen/src/SparseCore/SparseRedux.h +49 -0
  288. include/eigen3/Eigen/src/SparseCore/SparseRef.h +397 -0
  289. include/eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
  290. include/eigen3/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
  291. include/eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
  292. include/eigen3/Eigen/src/SparseCore/SparseTranspose.h +92 -0
  293. include/eigen3/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
  294. include/eigen3/Eigen/src/SparseCore/SparseUtil.h +186 -0
  295. include/eigen3/Eigen/src/SparseCore/SparseVector.h +478 -0
  296. include/eigen3/Eigen/src/SparseCore/SparseView.h +254 -0
  297. include/eigen3/Eigen/src/SparseCore/TriangularSolver.h +315 -0
  298. include/eigen3/Eigen/src/SparseLU/SparseLU.h +923 -0
  299. include/eigen3/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
  300. include/eigen3/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
  301. include/eigen3/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
  302. include/eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
  303. include/eigen3/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
  304. include/eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
  305. include/eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
  306. include/eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
  307. include/eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
  308. include/eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
  309. include/eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
  310. include/eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
  311. include/eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
  312. include/eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
  313. include/eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
  314. include/eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
  315. include/eigen3/Eigen/src/SparseQR/SparseQR.h +758 -0
  316. include/eigen3/Eigen/src/StlSupport/StdDeque.h +116 -0
  317. include/eigen3/Eigen/src/StlSupport/StdList.h +106 -0
  318. include/eigen3/Eigen/src/StlSupport/StdVector.h +131 -0
  319. include/eigen3/Eigen/src/StlSupport/details.h +84 -0
  320. include/eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
  321. include/eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
  322. include/eigen3/Eigen/src/misc/Image.h +82 -0
  323. include/eigen3/Eigen/src/misc/Kernel.h +79 -0
  324. include/eigen3/Eigen/src/misc/RealSvd2x2.h +55 -0
  325. include/eigen3/Eigen/src/misc/blas.h +440 -0
  326. include/eigen3/Eigen/src/misc/lapack.h +152 -0
  327. include/eigen3/Eigen/src/misc/lapacke.h +16292 -0
  328. include/eigen3/Eigen/src/misc/lapacke_mangling.h +17 -0
  329. include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
  330. include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
  331. include/eigen3/Eigen/src/plugins/BlockMethods.h +1442 -0
  332. include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
  333. include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
  334. include/eigen3/Eigen/src/plugins/IndexedViewMethods.h +262 -0
  335. include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
  336. include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
  337. include/eigen3/Eigen/src/plugins/ReshapedMethods.h +149 -0
  338. include/eigen3/signature_of_eigen3_matrix_library +1 -0
  339. include/eigen3/unsupported/Eigen/AdolcForward +159 -0
  340. include/eigen3/unsupported/Eigen/AlignedVector3 +234 -0
  341. include/eigen3/unsupported/Eigen/ArpackSupport +30 -0
  342. include/eigen3/unsupported/Eigen/AutoDiff +46 -0
  343. include/eigen3/unsupported/Eigen/BVH +95 -0
  344. include/eigen3/unsupported/Eigen/CXX11/Tensor +137 -0
  345. include/eigen3/unsupported/Eigen/CXX11/TensorSymmetry +42 -0
  346. include/eigen3/unsupported/Eigen/CXX11/ThreadPool +74 -0
  347. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +554 -0
  348. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +329 -0
  349. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +247 -0
  350. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +1176 -0
  351. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +1559 -0
  352. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +1093 -0
  353. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +518 -0
  354. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +377 -0
  355. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +1023 -0
  356. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +73 -0
  357. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +6 -0
  358. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +1413 -0
  359. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +575 -0
  360. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +1650 -0
  361. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +1679 -0
  362. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +456 -0
  363. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +1132 -0
  364. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +544 -0
  365. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +214 -0
  366. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +347 -0
  367. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +137 -0
  368. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +6 -0
  369. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +104 -0
  370. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +389 -0
  371. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +1048 -0
  372. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +409 -0
  373. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +236 -0
  374. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +490 -0
  375. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +236 -0
  376. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +983 -0
  377. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +703 -0
  378. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +388 -0
  379. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +669 -0
  380. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +379 -0
  381. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +237 -0
  382. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +191 -0
  383. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +488 -0
  384. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +302 -0
  385. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +33 -0
  386. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +99 -0
  387. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +44 -0
  388. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +79 -0
  389. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +603 -0
  390. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +738 -0
  391. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +247 -0
  392. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +82 -0
  393. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +263 -0
  394. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +216 -0
  395. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +98 -0
  396. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +327 -0
  397. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +311 -0
  398. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +1102 -0
  399. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +708 -0
  400. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +291 -0
  401. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +322 -0
  402. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +998 -0
  403. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +6 -0
  404. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +966 -0
  405. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +582 -0
  406. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +454 -0
  407. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +465 -0
  408. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +528 -0
  409. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +513 -0
  410. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +471 -0
  411. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +161 -0
  412. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +346 -0
  413. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +303 -0
  414. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +264 -0
  415. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +249 -0
  416. include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +629 -0
  417. include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +293 -0
  418. include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +236 -0
  419. include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +338 -0
  420. include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +669 -0
  421. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +67 -0
  422. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +249 -0
  423. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +486 -0
  424. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +236 -0
  425. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +23 -0
  426. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +40 -0
  427. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +301 -0
  428. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +48 -0
  429. include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +20 -0
  430. include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +537 -0
  431. include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +88 -0
  432. include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h +261 -0
  433. include/eigen3/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +158 -0
  434. include/eigen3/unsupported/Eigen/EulerAngles +43 -0
  435. include/eigen3/unsupported/Eigen/FFT +419 -0
  436. include/eigen3/unsupported/Eigen/IterativeSolvers +51 -0
  437. include/eigen3/unsupported/Eigen/KroneckerProduct +36 -0
  438. include/eigen3/unsupported/Eigen/LevenbergMarquardt +49 -0
  439. include/eigen3/unsupported/Eigen/MPRealSupport +213 -0
  440. include/eigen3/unsupported/Eigen/MatrixFunctions +504 -0
  441. include/eigen3/unsupported/Eigen/MoreVectorization +24 -0
  442. include/eigen3/unsupported/Eigen/NonLinearOptimization +140 -0
  443. include/eigen3/unsupported/Eigen/NumericalDiff +56 -0
  444. include/eigen3/unsupported/Eigen/OpenGLSupport +322 -0
  445. include/eigen3/unsupported/Eigen/Polynomials +137 -0
  446. include/eigen3/unsupported/Eigen/Skyline +39 -0
  447. include/eigen3/unsupported/Eigen/SparseExtra +54 -0
  448. include/eigen3/unsupported/Eigen/SpecialFunctions +103 -0
  449. include/eigen3/unsupported/Eigen/Splines +35 -0
  450. include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +108 -0
  451. include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +730 -0
  452. include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +220 -0
  453. include/eigen3/unsupported/Eigen/src/BVH/BVAlgorithms.h +293 -0
  454. include/eigen3/unsupported/Eigen/src/BVH/KdBVH.h +223 -0
  455. include/eigen3/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +790 -0
  456. include/eigen3/unsupported/Eigen/src/EulerAngles/EulerAngles.h +355 -0
  457. include/eigen3/unsupported/Eigen/src/EulerAngles/EulerSystem.h +305 -0
  458. include/eigen3/unsupported/Eigen/src/FFT/ei_fftw_impl.h +261 -0
  459. include/eigen3/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +449 -0
  460. include/eigen3/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +187 -0
  461. include/eigen3/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +511 -0
  462. include/eigen3/unsupported/Eigen/src/IterativeSolvers/GMRES.h +335 -0
  463. include/eigen3/unsupported/Eigen/src/IterativeSolvers/IDRS.h +436 -0
  464. include/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +90 -0
  465. include/eigen3/unsupported/Eigen/src/IterativeSolvers/IterationController.h +154 -0
  466. include/eigen3/unsupported/Eigen/src/IterativeSolvers/MINRES.h +267 -0
  467. include/eigen3/unsupported/Eigen/src/IterativeSolvers/Scaling.h +193 -0
  468. include/eigen3/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +305 -0
  469. include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +84 -0
  470. include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +202 -0
  471. include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +160 -0
  472. include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +188 -0
  473. include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +396 -0
  474. include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +441 -0
  475. include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +569 -0
  476. include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +373 -0
  477. include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +705 -0
  478. include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +368 -0
  479. include/eigen3/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +117 -0
  480. include/eigen3/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +95 -0
  481. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +601 -0
  482. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +657 -0
  483. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h +66 -0
  484. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h +70 -0
  485. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +107 -0
  486. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +79 -0
  487. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +298 -0
  488. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +91 -0
  489. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +30 -0
  490. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +99 -0
  491. include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +49 -0
  492. include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +130 -0
  493. include/eigen3/unsupported/Eigen/src/Polynomials/Companion.h +280 -0
  494. include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +428 -0
  495. include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +143 -0
  496. include/eigen3/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +352 -0
  497. include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrix.h +862 -0
  498. include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +212 -0
  499. include/eigen3/unsupported/Eigen/src/Skyline/SkylineProduct.h +295 -0
  500. include/eigen3/unsupported/Eigen/src/Skyline/SkylineStorage.h +259 -0
  501. include/eigen3/unsupported/Eigen/src/Skyline/SkylineUtil.h +89 -0
  502. include/eigen3/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +122 -0
  503. include/eigen3/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +1079 -0
  504. include/eigen3/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +404 -0
  505. include/eigen3/unsupported/Eigen/src/SparseExtra/MarketIO.h +282 -0
  506. include/eigen3/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +247 -0
  507. include/eigen3/unsupported/Eigen/src/SparseExtra/RandomSetter.h +349 -0
  508. include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +286 -0
  509. include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +68 -0
  510. include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +357 -0
  511. include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +66 -0
  512. include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +1959 -0
  513. include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +118 -0
  514. include/eigen3/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +67 -0
  515. include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +167 -0
  516. include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +58 -0
  517. include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +330 -0
  518. include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +58 -0
  519. include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +2045 -0
  520. include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +79 -0
  521. include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +46 -0
  522. include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +16 -0
  523. include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +46 -0
  524. include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +16 -0
  525. include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +369 -0
  526. include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +54 -0
  527. include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +34 -0
  528. include/eigen3/unsupported/Eigen/src/Splines/Spline.h +507 -0
  529. include/eigen3/unsupported/Eigen/src/Splines/SplineFitting.h +431 -0
  530. include/eigen3/unsupported/Eigen/src/Splines/SplineFwd.h +93 -0
  531. pylibsparseir/__init__.py +31 -0
  532. pylibsparseir/clean_build_artifacts.py +0 -1
  533. pylibsparseir/core.py +178 -62
  534. pylibsparseir/libsparseir.dylib +0 -0
  535. pylibsparseir-0.6.0.dist-info/METADATA +213 -0
  536. pylibsparseir-0.6.0.dist-info/RECORD +545 -0
  537. {pylibsparseir-0.1.0.dist-info → pylibsparseir-0.6.0.dist-info}/WHEEL +1 -1
  538. pylibsparseir-0.6.0.dist-info/licenses/LICENSE +21 -0
  539. share/eigen3/cmake/Eigen3Config.cmake +37 -0
  540. share/eigen3/cmake/Eigen3ConfigVersion.cmake +65 -0
  541. share/eigen3/cmake/Eigen3Targets.cmake +106 -0
  542. share/eigen3/cmake/UseEigen3.cmake +6 -0
  543. share/pkgconfig/eigen3.pc +9 -0
  544. pylibsparseir/libsparseir.0.4.2.dylib +0 -0
  545. pylibsparseir/libsparseir.0.dylib +0 -0
  546. pylibsparseir-0.1.0.dist-info/METADATA +0 -130
  547. pylibsparseir-0.1.0.dist-info/RECORD +0 -12
  548. pylibsparseir-0.1.0.dist-info/entry_points.txt +0 -2
  549. pylibsparseir-0.1.0.dist-info/top_level.txt +0 -1
pylibsparseir/core.py CHANGED
@@ -8,10 +8,22 @@ import ctypes
8
8
  from ctypes import c_int, c_double, c_int64, c_size_t, c_bool, POINTER, byref
9
9
  from ctypes import CDLL
10
10
  import numpy as np
11
+ import platform
12
+
13
+ # Enable only on Linux
14
+ import os
15
+ import sys
16
+ import ctypes
17
+ import platform
18
+
19
+ import os
20
+ import sys
21
+ import ctypes
11
22
 
12
23
  from .ctypes_wrapper import spir_kernel, spir_sve_result, spir_basis, spir_funcs, spir_sampling
13
24
  from pylibsparseir.constants import COMPUTATION_SUCCESS, SPIR_ORDER_ROW_MAJOR, SPIR_ORDER_COLUMN_MAJOR, SPIR_TWORK_FLOAT64, SPIR_TWORK_FLOAT64X2, SPIR_STATISTICS_FERMIONIC, SPIR_STATISTICS_BOSONIC
14
25
 
26
+
15
27
  def _find_library():
16
28
  """Find the SparseIR shared library."""
17
29
  if sys.platform == "darwin":
@@ -24,8 +36,10 @@ def _find_library():
24
36
  # Try to find the library in common locations
25
37
  search_paths = [
26
38
  os.path.dirname(os.path.abspath(__file__)),
27
- os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "build"),
28
- os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "..", "build"),
39
+ os.path.join(os.path.dirname(
40
+ os.path.abspath(__file__)), "..", "build"),
41
+ os.path.join(os.path.dirname(os.path.abspath(__file__)),
42
+ "..", "..", "build"),
29
43
  ]
30
44
 
31
45
  for path in search_paths:
@@ -35,24 +49,54 @@ def _find_library():
35
49
 
36
50
  raise RuntimeError(f"Could not find {libname} in {search_paths}")
37
51
 
52
+
38
53
  # Load the library
39
54
  try:
40
- _lib = CDLL(_find_library())
55
+ import scipy.linalg.cython_blas as blas
56
+ # dgemm capsule
57
+ # Get the PyCapsule objects for dgemm and zgemm
58
+ capsule = blas.__pyx_capi__["dgemm"]
59
+ capsule_z = blas.__pyx_capi__["zgemm"]
60
+
61
+ # Get the name of the PyCapsule (optional, but safer to be explicit)
62
+ ctypes.pythonapi.PyCapsule_GetName.restype = ctypes.c_char_p
63
+ ctypes.pythonapi.PyCapsule_GetName.argtypes = [ctypes.py_object]
64
+ name = ctypes.pythonapi.PyCapsule_GetName(capsule)
65
+ name_z = ctypes.pythonapi.PyCapsule_GetName(capsule_z)
66
+ # Extract the pointer from the PyCapsule
67
+ ctypes.pythonapi.PyCapsule_GetPointer.restype = ctypes.c_void_p
68
+ ctypes.pythonapi.PyCapsule_GetPointer.argtypes = [
69
+ ctypes.py_object, ctypes.c_char_p]
70
+ ptr = ctypes.pythonapi.PyCapsule_GetPointer(capsule, name)
71
+ ptr_z = ctypes.pythonapi.PyCapsule_GetPointer(capsule_z, name_z)
72
+
73
+ _lib = ctypes.CDLL(_find_library())
74
+ _lib.spir_register_dgemm.argtypes = [ctypes.c_void_p]
75
+ _lib.spir_register_dgemm(ptr)
76
+ _lib.spir_register_zgemm.argtypes = [ctypes.c_void_p]
77
+ _lib.spir_register_zgemm(ptr_z)
78
+ if os.environ.get("SPARSEIR_DEBUG", "").lower() in ("1", "true", "yes", "on"):
79
+ print(f"[core.py] Registered SciPy BLAS dgemm @ {hex(ptr)}")
80
+ print(f"[core.py] Registered SciPy BLAS zgemm @ {hex(ptr_z)}")
41
81
  except Exception as e:
42
82
  raise RuntimeError(f"Failed to load SparseIR library: {e}")
43
83
 
84
+
44
85
  class c_double_complex(ctypes.Structure):
45
86
  """complex is a c structure
46
87
  https://docs.python.org/3/library/ctypes.html#module-ctypes suggests
47
88
  to use ctypes.Structure to pass structures (and, therefore, complex)
48
89
  See: https://stackoverflow.com/questions/13373291/complex-number-in-ctypes
49
90
  """
50
- _fields_ = [("real", ctypes.c_double),("imag", ctypes.c_double)]
91
+ _fields_ = [("real", ctypes.c_double), ("imag", ctypes.c_double)]
92
+
51
93
  @property
52
94
  def value(self):
53
- return self.real+1j*self.imag # fields declared above
95
+ return self.real+1j*self.imag # fields declared above
54
96
 
55
97
  # Set up function prototypes
98
+
99
+
56
100
  def _setup_prototypes():
57
101
  # Kernel functions
58
102
  _lib.spir_logistic_kernel_new.argtypes = [c_double, POINTER(c_int)]
@@ -68,18 +112,20 @@ def _setup_prototypes():
68
112
  _lib.spir_kernel_domain.restype = c_int
69
113
 
70
114
  # SVE result functions
71
- _lib.spir_sve_result_new.argtypes = [spir_kernel, c_double, c_double, c_int, c_int, c_int, POINTER(c_int)]
115
+ _lib.spir_sve_result_new.argtypes = [
116
+ spir_kernel, c_double, c_double, c_int, c_int, c_int, POINTER(c_int)]
72
117
  _lib.spir_sve_result_new.restype = spir_sve_result
73
118
 
74
119
  _lib.spir_sve_result_get_size.argtypes = [spir_sve_result, POINTER(c_int)]
75
120
  _lib.spir_sve_result_get_size.restype = c_int
76
121
 
77
- _lib.spir_sve_result_get_svals.argtypes = [spir_sve_result, POINTER(c_double)]
122
+ _lib.spir_sve_result_get_svals.argtypes = [
123
+ spir_sve_result, POINTER(c_double)]
78
124
  _lib.spir_sve_result_get_svals.restype = c_int
79
125
 
80
126
  # Basis functions
81
127
  _lib.spir_basis_new.argtypes = [
82
- c_int, c_double, c_double, spir_kernel, spir_sve_result, c_int, POINTER(c_int)
128
+ c_int, c_double, c_double, c_double, spir_kernel, spir_sve_result, c_int, POINTER(c_int)
83
129
  ]
84
130
  _lib.spir_basis_new.restype = spir_basis
85
131
 
@@ -102,7 +148,8 @@ def _setup_prototypes():
102
148
  _lib.spir_basis_get_uhat.argtypes = [spir_basis, POINTER(c_int)]
103
149
  _lib.spir_basis_get_uhat.restype = spir_funcs
104
150
 
105
- _lib.spir_funcs_get_slice.argtypes = [spir_funcs, c_int, POINTER(c_int), POINTER(c_int)]
151
+ _lib.spir_funcs_get_slice.argtypes = [
152
+ spir_funcs, c_int, POINTER(c_int), POINTER(c_int)]
106
153
  _lib.spir_funcs_get_slice.restype = spir_funcs
107
154
 
108
155
  # Function evaluation
@@ -112,7 +159,8 @@ def _setup_prototypes():
112
159
  _lib.spir_funcs_eval.argtypes = [spir_funcs, c_double, POINTER(c_double)]
113
160
  _lib.spir_funcs_eval.restype = c_int
114
161
 
115
- _lib.spir_funcs_eval_matsu.argtypes = [spir_funcs, c_int64, POINTER(c_double_complex)]
162
+ _lib.spir_funcs_eval_matsu.argtypes = [
163
+ spir_funcs, c_int64, POINTER(c_double_complex)]
116
164
  _lib.spir_funcs_eval_matsu.restype = c_int
117
165
 
118
166
  _lib.spir_funcs_batch_eval.argtypes = [
@@ -125,11 +173,11 @@ def _setup_prototypes():
125
173
  ]
126
174
  _lib.spir_funcs_batch_eval_matsu.restype = c_int
127
175
 
128
- _lib.spir_funcs_get_n_roots.argtypes = [spir_funcs, POINTER(c_int)]
129
- _lib.spir_funcs_get_n_roots.restype = c_int
176
+ _lib.spir_funcs_get_n_knots.argtypes = [spir_funcs, POINTER(c_int)]
177
+ _lib.spir_funcs_get_n_knots.restype = c_int
130
178
 
131
- _lib.spir_funcs_get_roots.argtypes = [spir_funcs, POINTER(c_double)]
132
- _lib.spir_funcs_get_roots.restype = c_int
179
+ _lib.spir_funcs_get_knots.argtypes = [spir_funcs, POINTER(c_double)]
180
+ _lib.spir_funcs_get_knots.restype = c_int
133
181
 
134
182
  # Default sampling points
135
183
  _lib.spir_basis_get_n_default_taus.argtypes = [spir_basis, POINTER(c_int)]
@@ -138,7 +186,8 @@ def _setup_prototypes():
138
186
  _lib.spir_basis_get_default_taus.argtypes = [spir_basis, POINTER(c_double)]
139
187
  _lib.spir_basis_get_default_taus.restype = c_int
140
188
 
141
- _lib.spir_basis_get_default_taus_ext.argtypes = [spir_basis, c_int, POINTER(c_double), POINTER(c_int)]
189
+ _lib.spir_basis_get_default_taus_ext.argtypes = [
190
+ spir_basis, c_int, POINTER(c_double), POINTER(c_int)]
142
191
  _lib.spir_basis_get_default_taus_ext.restype = c_int
143
192
 
144
193
  _lib.spir_basis_get_n_default_ws.argtypes = [spir_basis, POINTER(c_int)]
@@ -147,26 +196,33 @@ def _setup_prototypes():
147
196
  _lib.spir_basis_get_default_ws.argtypes = [spir_basis, POINTER(c_double)]
148
197
  _lib.spir_basis_get_default_ws.restype = c_int
149
198
 
150
- _lib.spir_basis_get_n_default_matsus.argtypes = [spir_basis, c_bool, POINTER(c_int)]
199
+ _lib.spir_basis_get_n_default_matsus.argtypes = [
200
+ spir_basis, c_bool, POINTER(c_int)]
151
201
  _lib.spir_basis_get_n_default_matsus.restype = c_int
152
202
 
153
- _lib.spir_basis_get_n_default_matsus_ext.argtypes = [spir_basis, c_bool, c_int, POINTER(c_int)]
203
+ _lib.spir_basis_get_n_default_matsus_ext.argtypes = [
204
+ spir_basis, c_bool, c_int, POINTER(c_int)]
154
205
  _lib.spir_basis_get_n_default_matsus_ext.restype = c_int
155
206
 
156
- _lib.spir_basis_get_default_matsus.argtypes = [spir_basis, c_bool, POINTER(c_int64)]
207
+ _lib.spir_basis_get_default_matsus.argtypes = [
208
+ spir_basis, c_bool, POINTER(c_int64)]
157
209
  _lib.spir_basis_get_default_matsus.restype = c_int
158
210
 
159
- _lib.spir_basis_get_default_matsus_ext.argtypes = [spir_basis, c_bool, c_int, POINTER(c_int64), POINTER(c_int)]
211
+ _lib.spir_basis_get_default_matsus_ext.argtypes = [
212
+ spir_basis, c_bool, c_int, POINTER(c_int64), POINTER(c_int)]
160
213
  _lib.spir_basis_get_default_matsus_ext.restype = c_int
161
214
 
162
215
  # Sampling objects
163
- _lib.spir_tau_sampling_new.argtypes = [spir_basis, c_int, POINTER(c_double), POINTER(c_int)]
216
+ _lib.spir_tau_sampling_new.argtypes = [
217
+ spir_basis, c_int, POINTER(c_double), POINTER(c_int)]
164
218
  _lib.spir_tau_sampling_new.restype = spir_sampling
165
219
 
166
- _lib.spir_tau_sampling_new_with_matrix.argtypes = [c_int, c_int, c_int, c_int, POINTER(c_double), POINTER(c_double), POINTER(c_int)]
220
+ _lib.spir_tau_sampling_new_with_matrix.argtypes = [
221
+ c_int, c_int, c_int, c_int, POINTER(c_double), POINTER(c_double), POINTER(c_int)]
167
222
  _lib.spir_tau_sampling_new_with_matrix.restype = spir_sampling
168
223
 
169
- _lib.spir_matsu_sampling_new.argtypes = [spir_basis, c_bool, c_int, POINTER(c_int64), POINTER(c_int)]
224
+ _lib.spir_matsu_sampling_new.argtypes = [
225
+ spir_basis, c_bool, c_int, POINTER(c_int64), POINTER(c_int)]
170
226
  _lib.spir_matsu_sampling_new.restype = spir_sampling
171
227
 
172
228
  _lib.spir_matsu_sampling_new_with_matrix.argtypes = [
@@ -204,7 +260,8 @@ def _setup_prototypes():
204
260
  _lib.spir_sampling_get_matsus.argtypes = [spir_sampling, POINTER(c_int64)]
205
261
  _lib.spir_sampling_get_matsus.restype = c_int
206
262
 
207
- _lib.spir_sampling_get_cond_num.argtypes = [spir_sampling, POINTER(c_double)]
263
+ _lib.spir_sampling_get_cond_num.argtypes = [
264
+ spir_sampling, POINTER(c_double)]
208
265
  _lib.spir_sampling_get_cond_num.restype = c_int
209
266
 
210
267
  # Multi-dimensional sampling evaluation functions
@@ -230,7 +287,8 @@ def _setup_prototypes():
230
287
  _lib.spir_dlr_new.argtypes = [spir_basis, POINTER(c_int)]
231
288
  _lib.spir_dlr_new.restype = spir_basis
232
289
 
233
- _lib.spir_dlr_new_with_poles.argtypes = [spir_basis, c_int, POINTER(c_double), POINTER(c_int)]
290
+ _lib.spir_dlr_new_with_poles.argtypes = [
291
+ spir_basis, c_int, POINTER(c_double), POINTER(c_int)]
234
292
  _lib.spir_dlr_new_with_poles.restype = spir_basis
235
293
 
236
294
  _lib.spir_dlr_get_npoles.argtypes = [spir_basis, POINTER(c_int)]
@@ -267,9 +325,12 @@ def _setup_prototypes():
267
325
  _lib.spir_sampling_release.argtypes = [spir_sampling]
268
326
  _lib.spir_sampling_release.restype = None
269
327
 
328
+
270
329
  _setup_prototypes()
271
330
 
272
331
  # Python wrapper functions
332
+
333
+
273
334
  def logistic_kernel_new(lambda_val):
274
335
  """Create a new logistic kernel."""
275
336
  status = c_int()
@@ -278,19 +339,23 @@ def logistic_kernel_new(lambda_val):
278
339
  raise RuntimeError(f"Failed to create logistic kernel: {status.value}")
279
340
  return kernel
280
341
 
342
+
281
343
  def reg_bose_kernel_new(lambda_val):
282
344
  """Create a new regularized bosonic kernel."""
283
345
  status = c_int()
284
346
  kernel = _lib.spir_reg_bose_kernel_new(lambda_val, byref(status))
285
347
  if status.value != COMPUTATION_SUCCESS:
286
- raise RuntimeError(f"Failed to create regularized bosonic kernel: {status.value}")
348
+ raise RuntimeError(
349
+ f"Failed to create regularized bosonic kernel: {status.value}")
287
350
  return kernel
288
351
 
352
+
289
353
  def sve_result_new(kernel, epsilon, cutoff=None, lmax=None, n_gauss=None, Twork=None):
290
354
  """Create a new SVE result."""
291
355
  # Validate epsilon
292
356
  if epsilon <= 0:
293
- raise RuntimeError(f"Failed to create SVE result: epsilon must be positive, got {epsilon}")
357
+ raise RuntimeError(
358
+ f"Failed to create SVE result: epsilon must be positive, got {epsilon}")
294
359
 
295
360
  if cutoff is None:
296
361
  cutoff = -1.0
@@ -302,11 +367,13 @@ def sve_result_new(kernel, epsilon, cutoff=None, lmax=None, n_gauss=None, Twork=
302
367
  Twork = SPIR_TWORK_FLOAT64X2
303
368
 
304
369
  status = c_int()
305
- sve = _lib.spir_sve_result_new(kernel, epsilon, cutoff, lmax, n_gauss, Twork, byref(status))
370
+ sve = _lib.spir_sve_result_new(
371
+ kernel, epsilon, cutoff, lmax, n_gauss, Twork, byref(status))
306
372
  if status.value != COMPUTATION_SUCCESS:
307
373
  raise RuntimeError(f"Failed to create SVE result: {status.value}")
308
374
  return sve
309
375
 
376
+
310
377
  def sve_result_get_size(sve):
311
378
  """Get the size of an SVE result."""
312
379
  size = c_int()
@@ -315,25 +382,35 @@ def sve_result_get_size(sve):
315
382
  raise RuntimeError(f"Failed to get SVE result size: {status}")
316
383
  return size.value
317
384
 
385
+ def sve_result_truncate(sve, epsilon, max_size):
386
+ """Truncate an SVE result."""
387
+ status = c_int()
388
+ sve = _lib.spir_sve_result_truncate(sve, epsilon, max_size, byref(status))
389
+ if status.value != COMPUTATION_SUCCESS:
390
+ raise RuntimeError(f"Failed to truncate SVE result: {status.value}")
391
+ return sve
392
+
318
393
  def sve_result_get_svals(sve):
319
394
  """Get the singular values from an SVE result."""
320
395
  size = sve_result_get_size(sve)
321
396
  svals = np.zeros(size, dtype=np.float64)
322
- status = _lib.spir_sve_result_get_svals(sve, svals.ctypes.data_as(POINTER(c_double)))
397
+ status = _lib.spir_sve_result_get_svals(
398
+ sve, svals.ctypes.data_as(POINTER(c_double)))
323
399
  if status != COMPUTATION_SUCCESS:
324
400
  raise RuntimeError(f"Failed to get singular values: {status}")
325
401
  return svals
326
402
 
327
- def basis_new(statistics, beta, omega_max, kernel, sve, max_size):
403
+ def basis_new(statistics, beta, omega_max, epsilon, kernel, sve, max_size):
328
404
  """Create a new basis."""
329
405
  status = c_int()
330
406
  basis = _lib.spir_basis_new(
331
- statistics, beta, omega_max, kernel, sve, max_size, byref(status)
407
+ statistics, beta, omega_max, epsilon, kernel, sve, max_size, byref(status)
332
408
  )
333
409
  if status.value != COMPUTATION_SUCCESS:
334
410
  raise RuntimeError(f"Failed to create basis: {status.value}")
335
411
  return basis
336
412
 
413
+
337
414
  def basis_get_size(basis):
338
415
  """Get the size of a basis."""
339
416
  size = c_int()
@@ -342,11 +419,13 @@ def basis_get_size(basis):
342
419
  raise RuntimeError(f"Failed to get basis size: {status}")
343
420
  return size.value
344
421
 
422
+
345
423
  def basis_get_svals(basis):
346
424
  """Get the singular values of a basis."""
347
425
  size = basis_get_size(basis)
348
426
  svals = np.zeros(size, dtype=np.float64)
349
- status = _lib.spir_basis_get_svals(basis, svals.ctypes.data_as(POINTER(c_double)))
427
+ status = _lib.spir_basis_get_svals(
428
+ basis, svals.ctypes.data_as(POINTER(c_double)))
350
429
  if status != COMPUTATION_SUCCESS:
351
430
  raise RuntimeError(f"Failed to get singular values: {status}")
352
431
  return svals
@@ -360,6 +439,7 @@ def basis_get_stats(basis):
360
439
  raise RuntimeError(f"Failed to get basis statistics: {status}")
361
440
  return stats.value
362
441
 
442
+
363
443
  def basis_get_u(basis):
364
444
  """Get the imaginary-time basis functions."""
365
445
  status = c_int()
@@ -368,6 +448,7 @@ def basis_get_u(basis):
368
448
  raise RuntimeError(f"Failed to get u basis functions: {status.value}")
369
449
  return funcs
370
450
 
451
+
371
452
  def basis_get_v(basis):
372
453
  """Get the real-frequency basis functions."""
373
454
  status = c_int()
@@ -376,14 +457,17 @@ def basis_get_v(basis):
376
457
  raise RuntimeError(f"Failed to get v basis functions: {status.value}")
377
458
  return funcs
378
459
 
460
+
379
461
  def basis_get_uhat(basis):
380
462
  """Get the Matsubara frequency basis functions."""
381
463
  status = c_int()
382
464
  funcs = _lib.spir_basis_get_uhat(basis, byref(status))
383
465
  if status.value != COMPUTATION_SUCCESS:
384
- raise RuntimeError(f"Failed to get uhat basis functions: {status.value}")
466
+ raise RuntimeError(
467
+ f"Failed to get uhat basis functions: {status.value}")
385
468
  return funcs
386
469
 
470
+
387
471
  def funcs_get_size(funcs):
388
472
  """Get the size of a basis function set."""
389
473
  size = c_int()
@@ -393,6 +477,8 @@ def funcs_get_size(funcs):
393
477
  return size.value
394
478
 
395
479
  # TODO: Rename funcs_eval_single
480
+
481
+
396
482
  def funcs_eval_single_float64(funcs, x):
397
483
  """Evaluate basis functions at a single point."""
398
484
  # Get number of functions
@@ -415,6 +501,8 @@ def funcs_eval_single_float64(funcs, x):
415
501
  return out
416
502
 
417
503
  # TODO: Rename to funcs_eval_matsu_single
504
+
505
+
418
506
  def funcs_eval_single_complex128(funcs, x):
419
507
  """Evaluate basis functions at a single point."""
420
508
  # Get number of functions
@@ -436,22 +524,26 @@ def funcs_eval_single_complex128(funcs, x):
436
524
 
437
525
  return out
438
526
 
439
- def funcs_get_n_roots(funcs):
440
- """Get the number of roots of the basis functions."""
441
- n_roots = c_int()
442
- status = _lib.spir_funcs_get_n_roots(funcs, byref(n_roots))
527
+
528
+ def funcs_get_n_knots(funcs):
529
+ """Get the number of knots of the underlying piecewise Legendre polynomial."""
530
+ n_knots = c_int()
531
+ status = _lib.spir_funcs_get_n_knots(funcs, byref(n_knots))
443
532
  if status != COMPUTATION_SUCCESS:
444
- raise RuntimeError(f"Failed to get number of roots: {status}")
445
- return n_roots.value
446
-
447
- def funcs_get_roots(funcs):
448
- """Get the roots of the basis functions."""
449
- n_roots = funcs_get_n_roots(funcs)
450
- roots = np.zeros(n_roots, dtype=np.float64)
451
- status = _lib.spir_funcs_get_roots(funcs, roots.ctypes.data_as(POINTER(c_double)))
533
+ raise RuntimeError(f"Failed to get number of knots: {status}")
534
+ return n_knots.value
535
+
536
+
537
+ def funcs_get_knots(funcs):
538
+ """Get the knots of the underlying piecewise Legendre polynomial."""
539
+ n_knots = funcs_get_n_knots(funcs)
540
+ knots = np.zeros(n_knots, dtype=np.float64)
541
+ status = _lib.spir_funcs_get_knots(
542
+ funcs, knots.ctypes.data_as(POINTER(c_double)))
452
543
  if status != COMPUTATION_SUCCESS:
453
- raise RuntimeError(f"Failed to get roots: {status}")
454
- return roots
544
+ raise RuntimeError(f"Failed to get knots: {status}")
545
+ return knots
546
+
455
547
 
456
548
  def basis_get_default_tau_sampling_points(basis):
457
549
  """Get default tau sampling points for a basis."""
@@ -459,73 +551,90 @@ def basis_get_default_tau_sampling_points(basis):
459
551
  n_points = c_int()
460
552
  status = _lib.spir_basis_get_n_default_taus(basis, byref(n_points))
461
553
  if status != COMPUTATION_SUCCESS:
462
- raise RuntimeError(f"Failed to get number of default tau points: {status}")
554
+ raise RuntimeError(
555
+ f"Failed to get number of default tau points: {status}")
463
556
 
464
557
  # Get the points
465
558
  points = np.zeros(n_points.value, dtype=np.float64)
466
- status = _lib.spir_basis_get_default_taus(basis, points.ctypes.data_as(POINTER(c_double)))
559
+ status = _lib.spir_basis_get_default_taus(
560
+ basis, points.ctypes.data_as(POINTER(c_double)))
467
561
  if status != COMPUTATION_SUCCESS:
468
562
  raise RuntimeError(f"Failed to get default tau points: {status}")
469
563
 
470
564
  return points
471
565
 
566
+
472
567
  def basis_get_default_tau_sampling_points_ext(basis, n_points):
473
568
  """Get default tau sampling points for a basis."""
474
569
  points = np.zeros(n_points, dtype=np.float64)
475
570
  n_points_returned = c_int()
476
- status = _lib.spir_basis_get_default_taus_ext(basis, n_points, points.ctypes.data_as(POINTER(c_double)), byref(n_points_returned))
571
+ status = _lib.spir_basis_get_default_taus_ext(
572
+ basis, n_points, points.ctypes.data_as(POINTER(c_double)), byref(n_points_returned))
477
573
  if status != COMPUTATION_SUCCESS:
478
574
  raise RuntimeError(f"Failed to get default tau points: {status}")
479
575
  return points
480
576
 
577
+
481
578
  def basis_get_default_omega_sampling_points(basis):
482
579
  """Get default omega (real frequency) sampling points for a basis."""
483
580
  # Get number of points
484
581
  n_points = c_int()
485
582
  status = _lib.spir_basis_get_n_default_ws(basis, byref(n_points))
486
583
  if status != COMPUTATION_SUCCESS:
487
- raise RuntimeError(f"Failed to get number of default omega points: {status}")
584
+ raise RuntimeError(
585
+ f"Failed to get number of default omega points: {status}")
488
586
 
489
587
  # Get the points
490
588
  points = np.zeros(n_points.value, dtype=np.float64)
491
- status = _lib.spir_basis_get_default_ws(basis, points.ctypes.data_as(POINTER(c_double)))
589
+ status = _lib.spir_basis_get_default_ws(
590
+ basis, points.ctypes.data_as(POINTER(c_double)))
492
591
  if status != COMPUTATION_SUCCESS:
493
592
  raise RuntimeError(f"Failed to get default omega points: {status}")
494
593
 
495
594
  return points
496
595
 
596
+
497
597
  def basis_get_default_matsubara_sampling_points(basis, positive_only=False):
498
598
  """Get default Matsubara sampling points for a basis."""
499
599
  # Get number of points
500
600
  n_points = c_int()
501
- status = _lib.spir_basis_get_n_default_matsus(basis, c_bool(positive_only), byref(n_points))
601
+ status = _lib.spir_basis_get_n_default_matsus(
602
+ basis, c_bool(positive_only), byref(n_points))
502
603
  if status != COMPUTATION_SUCCESS:
503
- raise RuntimeError(f"Failed to get number of default Matsubara points: {status}")
604
+ raise RuntimeError(
605
+ f"Failed to get number of default Matsubara points: {status}")
504
606
 
505
607
  # Get the points
506
608
  points = np.zeros(n_points.value, dtype=np.int64)
507
- status = _lib.spir_basis_get_default_matsus(basis, c_bool(positive_only), points.ctypes.data_as(POINTER(c_int64)))
609
+ status = _lib.spir_basis_get_default_matsus(basis, c_bool(
610
+ positive_only), points.ctypes.data_as(POINTER(c_int64)))
508
611
  if status != COMPUTATION_SUCCESS:
509
612
  raise RuntimeError(f"Failed to get default Matsubara points: {status}")
510
613
 
511
614
  return points
512
615
 
616
+
513
617
  def basis_get_n_default_matsus_ext(basis, n_points, positive_only):
514
618
  """Get the number of default Matsubara sampling points for a basis."""
515
619
  n_points_returned = c_int()
516
- status = _lib.spir_basis_get_n_default_matsus_ext(basis, c_bool(positive_only), n_points, byref(n_points_returned))
620
+ status = _lib.spir_basis_get_n_default_matsus_ext(
621
+ basis, c_bool(positive_only), n_points, byref(n_points_returned))
517
622
  if status != COMPUTATION_SUCCESS:
518
- raise RuntimeError(f"Failed to get number of default Matsubara points: {status}")
623
+ raise RuntimeError(
624
+ f"Failed to get number of default Matsubara points: {status}")
519
625
  return n_points_returned.value
520
626
 
627
+
521
628
  def basis_get_default_matsus_ext(basis, positive_only, points):
522
629
  n_points = len(points)
523
630
  n_points_returned = c_int()
524
- status = _lib.spir_basis_get_default_matsus_ext(basis, c_bool(positive_only), n_points, points.ctypes.data_as(POINTER(c_int64)), byref(n_points_returned))
631
+ status = _lib.spir_basis_get_default_matsus_ext(basis, c_bool(
632
+ positive_only), n_points, points.ctypes.data_as(POINTER(c_int64)), byref(n_points_returned))
525
633
  if status != COMPUTATION_SUCCESS:
526
634
  raise RuntimeError(f"Failed to get default Matsubara points: {status}")
527
635
  return points
528
636
 
637
+
529
638
  def tau_sampling_new(basis, sampling_points=None):
530
639
  """Create a new tau sampling object."""
531
640
  if sampling_points is None:
@@ -545,6 +654,7 @@ def tau_sampling_new(basis, sampling_points=None):
545
654
 
546
655
  return sampling
547
656
 
657
+
548
658
  def _statistics_to_c(statistics):
549
659
  """Convert statistics to c type."""
550
660
  if statistics == "F":
@@ -554,6 +664,7 @@ def _statistics_to_c(statistics):
554
664
  else:
555
665
  raise ValueError(f"Invalid statistics: {statistics}")
556
666
 
667
+
557
668
  def tau_sampling_new_with_matrix(basis, statistics, sampling_points, matrix):
558
669
  """Create a new tau sampling object with a matrix."""
559
670
  status = c_int()
@@ -571,10 +682,12 @@ def tau_sampling_new_with_matrix(basis, statistics, sampling_points, matrix):
571
682
 
572
683
  return sampling
573
684
 
685
+
574
686
  def matsubara_sampling_new(basis, positive_only=False, sampling_points=None):
575
687
  """Create a new Matsubara sampling object."""
576
688
  if sampling_points is None:
577
- sampling_points = basis_get_default_matsubara_sampling_points(basis, positive_only)
689
+ sampling_points = basis_get_default_matsubara_sampling_points(
690
+ basis, positive_only)
578
691
 
579
692
  sampling_points = np.asarray(sampling_points, dtype=np.int64)
580
693
  n_points = len(sampling_points)
@@ -586,10 +699,12 @@ def matsubara_sampling_new(basis, positive_only=False, sampling_points=None):
586
699
  byref(status)
587
700
  )
588
701
  if status.value != COMPUTATION_SUCCESS:
589
- raise RuntimeError(f"Failed to create Matsubara sampling: {status.value}")
702
+ raise RuntimeError(
703
+ f"Failed to create Matsubara sampling: {status.value}")
590
704
 
591
705
  return sampling
592
706
 
707
+
593
708
  def matsubara_sampling_new_with_matrix(statistics, basis_size, positive_only, sampling_points, matrix):
594
709
  """Create a new Matsubara sampling object with a matrix."""
595
710
  status = c_int()
@@ -599,11 +714,12 @@ def matsubara_sampling_new_with_matrix(statistics, basis_size, positive_only, sa
599
714
  c_int(basis_size), # basis_size
600
715
  c_bool(positive_only), # positive_only
601
716
  c_int(len(sampling_points)), # num_points
602
- sampling_points.ctypes.data_as(POINTER(c_int64)), # points
603
- matrix.ctypes.data_as(POINTER(c_double_complex)), # matrix
717
+ sampling_points.ctypes.data_as(POINTER(c_int64)), # points
718
+ matrix.ctypes.data_as(POINTER(c_double_complex)), # matrix
604
719
  byref(status) # status
605
720
  )
606
721
  if status.value != COMPUTATION_SUCCESS:
607
- raise RuntimeError(f"Failed to create Matsubara sampling: {status.value}")
722
+ raise RuntimeError(
723
+ f"Failed to create Matsubara sampling: {status.value}")
608
724
 
609
725
  return sampling
Binary file