pylibsparseir 0.1.0__cp310-cp310-macosx_15_0_arm64.whl → 0.6.0__cp310-cp310-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.
- include/eigen3/Eigen/Cholesky +45 -0
- include/eigen3/Eigen/CholmodSupport +48 -0
- include/eigen3/Eigen/Core +384 -0
- include/eigen3/Eigen/Dense +7 -0
- include/eigen3/Eigen/Eigen +2 -0
- include/eigen3/Eigen/Eigenvalues +60 -0
- include/eigen3/Eigen/Geometry +59 -0
- include/eigen3/Eigen/Householder +29 -0
- include/eigen3/Eigen/IterativeLinearSolvers +48 -0
- include/eigen3/Eigen/Jacobi +32 -0
- include/eigen3/Eigen/KLUSupport +41 -0
- include/eigen3/Eigen/LU +47 -0
- include/eigen3/Eigen/MetisSupport +35 -0
- include/eigen3/Eigen/OrderingMethods +70 -0
- include/eigen3/Eigen/PaStiXSupport +49 -0
- include/eigen3/Eigen/PardisoSupport +35 -0
- include/eigen3/Eigen/QR +50 -0
- include/eigen3/Eigen/QtAlignedMalloc +39 -0
- include/eigen3/Eigen/SPQRSupport +34 -0
- include/eigen3/Eigen/SVD +50 -0
- include/eigen3/Eigen/Sparse +34 -0
- include/eigen3/Eigen/SparseCholesky +37 -0
- include/eigen3/Eigen/SparseCore +69 -0
- include/eigen3/Eigen/SparseLU +50 -0
- include/eigen3/Eigen/SparseQR +36 -0
- include/eigen3/Eigen/StdDeque +27 -0
- include/eigen3/Eigen/StdList +26 -0
- include/eigen3/Eigen/StdVector +27 -0
- include/eigen3/Eigen/SuperLUSupport +64 -0
- include/eigen3/Eigen/UmfPackSupport +40 -0
- include/eigen3/Eigen/src/Cholesky/LDLT.h +688 -0
- include/eigen3/Eigen/src/Cholesky/LLT.h +558 -0
- include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
- include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
- include/eigen3/Eigen/src/Core/ArithmeticSequence.h +413 -0
- include/eigen3/Eigen/src/Core/Array.h +417 -0
- include/eigen3/Eigen/src/Core/ArrayBase.h +226 -0
- include/eigen3/Eigen/src/Core/ArrayWrapper.h +209 -0
- include/eigen3/Eigen/src/Core/Assign.h +90 -0
- include/eigen3/Eigen/src/Core/AssignEvaluator.h +1010 -0
- include/eigen3/Eigen/src/Core/Assign_MKL.h +178 -0
- include/eigen3/Eigen/src/Core/BandMatrix.h +353 -0
- include/eigen3/Eigen/src/Core/Block.h +448 -0
- include/eigen3/Eigen/src/Core/BooleanRedux.h +162 -0
- include/eigen3/Eigen/src/Core/CommaInitializer.h +164 -0
- include/eigen3/Eigen/src/Core/ConditionEstimator.h +175 -0
- include/eigen3/Eigen/src/Core/CoreEvaluators.h +1741 -0
- include/eigen3/Eigen/src/Core/CoreIterators.h +132 -0
- include/eigen3/Eigen/src/Core/CwiseBinaryOp.h +183 -0
- include/eigen3/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
- include/eigen3/Eigen/src/Core/CwiseTernaryOp.h +197 -0
- include/eigen3/Eigen/src/Core/CwiseUnaryOp.h +103 -0
- include/eigen3/Eigen/src/Core/CwiseUnaryView.h +132 -0
- include/eigen3/Eigen/src/Core/DenseBase.h +701 -0
- include/eigen3/Eigen/src/Core/DenseCoeffsBase.h +685 -0
- include/eigen3/Eigen/src/Core/DenseStorage.h +652 -0
- include/eigen3/Eigen/src/Core/Diagonal.h +258 -0
- include/eigen3/Eigen/src/Core/DiagonalMatrix.h +391 -0
- include/eigen3/Eigen/src/Core/DiagonalProduct.h +28 -0
- include/eigen3/Eigen/src/Core/Dot.h +318 -0
- include/eigen3/Eigen/src/Core/EigenBase.h +160 -0
- include/eigen3/Eigen/src/Core/ForceAlignedAccess.h +150 -0
- include/eigen3/Eigen/src/Core/Fuzzy.h +155 -0
- include/eigen3/Eigen/src/Core/GeneralProduct.h +465 -0
- include/eigen3/Eigen/src/Core/GenericPacketMath.h +1040 -0
- include/eigen3/Eigen/src/Core/GlobalFunctions.h +194 -0
- include/eigen3/Eigen/src/Core/IO.h +258 -0
- include/eigen3/Eigen/src/Core/IndexedView.h +237 -0
- include/eigen3/Eigen/src/Core/Inverse.h +117 -0
- include/eigen3/Eigen/src/Core/Map.h +171 -0
- include/eigen3/Eigen/src/Core/MapBase.h +310 -0
- include/eigen3/Eigen/src/Core/MathFunctions.h +2057 -0
- include/eigen3/Eigen/src/Core/MathFunctionsImpl.h +200 -0
- include/eigen3/Eigen/src/Core/Matrix.h +565 -0
- include/eigen3/Eigen/src/Core/MatrixBase.h +547 -0
- include/eigen3/Eigen/src/Core/NestByValue.h +85 -0
- include/eigen3/Eigen/src/Core/NoAlias.h +109 -0
- include/eigen3/Eigen/src/Core/NumTraits.h +335 -0
- include/eigen3/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
- include/eigen3/Eigen/src/Core/PermutationMatrix.h +605 -0
- include/eigen3/Eigen/src/Core/PlainObjectBase.h +1128 -0
- include/eigen3/Eigen/src/Core/Product.h +191 -0
- include/eigen3/Eigen/src/Core/ProductEvaluators.h +1179 -0
- include/eigen3/Eigen/src/Core/Random.h +218 -0
- include/eigen3/Eigen/src/Core/Redux.h +515 -0
- include/eigen3/Eigen/src/Core/Ref.h +381 -0
- include/eigen3/Eigen/src/Core/Replicate.h +142 -0
- include/eigen3/Eigen/src/Core/Reshaped.h +454 -0
- include/eigen3/Eigen/src/Core/ReturnByValue.h +119 -0
- include/eigen3/Eigen/src/Core/Reverse.h +217 -0
- include/eigen3/Eigen/src/Core/Select.h +164 -0
- include/eigen3/Eigen/src/Core/SelfAdjointView.h +365 -0
- include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
- include/eigen3/Eigen/src/Core/Solve.h +188 -0
- include/eigen3/Eigen/src/Core/SolveTriangular.h +235 -0
- include/eigen3/Eigen/src/Core/SolverBase.h +168 -0
- include/eigen3/Eigen/src/Core/StableNorm.h +251 -0
- include/eigen3/Eigen/src/Core/StlIterators.h +463 -0
- include/eigen3/Eigen/src/Core/Stride.h +116 -0
- include/eigen3/Eigen/src/Core/Swap.h +68 -0
- include/eigen3/Eigen/src/Core/Transpose.h +464 -0
- include/eigen3/Eigen/src/Core/Transpositions.h +386 -0
- include/eigen3/Eigen/src/Core/TriangularMatrix.h +1001 -0
- include/eigen3/Eigen/src/Core/VectorBlock.h +96 -0
- include/eigen3/Eigen/src/Core/VectorwiseOp.h +784 -0
- include/eigen3/Eigen/src/Core/Visitor.h +381 -0
- include/eigen3/Eigen/src/Core/arch/AVX/Complex.h +372 -0
- include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
- include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
- include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
- include/eigen3/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
- include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
- include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
- include/eigen3/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
- include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
- include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
- include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
- include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
- include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
- include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
- include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
- include/eigen3/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
- include/eigen3/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
- include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
- include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
- include/eigen3/Eigen/src/Core/arch/Default/Half.h +942 -0
- include/eigen3/Eigen/src/Core/arch/Default/Settings.h +49 -0
- include/eigen3/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
- include/eigen3/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
- include/eigen3/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
- include/eigen3/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
- include/eigen3/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
- include/eigen3/Eigen/src/Core/arch/MSA/Complex.h +648 -0
- include/eigen3/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
- include/eigen3/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
- include/eigen3/Eigen/src/Core/arch/NEON/Complex.h +584 -0
- include/eigen3/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
- include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
- include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
- include/eigen3/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
- include/eigen3/Eigen/src/Core/arch/SSE/Complex.h +351 -0
- include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
- include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
- include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
- include/eigen3/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
- include/eigen3/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
- include/eigen3/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
- include/eigen3/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
- include/eigen3/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
- include/eigen3/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
- include/eigen3/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
- include/eigen3/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
- include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
- include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
- include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
- include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
- include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
- include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
- include/eigen3/Eigen/src/Core/functors/StlFunctors.h +166 -0
- include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
- include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
- include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
- include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
- include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
- include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
- include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
- include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
- include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
- include/eigen3/Eigen/src/Core/products/Parallelizer.h +180 -0
- include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
- include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
- include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
- include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
- include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
- include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
- include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
- include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
- include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
- include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
- include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
- include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
- include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
- include/eigen3/Eigen/src/Core/util/BlasUtil.h +583 -0
- include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
- include/eigen3/Eigen/src/Core/util/Constants.h +563 -0
- include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
- include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
- include/eigen3/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
- include/eigen3/Eigen/src/Core/util/IntegralConstant.h +272 -0
- include/eigen3/Eigen/src/Core/util/MKL_support.h +137 -0
- include/eigen3/Eigen/src/Core/util/Macros.h +1464 -0
- include/eigen3/Eigen/src/Core/util/Memory.h +1163 -0
- include/eigen3/Eigen/src/Core/util/Meta.h +812 -0
- include/eigen3/Eigen/src/Core/util/NonMPL2.h +3 -0
- include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
- include/eigen3/Eigen/src/Core/util/ReshapedHelper.h +51 -0
- include/eigen3/Eigen/src/Core/util/StaticAssert.h +221 -0
- include/eigen3/Eigen/src/Core/util/SymbolicIndex.h +293 -0
- include/eigen3/Eigen/src/Core/util/XprHelper.h +856 -0
- include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
- include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
- include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
- include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
- include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
- include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
- include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
- include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
- include/eigen3/Eigen/src/Eigenvalues/RealQZ.h +657 -0
- include/eigen3/Eigen/src/Eigenvalues/RealSchur.h +558 -0
- include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
- include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
- include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
- include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
- include/eigen3/Eigen/src/Geometry/AlignedBox.h +486 -0
- include/eigen3/Eigen/src/Geometry/AngleAxis.h +247 -0
- include/eigen3/Eigen/src/Geometry/EulerAngles.h +114 -0
- include/eigen3/Eigen/src/Geometry/Homogeneous.h +501 -0
- include/eigen3/Eigen/src/Geometry/Hyperplane.h +282 -0
- include/eigen3/Eigen/src/Geometry/OrthoMethods.h +235 -0
- include/eigen3/Eigen/src/Geometry/ParametrizedLine.h +232 -0
- include/eigen3/Eigen/src/Geometry/Quaternion.h +870 -0
- include/eigen3/Eigen/src/Geometry/Rotation2D.h +199 -0
- include/eigen3/Eigen/src/Geometry/RotationBase.h +206 -0
- include/eigen3/Eigen/src/Geometry/Scaling.h +188 -0
- include/eigen3/Eigen/src/Geometry/Transform.h +1563 -0
- include/eigen3/Eigen/src/Geometry/Translation.h +202 -0
- include/eigen3/Eigen/src/Geometry/Umeyama.h +166 -0
- include/eigen3/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
- include/eigen3/Eigen/src/Householder/BlockHouseholder.h +110 -0
- include/eigen3/Eigen/src/Householder/Householder.h +176 -0
- include/eigen3/Eigen/src/Householder/HouseholderSequence.h +545 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
- include/eigen3/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
- include/eigen3/Eigen/src/Jacobi/Jacobi.h +483 -0
- include/eigen3/Eigen/src/KLUSupport/KLUSupport.h +358 -0
- include/eigen3/Eigen/src/LU/Determinant.h +117 -0
- include/eigen3/Eigen/src/LU/FullPivLU.h +877 -0
- include/eigen3/Eigen/src/LU/InverseImpl.h +432 -0
- include/eigen3/Eigen/src/LU/PartialPivLU.h +624 -0
- include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
- include/eigen3/Eigen/src/LU/arch/InverseSize4.h +351 -0
- include/eigen3/Eigen/src/MetisSupport/MetisSupport.h +137 -0
- include/eigen3/Eigen/src/OrderingMethods/Amd.h +435 -0
- include/eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
- include/eigen3/Eigen/src/OrderingMethods/Ordering.h +153 -0
- include/eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
- include/eigen3/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
- include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
- include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
- include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
- include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
- include/eigen3/Eigen/src/QR/HouseholderQR.h +434 -0
- include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
- include/eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
- include/eigen3/Eigen/src/SVD/BDCSVD.h +1366 -0
- include/eigen3/Eigen/src/SVD/JacobiSVD.h +812 -0
- include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
- include/eigen3/Eigen/src/SVD/SVDBase.h +376 -0
- include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
- include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
- include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
- include/eigen3/Eigen/src/SparseCore/AmbiVector.h +378 -0
- include/eigen3/Eigen/src/SparseCore/CompressedStorage.h +274 -0
- include/eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
- include/eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
- include/eigen3/Eigen/src/SparseCore/SparseAssign.h +270 -0
- include/eigen3/Eigen/src/SparseCore/SparseBlock.h +571 -0
- include/eigen3/Eigen/src/SparseCore/SparseColEtree.h +206 -0
- include/eigen3/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
- include/eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
- include/eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
- include/eigen3/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
- include/eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
- include/eigen3/Eigen/src/SparseCore/SparseDot.h +98 -0
- include/eigen3/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
- include/eigen3/Eigen/src/SparseCore/SparseMap.h +305 -0
- include/eigen3/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
- include/eigen3/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
- include/eigen3/Eigen/src/SparseCore/SparsePermutation.h +178 -0
- include/eigen3/Eigen/src/SparseCore/SparseProduct.h +181 -0
- include/eigen3/Eigen/src/SparseCore/SparseRedux.h +49 -0
- include/eigen3/Eigen/src/SparseCore/SparseRef.h +397 -0
- include/eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
- include/eigen3/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
- include/eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
- include/eigen3/Eigen/src/SparseCore/SparseTranspose.h +92 -0
- include/eigen3/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
- include/eigen3/Eigen/src/SparseCore/SparseUtil.h +186 -0
- include/eigen3/Eigen/src/SparseCore/SparseVector.h +478 -0
- include/eigen3/Eigen/src/SparseCore/SparseView.h +254 -0
- include/eigen3/Eigen/src/SparseCore/TriangularSolver.h +315 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU.h +923 -0
- include/eigen3/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
- include/eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
- include/eigen3/Eigen/src/SparseQR/SparseQR.h +758 -0
- include/eigen3/Eigen/src/StlSupport/StdDeque.h +116 -0
- include/eigen3/Eigen/src/StlSupport/StdList.h +106 -0
- include/eigen3/Eigen/src/StlSupport/StdVector.h +131 -0
- include/eigen3/Eigen/src/StlSupport/details.h +84 -0
- include/eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
- include/eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
- include/eigen3/Eigen/src/misc/Image.h +82 -0
- include/eigen3/Eigen/src/misc/Kernel.h +79 -0
- include/eigen3/Eigen/src/misc/RealSvd2x2.h +55 -0
- include/eigen3/Eigen/src/misc/blas.h +440 -0
- include/eigen3/Eigen/src/misc/lapack.h +152 -0
- include/eigen3/Eigen/src/misc/lapacke.h +16292 -0
- include/eigen3/Eigen/src/misc/lapacke_mangling.h +17 -0
- include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
- include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
- include/eigen3/Eigen/src/plugins/BlockMethods.h +1442 -0
- include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
- include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
- include/eigen3/Eigen/src/plugins/IndexedViewMethods.h +262 -0
- include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
- include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
- include/eigen3/Eigen/src/plugins/ReshapedMethods.h +149 -0
- include/eigen3/signature_of_eigen3_matrix_library +1 -0
- include/eigen3/unsupported/Eigen/AdolcForward +159 -0
- include/eigen3/unsupported/Eigen/AlignedVector3 +234 -0
- include/eigen3/unsupported/Eigen/ArpackSupport +30 -0
- include/eigen3/unsupported/Eigen/AutoDiff +46 -0
- include/eigen3/unsupported/Eigen/BVH +95 -0
- include/eigen3/unsupported/Eigen/CXX11/Tensor +137 -0
- include/eigen3/unsupported/Eigen/CXX11/TensorSymmetry +42 -0
- include/eigen3/unsupported/Eigen/CXX11/ThreadPool +74 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +554 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +329 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +247 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +1176 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +1559 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +1093 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +518 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +377 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +1023 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +73 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +6 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +1413 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +575 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +1650 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +1679 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +456 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +1132 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +544 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +214 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +347 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +137 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +6 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +104 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +389 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +1048 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +409 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +236 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +490 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +236 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +983 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +703 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +388 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +669 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +379 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +237 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +191 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +488 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +302 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +33 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +99 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +44 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +79 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +603 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +738 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +247 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +82 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +263 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +216 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +98 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +327 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +311 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +1102 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +708 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +291 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +322 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +998 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +6 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +966 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +582 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +454 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +465 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +528 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +513 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +471 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +161 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +346 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +303 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +264 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +249 -0
- include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +629 -0
- include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +293 -0
- include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +236 -0
- include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +338 -0
- include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +669 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +67 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +249 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +486 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +236 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +23 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +40 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +301 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +48 -0
- include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +20 -0
- include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +537 -0
- include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +88 -0
- include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h +261 -0
- include/eigen3/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +158 -0
- include/eigen3/unsupported/Eigen/EulerAngles +43 -0
- include/eigen3/unsupported/Eigen/FFT +419 -0
- include/eigen3/unsupported/Eigen/IterativeSolvers +51 -0
- include/eigen3/unsupported/Eigen/KroneckerProduct +36 -0
- include/eigen3/unsupported/Eigen/LevenbergMarquardt +49 -0
- include/eigen3/unsupported/Eigen/MPRealSupport +213 -0
- include/eigen3/unsupported/Eigen/MatrixFunctions +504 -0
- include/eigen3/unsupported/Eigen/MoreVectorization +24 -0
- include/eigen3/unsupported/Eigen/NonLinearOptimization +140 -0
- include/eigen3/unsupported/Eigen/NumericalDiff +56 -0
- include/eigen3/unsupported/Eigen/OpenGLSupport +322 -0
- include/eigen3/unsupported/Eigen/Polynomials +137 -0
- include/eigen3/unsupported/Eigen/Skyline +39 -0
- include/eigen3/unsupported/Eigen/SparseExtra +54 -0
- include/eigen3/unsupported/Eigen/SpecialFunctions +103 -0
- include/eigen3/unsupported/Eigen/Splines +35 -0
- include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +108 -0
- include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +730 -0
- include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +220 -0
- include/eigen3/unsupported/Eigen/src/BVH/BVAlgorithms.h +293 -0
- include/eigen3/unsupported/Eigen/src/BVH/KdBVH.h +223 -0
- include/eigen3/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +790 -0
- include/eigen3/unsupported/Eigen/src/EulerAngles/EulerAngles.h +355 -0
- include/eigen3/unsupported/Eigen/src/EulerAngles/EulerSystem.h +305 -0
- include/eigen3/unsupported/Eigen/src/FFT/ei_fftw_impl.h +261 -0
- include/eigen3/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +449 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +187 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +511 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/GMRES.h +335 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/IDRS.h +436 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +90 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/IterationController.h +154 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/MINRES.h +267 -0
- include/eigen3/unsupported/Eigen/src/IterativeSolvers/Scaling.h +193 -0
- include/eigen3/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +305 -0
- include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +84 -0
- include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +202 -0
- include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +160 -0
- include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +188 -0
- include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +396 -0
- include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +441 -0
- include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +569 -0
- include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +373 -0
- include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +705 -0
- include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +368 -0
- include/eigen3/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +117 -0
- include/eigen3/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +95 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +601 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +657 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h +66 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h +70 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +107 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +79 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +298 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +91 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +30 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +99 -0
- include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +49 -0
- include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +130 -0
- include/eigen3/unsupported/Eigen/src/Polynomials/Companion.h +280 -0
- include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +428 -0
- include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +143 -0
- include/eigen3/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +352 -0
- include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrix.h +862 -0
- include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +212 -0
- include/eigen3/unsupported/Eigen/src/Skyline/SkylineProduct.h +295 -0
- include/eigen3/unsupported/Eigen/src/Skyline/SkylineStorage.h +259 -0
- include/eigen3/unsupported/Eigen/src/Skyline/SkylineUtil.h +89 -0
- include/eigen3/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +122 -0
- include/eigen3/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +1079 -0
- include/eigen3/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +404 -0
- include/eigen3/unsupported/Eigen/src/SparseExtra/MarketIO.h +282 -0
- include/eigen3/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +247 -0
- include/eigen3/unsupported/Eigen/src/SparseExtra/RandomSetter.h +349 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +286 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +68 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +357 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +66 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +1959 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +118 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +67 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +167 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +58 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +330 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +58 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +2045 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +79 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +46 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +16 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +46 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +16 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +369 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +54 -0
- include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +34 -0
- include/eigen3/unsupported/Eigen/src/Splines/Spline.h +507 -0
- include/eigen3/unsupported/Eigen/src/Splines/SplineFitting.h +431 -0
- include/eigen3/unsupported/Eigen/src/Splines/SplineFwd.h +93 -0
- pylibsparseir/__init__.py +31 -0
- pylibsparseir/clean_build_artifacts.py +0 -1
- pylibsparseir/core.py +178 -62
- pylibsparseir/libsparseir.dylib +0 -0
- pylibsparseir-0.6.0.dist-info/METADATA +213 -0
- pylibsparseir-0.6.0.dist-info/RECORD +545 -0
- {pylibsparseir-0.1.0.dist-info → pylibsparseir-0.6.0.dist-info}/WHEEL +1 -1
- pylibsparseir-0.6.0.dist-info/licenses/LICENSE +21 -0
- share/eigen3/cmake/Eigen3Config.cmake +37 -0
- share/eigen3/cmake/Eigen3ConfigVersion.cmake +65 -0
- share/eigen3/cmake/Eigen3Targets.cmake +106 -0
- share/eigen3/cmake/UseEigen3.cmake +6 -0
- share/pkgconfig/eigen3.pc +9 -0
- pylibsparseir/libsparseir.0.4.2.dylib +0 -0
- pylibsparseir/libsparseir.0.dylib +0 -0
- pylibsparseir-0.1.0.dist-info/METADATA +0 -130
- pylibsparseir-0.1.0.dist-info/RECORD +0 -12
- pylibsparseir-0.1.0.dist-info/entry_points.txt +0 -2
- pylibsparseir-0.1.0.dist-info/top_level.txt +0 -1
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
// This file is part of Eigen, a lightweight C++ template library
|
|
2
|
+
// for linear algebra.
|
|
3
|
+
//
|
|
4
|
+
// Copyright (C) 2008-2009 Guillaume Saupin <guillaume.saupin@cea.fr>
|
|
5
|
+
//
|
|
6
|
+
// This Source Code Form is subject to the terms of the Mozilla
|
|
7
|
+
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
8
|
+
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
9
|
+
|
|
10
|
+
#ifndef EIGEN_SKYLINEMATRIXBASE_H
|
|
11
|
+
#define EIGEN_SKYLINEMATRIXBASE_H
|
|
12
|
+
|
|
13
|
+
#include "SkylineUtil.h"
|
|
14
|
+
|
|
15
|
+
namespace Eigen {
|
|
16
|
+
|
|
17
|
+
/** \ingroup Skyline_Module
|
|
18
|
+
*
|
|
19
|
+
* \class SkylineMatrixBase
|
|
20
|
+
*
|
|
21
|
+
* \brief Base class of any skyline matrices or skyline expressions
|
|
22
|
+
*
|
|
23
|
+
* \param Derived
|
|
24
|
+
*
|
|
25
|
+
*/
|
|
26
|
+
template<typename Derived> class SkylineMatrixBase : public EigenBase<Derived> {
|
|
27
|
+
public:
|
|
28
|
+
|
|
29
|
+
typedef typename internal::traits<Derived>::Scalar Scalar;
|
|
30
|
+
typedef typename internal::traits<Derived>::StorageKind StorageKind;
|
|
31
|
+
typedef typename internal::index<StorageKind>::type Index;
|
|
32
|
+
|
|
33
|
+
enum {
|
|
34
|
+
RowsAtCompileTime = internal::traits<Derived>::RowsAtCompileTime,
|
|
35
|
+
/**< The number of rows at compile-time. This is just a copy of the value provided
|
|
36
|
+
* by the \a Derived type. If a value is not known at compile-time,
|
|
37
|
+
* it is set to the \a Dynamic constant.
|
|
38
|
+
* \sa MatrixBase::rows(), MatrixBase::cols(), ColsAtCompileTime, SizeAtCompileTime */
|
|
39
|
+
|
|
40
|
+
ColsAtCompileTime = internal::traits<Derived>::ColsAtCompileTime,
|
|
41
|
+
/**< The number of columns at compile-time. This is just a copy of the value provided
|
|
42
|
+
* by the \a Derived type. If a value is not known at compile-time,
|
|
43
|
+
* it is set to the \a Dynamic constant.
|
|
44
|
+
* \sa MatrixBase::rows(), MatrixBase::cols(), RowsAtCompileTime, SizeAtCompileTime */
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
SizeAtCompileTime = (internal::size_at_compile_time<internal::traits<Derived>::RowsAtCompileTime,
|
|
48
|
+
internal::traits<Derived>::ColsAtCompileTime>::ret),
|
|
49
|
+
/**< This is equal to the number of coefficients, i.e. the number of
|
|
50
|
+
* rows times the number of columns, or to \a Dynamic if this is not
|
|
51
|
+
* known at compile-time. \sa RowsAtCompileTime, ColsAtCompileTime */
|
|
52
|
+
|
|
53
|
+
MaxRowsAtCompileTime = RowsAtCompileTime,
|
|
54
|
+
MaxColsAtCompileTime = ColsAtCompileTime,
|
|
55
|
+
|
|
56
|
+
MaxSizeAtCompileTime = (internal::size_at_compile_time<MaxRowsAtCompileTime,
|
|
57
|
+
MaxColsAtCompileTime>::ret),
|
|
58
|
+
|
|
59
|
+
IsVectorAtCompileTime = RowsAtCompileTime == 1 || ColsAtCompileTime == 1,
|
|
60
|
+
/**< This is set to true if either the number of rows or the number of
|
|
61
|
+
* columns is known at compile-time to be equal to 1. Indeed, in that case,
|
|
62
|
+
* we are dealing with a column-vector (if there is only one column) or with
|
|
63
|
+
* a row-vector (if there is only one row). */
|
|
64
|
+
|
|
65
|
+
Flags = internal::traits<Derived>::Flags,
|
|
66
|
+
/**< This stores expression \ref flags flags which may or may not be inherited by new expressions
|
|
67
|
+
* constructed from this one. See the \ref flags "list of flags".
|
|
68
|
+
*/
|
|
69
|
+
|
|
70
|
+
CoeffReadCost = internal::traits<Derived>::CoeffReadCost,
|
|
71
|
+
/**< This is a rough measure of how expensive it is to read one coefficient from
|
|
72
|
+
* this expression.
|
|
73
|
+
*/
|
|
74
|
+
|
|
75
|
+
IsRowMajor = Flags & RowMajorBit ? 1 : 0
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
#ifndef EIGEN_PARSED_BY_DOXYGEN
|
|
79
|
+
/** This is the "real scalar" type; if the \a Scalar type is already real numbers
|
|
80
|
+
* (e.g. int, float or double) then \a RealScalar is just the same as \a Scalar. If
|
|
81
|
+
* \a Scalar is \a std::complex<T> then RealScalar is \a T.
|
|
82
|
+
*
|
|
83
|
+
* \sa class NumTraits
|
|
84
|
+
*/
|
|
85
|
+
typedef typename NumTraits<Scalar>::Real RealScalar;
|
|
86
|
+
|
|
87
|
+
/** type of the equivalent square matrix */
|
|
88
|
+
typedef Matrix<Scalar, EIGEN_SIZE_MAX(RowsAtCompileTime, ColsAtCompileTime),
|
|
89
|
+
EIGEN_SIZE_MAX(RowsAtCompileTime, ColsAtCompileTime) > SquareMatrixType;
|
|
90
|
+
|
|
91
|
+
inline const Derived& derived() const {
|
|
92
|
+
return *static_cast<const Derived*> (this);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
inline Derived& derived() {
|
|
96
|
+
return *static_cast<Derived*> (this);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
inline Derived& const_cast_derived() const {
|
|
100
|
+
return *static_cast<Derived*> (const_cast<SkylineMatrixBase*> (this));
|
|
101
|
+
}
|
|
102
|
+
#endif // not EIGEN_PARSED_BY_DOXYGEN
|
|
103
|
+
|
|
104
|
+
/** \returns the number of rows. \sa cols(), RowsAtCompileTime */
|
|
105
|
+
inline EIGEN_CONSTEXPR Index rows() const EIGEN_NOEXCEPT {
|
|
106
|
+
return derived().rows();
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/** \returns the number of columns. \sa rows(), ColsAtCompileTime*/
|
|
110
|
+
inline EIGEN_CONSTEXPR Index cols() const EIGEN_NOEXCEPT {
|
|
111
|
+
return derived().cols();
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/** \returns the number of coefficients, which is \a rows()*cols().
|
|
115
|
+
* \sa rows(), cols(), SizeAtCompileTime. */
|
|
116
|
+
inline EIGEN_CONSTEXPR Index size() const EIGEN_NOEXCEPT {
|
|
117
|
+
return rows() * cols();
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/** \returns the number of nonzero coefficients which is in practice the number
|
|
121
|
+
* of stored coefficients. */
|
|
122
|
+
inline Index nonZeros() const {
|
|
123
|
+
return derived().nonZeros();
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/** \returns the size of the storage major dimension,
|
|
127
|
+
* i.e., the number of columns for a columns major matrix, and the number of rows otherwise */
|
|
128
|
+
Index outerSize() const {
|
|
129
|
+
return (int(Flags) & RowMajorBit) ? this->rows() : this->cols();
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/** \returns the size of the inner dimension according to the storage order,
|
|
133
|
+
* i.e., the number of rows for a columns major matrix, and the number of cols otherwise */
|
|
134
|
+
Index innerSize() const {
|
|
135
|
+
return (int(Flags) & RowMajorBit) ? this->cols() : this->rows();
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
bool isRValue() const {
|
|
139
|
+
return m_isRValue;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
Derived& markAsRValue() {
|
|
143
|
+
m_isRValue = true;
|
|
144
|
+
return derived();
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
SkylineMatrixBase() : m_isRValue(false) {
|
|
148
|
+
/* TODO check flags */
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
inline Derived & operator=(const Derived& other) {
|
|
152
|
+
this->operator=<Derived > (other);
|
|
153
|
+
return derived();
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
template<typename OtherDerived>
|
|
157
|
+
inline void assignGeneric(const OtherDerived& other) {
|
|
158
|
+
derived().resize(other.rows(), other.cols());
|
|
159
|
+
for (Index row = 0; row < rows(); row++)
|
|
160
|
+
for (Index col = 0; col < cols(); col++) {
|
|
161
|
+
if (other.coeff(row, col) != Scalar(0))
|
|
162
|
+
derived().insert(row, col) = other.coeff(row, col);
|
|
163
|
+
}
|
|
164
|
+
derived().finalize();
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
template<typename OtherDerived>
|
|
168
|
+
inline Derived & operator=(const SkylineMatrixBase<OtherDerived>& other) {
|
|
169
|
+
//TODO
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
template<typename Lhs, typename Rhs>
|
|
173
|
+
inline Derived & operator=(const SkylineProduct<Lhs, Rhs, SkylineTimeSkylineProduct>& product);
|
|
174
|
+
|
|
175
|
+
friend std::ostream & operator <<(std::ostream & s, const SkylineMatrixBase& m) {
|
|
176
|
+
s << m.derived();
|
|
177
|
+
return s;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
template<typename OtherDerived>
|
|
181
|
+
const typename SkylineProductReturnType<Derived, OtherDerived>::Type
|
|
182
|
+
operator*(const MatrixBase<OtherDerived> &other) const;
|
|
183
|
+
|
|
184
|
+
/** \internal use operator= */
|
|
185
|
+
template<typename DenseDerived>
|
|
186
|
+
void evalTo(MatrixBase<DenseDerived>& dst) const {
|
|
187
|
+
dst.setZero();
|
|
188
|
+
for (Index i = 0; i < rows(); i++)
|
|
189
|
+
for (Index j = 0; j < rows(); j++)
|
|
190
|
+
dst(i, j) = derived().coeff(i, j);
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
Matrix<Scalar, RowsAtCompileTime, ColsAtCompileTime> toDense() const {
|
|
194
|
+
return derived();
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
/** \returns the matrix or vector obtained by evaluating this expression.
|
|
198
|
+
*
|
|
199
|
+
* Notice that in the case of a plain matrix or vector (not an expression) this function just returns
|
|
200
|
+
* a const reference, in order to avoid a useless copy.
|
|
201
|
+
*/
|
|
202
|
+
EIGEN_STRONG_INLINE const typename internal::eval<Derived, IsSkyline>::type eval() const {
|
|
203
|
+
return typename internal::eval<Derived>::type(derived());
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
protected:
|
|
207
|
+
bool m_isRValue;
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
} // end namespace Eigen
|
|
211
|
+
|
|
212
|
+
#endif // EIGEN_SKYLINEMATRIXBASE_H
|
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
// This file is part of Eigen, a lightweight C++ template library
|
|
2
|
+
// for linear algebra.
|
|
3
|
+
//
|
|
4
|
+
// Copyright (C) 2008-2009 Guillaume Saupin <guillaume.saupin@cea.fr>
|
|
5
|
+
//
|
|
6
|
+
// This Source Code Form is subject to the terms of the Mozilla
|
|
7
|
+
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
8
|
+
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
9
|
+
|
|
10
|
+
#ifndef EIGEN_SKYLINEPRODUCT_H
|
|
11
|
+
#define EIGEN_SKYLINEPRODUCT_H
|
|
12
|
+
|
|
13
|
+
namespace Eigen {
|
|
14
|
+
|
|
15
|
+
template<typename Lhs, typename Rhs, int ProductMode>
|
|
16
|
+
struct SkylineProductReturnType {
|
|
17
|
+
typedef const typename internal::nested_eval<Lhs, Rhs::RowsAtCompileTime>::type LhsNested;
|
|
18
|
+
typedef const typename internal::nested_eval<Rhs, Lhs::RowsAtCompileTime>::type RhsNested;
|
|
19
|
+
|
|
20
|
+
typedef SkylineProduct<LhsNested, RhsNested, ProductMode> Type;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
template<typename LhsNested, typename RhsNested, int ProductMode>
|
|
24
|
+
struct internal::traits<SkylineProduct<LhsNested, RhsNested, ProductMode> > {
|
|
25
|
+
// clean the nested types:
|
|
26
|
+
typedef typename internal::remove_all<LhsNested>::type _LhsNested;
|
|
27
|
+
typedef typename internal::remove_all<RhsNested>::type _RhsNested;
|
|
28
|
+
typedef typename _LhsNested::Scalar Scalar;
|
|
29
|
+
|
|
30
|
+
enum {
|
|
31
|
+
LhsCoeffReadCost = _LhsNested::CoeffReadCost,
|
|
32
|
+
RhsCoeffReadCost = _RhsNested::CoeffReadCost,
|
|
33
|
+
LhsFlags = _LhsNested::Flags,
|
|
34
|
+
RhsFlags = _RhsNested::Flags,
|
|
35
|
+
|
|
36
|
+
RowsAtCompileTime = _LhsNested::RowsAtCompileTime,
|
|
37
|
+
ColsAtCompileTime = _RhsNested::ColsAtCompileTime,
|
|
38
|
+
InnerSize = EIGEN_SIZE_MIN_PREFER_FIXED(_LhsNested::ColsAtCompileTime, _RhsNested::RowsAtCompileTime),
|
|
39
|
+
|
|
40
|
+
MaxRowsAtCompileTime = _LhsNested::MaxRowsAtCompileTime,
|
|
41
|
+
MaxColsAtCompileTime = _RhsNested::MaxColsAtCompileTime,
|
|
42
|
+
|
|
43
|
+
EvalToRowMajor = (RhsFlags & LhsFlags & RowMajorBit),
|
|
44
|
+
ResultIsSkyline = ProductMode == SkylineTimeSkylineProduct,
|
|
45
|
+
|
|
46
|
+
RemovedBits = ~((EvalToRowMajor ? 0 : RowMajorBit) | (ResultIsSkyline ? 0 : SkylineBit)),
|
|
47
|
+
|
|
48
|
+
Flags = (int(LhsFlags | RhsFlags) & HereditaryBits & RemovedBits)
|
|
49
|
+
| EvalBeforeAssigningBit
|
|
50
|
+
| EvalBeforeNestingBit,
|
|
51
|
+
|
|
52
|
+
CoeffReadCost = HugeCost
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
typedef typename internal::conditional<ResultIsSkyline,
|
|
56
|
+
SkylineMatrixBase<SkylineProduct<LhsNested, RhsNested, ProductMode> >,
|
|
57
|
+
MatrixBase<SkylineProduct<LhsNested, RhsNested, ProductMode> > >::type Base;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
namespace internal {
|
|
61
|
+
template<typename LhsNested, typename RhsNested, int ProductMode>
|
|
62
|
+
class SkylineProduct : no_assignment_operator,
|
|
63
|
+
public traits<SkylineProduct<LhsNested, RhsNested, ProductMode> >::Base {
|
|
64
|
+
public:
|
|
65
|
+
|
|
66
|
+
EIGEN_GENERIC_PUBLIC_INTERFACE(SkylineProduct)
|
|
67
|
+
|
|
68
|
+
private:
|
|
69
|
+
|
|
70
|
+
typedef typename traits<SkylineProduct>::_LhsNested _LhsNested;
|
|
71
|
+
typedef typename traits<SkylineProduct>::_RhsNested _RhsNested;
|
|
72
|
+
|
|
73
|
+
public:
|
|
74
|
+
|
|
75
|
+
template<typename Lhs, typename Rhs>
|
|
76
|
+
EIGEN_STRONG_INLINE SkylineProduct(const Lhs& lhs, const Rhs& rhs)
|
|
77
|
+
: m_lhs(lhs), m_rhs(rhs) {
|
|
78
|
+
eigen_assert(lhs.cols() == rhs.rows());
|
|
79
|
+
|
|
80
|
+
enum {
|
|
81
|
+
ProductIsValid = _LhsNested::ColsAtCompileTime == Dynamic
|
|
82
|
+
|| _RhsNested::RowsAtCompileTime == Dynamic
|
|
83
|
+
|| int(_LhsNested::ColsAtCompileTime) == int(_RhsNested::RowsAtCompileTime),
|
|
84
|
+
AreVectors = _LhsNested::IsVectorAtCompileTime && _RhsNested::IsVectorAtCompileTime,
|
|
85
|
+
SameSizes = EIGEN_PREDICATE_SAME_MATRIX_SIZE(_LhsNested, _RhsNested)
|
|
86
|
+
};
|
|
87
|
+
// note to the lost user:
|
|
88
|
+
// * for a dot product use: v1.dot(v2)
|
|
89
|
+
// * for a coeff-wise product use: v1.cwise()*v2
|
|
90
|
+
EIGEN_STATIC_ASSERT(ProductIsValid || !(AreVectors && SameSizes),
|
|
91
|
+
INVALID_VECTOR_VECTOR_PRODUCT__IF_YOU_WANTED_A_DOT_OR_COEFF_WISE_PRODUCT_YOU_MUST_USE_THE_EXPLICIT_FUNCTIONS)
|
|
92
|
+
EIGEN_STATIC_ASSERT(ProductIsValid || !(SameSizes && !AreVectors),
|
|
93
|
+
INVALID_MATRIX_PRODUCT__IF_YOU_WANTED_A_COEFF_WISE_PRODUCT_YOU_MUST_USE_THE_EXPLICIT_FUNCTION)
|
|
94
|
+
EIGEN_STATIC_ASSERT(ProductIsValid || SameSizes, INVALID_MATRIX_PRODUCT)
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
EIGEN_STRONG_INLINE Index rows() const {
|
|
98
|
+
return m_lhs.rows();
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
EIGEN_STRONG_INLINE Index cols() const {
|
|
102
|
+
return m_rhs.cols();
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
EIGEN_STRONG_INLINE const _LhsNested& lhs() const {
|
|
106
|
+
return m_lhs;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
EIGEN_STRONG_INLINE const _RhsNested& rhs() const {
|
|
110
|
+
return m_rhs;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
protected:
|
|
114
|
+
LhsNested m_lhs;
|
|
115
|
+
RhsNested m_rhs;
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
// dense = skyline * dense
|
|
119
|
+
// Note that here we force no inlining and separate the setZero() because GCC messes up otherwise
|
|
120
|
+
|
|
121
|
+
template<typename Lhs, typename Rhs, typename Dest>
|
|
122
|
+
EIGEN_DONT_INLINE void skyline_row_major_time_dense_product(const Lhs& lhs, const Rhs& rhs, Dest& dst) {
|
|
123
|
+
typedef typename remove_all<Lhs>::type _Lhs;
|
|
124
|
+
typedef typename remove_all<Rhs>::type _Rhs;
|
|
125
|
+
typedef typename traits<Lhs>::Scalar Scalar;
|
|
126
|
+
|
|
127
|
+
enum {
|
|
128
|
+
LhsIsRowMajor = (_Lhs::Flags & RowMajorBit) == RowMajorBit,
|
|
129
|
+
LhsIsSelfAdjoint = (_Lhs::Flags & SelfAdjointBit) == SelfAdjointBit,
|
|
130
|
+
ProcessFirstHalf = LhsIsSelfAdjoint
|
|
131
|
+
&& (((_Lhs::Flags & (UpperTriangularBit | LowerTriangularBit)) == 0)
|
|
132
|
+
|| ((_Lhs::Flags & UpperTriangularBit) && !LhsIsRowMajor)
|
|
133
|
+
|| ((_Lhs::Flags & LowerTriangularBit) && LhsIsRowMajor)),
|
|
134
|
+
ProcessSecondHalf = LhsIsSelfAdjoint && (!ProcessFirstHalf)
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
//Use matrix diagonal part <- Improvement : use inner iterator on dense matrix.
|
|
138
|
+
for (Index col = 0; col < rhs.cols(); col++) {
|
|
139
|
+
for (Index row = 0; row < lhs.rows(); row++) {
|
|
140
|
+
dst(row, col) = lhs.coeffDiag(row) * rhs(row, col);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
//Use matrix lower triangular part
|
|
144
|
+
for (Index row = 0; row < lhs.rows(); row++) {
|
|
145
|
+
typename _Lhs::InnerLowerIterator lIt(lhs, row);
|
|
146
|
+
const Index stop = lIt.col() + lIt.size();
|
|
147
|
+
for (Index col = 0; col < rhs.cols(); col++) {
|
|
148
|
+
|
|
149
|
+
Index k = lIt.col();
|
|
150
|
+
Scalar tmp = 0;
|
|
151
|
+
while (k < stop) {
|
|
152
|
+
tmp +=
|
|
153
|
+
lIt.value() *
|
|
154
|
+
rhs(k++, col);
|
|
155
|
+
++lIt;
|
|
156
|
+
}
|
|
157
|
+
dst(row, col) += tmp;
|
|
158
|
+
lIt += -lIt.size();
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
//Use matrix upper triangular part
|
|
164
|
+
for (Index lhscol = 0; lhscol < lhs.cols(); lhscol++) {
|
|
165
|
+
typename _Lhs::InnerUpperIterator uIt(lhs, lhscol);
|
|
166
|
+
const Index stop = uIt.size() + uIt.row();
|
|
167
|
+
for (Index rhscol = 0; rhscol < rhs.cols(); rhscol++) {
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
const Scalar rhsCoeff = rhs.coeff(lhscol, rhscol);
|
|
171
|
+
Index k = uIt.row();
|
|
172
|
+
while (k < stop) {
|
|
173
|
+
dst(k++, rhscol) +=
|
|
174
|
+
uIt.value() *
|
|
175
|
+
rhsCoeff;
|
|
176
|
+
++uIt;
|
|
177
|
+
}
|
|
178
|
+
uIt += -uIt.size();
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
template<typename Lhs, typename Rhs, typename Dest>
|
|
185
|
+
EIGEN_DONT_INLINE void skyline_col_major_time_dense_product(const Lhs& lhs, const Rhs& rhs, Dest& dst) {
|
|
186
|
+
typedef typename remove_all<Lhs>::type _Lhs;
|
|
187
|
+
typedef typename remove_all<Rhs>::type _Rhs;
|
|
188
|
+
typedef typename traits<Lhs>::Scalar Scalar;
|
|
189
|
+
|
|
190
|
+
enum {
|
|
191
|
+
LhsIsRowMajor = (_Lhs::Flags & RowMajorBit) == RowMajorBit,
|
|
192
|
+
LhsIsSelfAdjoint = (_Lhs::Flags & SelfAdjointBit) == SelfAdjointBit,
|
|
193
|
+
ProcessFirstHalf = LhsIsSelfAdjoint
|
|
194
|
+
&& (((_Lhs::Flags & (UpperTriangularBit | LowerTriangularBit)) == 0)
|
|
195
|
+
|| ((_Lhs::Flags & UpperTriangularBit) && !LhsIsRowMajor)
|
|
196
|
+
|| ((_Lhs::Flags & LowerTriangularBit) && LhsIsRowMajor)),
|
|
197
|
+
ProcessSecondHalf = LhsIsSelfAdjoint && (!ProcessFirstHalf)
|
|
198
|
+
};
|
|
199
|
+
|
|
200
|
+
//Use matrix diagonal part <- Improvement : use inner iterator on dense matrix.
|
|
201
|
+
for (Index col = 0; col < rhs.cols(); col++) {
|
|
202
|
+
for (Index row = 0; row < lhs.rows(); row++) {
|
|
203
|
+
dst(row, col) = lhs.coeffDiag(row) * rhs(row, col);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
//Use matrix upper triangular part
|
|
208
|
+
for (Index row = 0; row < lhs.rows(); row++) {
|
|
209
|
+
typename _Lhs::InnerUpperIterator uIt(lhs, row);
|
|
210
|
+
const Index stop = uIt.col() + uIt.size();
|
|
211
|
+
for (Index col = 0; col < rhs.cols(); col++) {
|
|
212
|
+
|
|
213
|
+
Index k = uIt.col();
|
|
214
|
+
Scalar tmp = 0;
|
|
215
|
+
while (k < stop) {
|
|
216
|
+
tmp +=
|
|
217
|
+
uIt.value() *
|
|
218
|
+
rhs(k++, col);
|
|
219
|
+
++uIt;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
dst(row, col) += tmp;
|
|
224
|
+
uIt += -uIt.size();
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
//Use matrix lower triangular part
|
|
229
|
+
for (Index lhscol = 0; lhscol < lhs.cols(); lhscol++) {
|
|
230
|
+
typename _Lhs::InnerLowerIterator lIt(lhs, lhscol);
|
|
231
|
+
const Index stop = lIt.size() + lIt.row();
|
|
232
|
+
for (Index rhscol = 0; rhscol < rhs.cols(); rhscol++) {
|
|
233
|
+
|
|
234
|
+
const Scalar rhsCoeff = rhs.coeff(lhscol, rhscol);
|
|
235
|
+
Index k = lIt.row();
|
|
236
|
+
while (k < stop) {
|
|
237
|
+
dst(k++, rhscol) +=
|
|
238
|
+
lIt.value() *
|
|
239
|
+
rhsCoeff;
|
|
240
|
+
++lIt;
|
|
241
|
+
}
|
|
242
|
+
lIt += -lIt.size();
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
template<typename Lhs, typename Rhs, typename ResultType,
|
|
249
|
+
int LhsStorageOrder = traits<Lhs>::Flags&RowMajorBit>
|
|
250
|
+
struct skyline_product_selector;
|
|
251
|
+
|
|
252
|
+
template<typename Lhs, typename Rhs, typename ResultType>
|
|
253
|
+
struct skyline_product_selector<Lhs, Rhs, ResultType, RowMajor> {
|
|
254
|
+
typedef typename traits<typename remove_all<Lhs>::type>::Scalar Scalar;
|
|
255
|
+
|
|
256
|
+
static void run(const Lhs& lhs, const Rhs& rhs, ResultType & res) {
|
|
257
|
+
skyline_row_major_time_dense_product<Lhs, Rhs, ResultType > (lhs, rhs, res);
|
|
258
|
+
}
|
|
259
|
+
};
|
|
260
|
+
|
|
261
|
+
template<typename Lhs, typename Rhs, typename ResultType>
|
|
262
|
+
struct skyline_product_selector<Lhs, Rhs, ResultType, ColMajor> {
|
|
263
|
+
typedef typename traits<typename remove_all<Lhs>::type>::Scalar Scalar;
|
|
264
|
+
|
|
265
|
+
static void run(const Lhs& lhs, const Rhs& rhs, ResultType & res) {
|
|
266
|
+
skyline_col_major_time_dense_product<Lhs, Rhs, ResultType > (lhs, rhs, res);
|
|
267
|
+
}
|
|
268
|
+
};
|
|
269
|
+
|
|
270
|
+
} // end namespace internal
|
|
271
|
+
|
|
272
|
+
// template<typename Derived>
|
|
273
|
+
// template<typename Lhs, typename Rhs >
|
|
274
|
+
// Derived & MatrixBase<Derived>::lazyAssign(const SkylineProduct<Lhs, Rhs, SkylineTimeDenseProduct>& product) {
|
|
275
|
+
// typedef typename internal::remove_all<Lhs>::type _Lhs;
|
|
276
|
+
// internal::skyline_product_selector<typename internal::remove_all<Lhs>::type,
|
|
277
|
+
// typename internal::remove_all<Rhs>::type,
|
|
278
|
+
// Derived>::run(product.lhs(), product.rhs(), derived());
|
|
279
|
+
//
|
|
280
|
+
// return derived();
|
|
281
|
+
// }
|
|
282
|
+
|
|
283
|
+
// skyline * dense
|
|
284
|
+
|
|
285
|
+
template<typename Derived>
|
|
286
|
+
template<typename OtherDerived >
|
|
287
|
+
EIGEN_STRONG_INLINE const typename SkylineProductReturnType<Derived, OtherDerived>::Type
|
|
288
|
+
SkylineMatrixBase<Derived>::operator*(const MatrixBase<OtherDerived> &other) const {
|
|
289
|
+
|
|
290
|
+
return typename SkylineProductReturnType<Derived, OtherDerived>::Type(derived(), other.derived());
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
} // end namespace Eigen
|
|
294
|
+
|
|
295
|
+
#endif // EIGEN_SKYLINEPRODUCT_H
|