pylibsparseir 0.1.0__cp313-cp313-macosx_15_0_arm64.whl → 0.6.0__cp313-cp313-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,216 @@
|
|
|
1
|
+
// This file is part of Eigen, a lightweight C++ template library
|
|
2
|
+
// for linear algebra.
|
|
3
|
+
//
|
|
4
|
+
// Copyright (C) 2014 Benoit Steiner <benoit.steiner.goog@gmail.com>
|
|
5
|
+
//
|
|
6
|
+
// This Source Code Form is subject to the terms of the Mozilla
|
|
7
|
+
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
8
|
+
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
9
|
+
|
|
10
|
+
#ifndef EIGEN_CXX11_TENSOR_TENSOR_LAYOUT_SWAP_H
|
|
11
|
+
#define EIGEN_CXX11_TENSOR_TENSOR_LAYOUT_SWAP_H
|
|
12
|
+
|
|
13
|
+
namespace Eigen {
|
|
14
|
+
|
|
15
|
+
/** \class TensorLayoutSwap
|
|
16
|
+
* \ingroup CXX11_Tensor_Module
|
|
17
|
+
*
|
|
18
|
+
* \brief Swap the layout from col-major to row-major, or row-major
|
|
19
|
+
* to col-major, and invert the order of the dimensions.
|
|
20
|
+
*
|
|
21
|
+
* Beware: the dimensions are reversed by this operation. If you want to
|
|
22
|
+
* preserve the ordering of the dimensions, you need to combine this
|
|
23
|
+
* operation with a shuffle.
|
|
24
|
+
*
|
|
25
|
+
* \example:
|
|
26
|
+
* Tensor<float, 2, ColMajor> input(2, 4);
|
|
27
|
+
* Tensor<float, 2, RowMajor> output = input.swap_layout();
|
|
28
|
+
* eigen_assert(output.dimension(0) == 4);
|
|
29
|
+
* eigen_assert(output.dimension(1) == 2);
|
|
30
|
+
*
|
|
31
|
+
* array<int, 2> shuffle(1, 0);
|
|
32
|
+
* output = input.swap_layout().shuffle(shuffle);
|
|
33
|
+
* eigen_assert(output.dimension(0) == 2);
|
|
34
|
+
* eigen_assert(output.dimension(1) == 4);
|
|
35
|
+
*
|
|
36
|
+
*/
|
|
37
|
+
namespace internal {
|
|
38
|
+
template<typename XprType>
|
|
39
|
+
struct traits<TensorLayoutSwapOp<XprType> > : public traits<XprType>
|
|
40
|
+
{
|
|
41
|
+
typedef typename XprType::Scalar Scalar;
|
|
42
|
+
typedef traits<XprType> XprTraits;
|
|
43
|
+
typedef typename XprTraits::StorageKind StorageKind;
|
|
44
|
+
typedef typename XprTraits::Index Index;
|
|
45
|
+
typedef typename XprType::Nested Nested;
|
|
46
|
+
typedef typename remove_reference<Nested>::type _Nested;
|
|
47
|
+
static const int NumDimensions = traits<XprType>::NumDimensions;
|
|
48
|
+
static const int Layout = (traits<XprType>::Layout == ColMajor) ? RowMajor : ColMajor;
|
|
49
|
+
typedef typename XprTraits::PointerType PointerType;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
template<typename XprType>
|
|
53
|
+
struct eval<TensorLayoutSwapOp<XprType>, Eigen::Dense>
|
|
54
|
+
{
|
|
55
|
+
typedef const TensorLayoutSwapOp<XprType>& type;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
template<typename XprType>
|
|
59
|
+
struct nested<TensorLayoutSwapOp<XprType>, 1, typename eval<TensorLayoutSwapOp<XprType> >::type>
|
|
60
|
+
{
|
|
61
|
+
typedef TensorLayoutSwapOp<XprType> type;
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
} // end namespace internal
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
template<typename XprType>
|
|
69
|
+
class TensorLayoutSwapOp : public TensorBase<TensorLayoutSwapOp<XprType>, WriteAccessors>
|
|
70
|
+
{
|
|
71
|
+
public:
|
|
72
|
+
typedef TensorBase<TensorLayoutSwapOp<XprType>, WriteAccessors> Base;
|
|
73
|
+
typedef typename Eigen::internal::traits<TensorLayoutSwapOp>::Scalar Scalar;
|
|
74
|
+
typedef typename Eigen::NumTraits<Scalar>::Real RealScalar;
|
|
75
|
+
typedef typename internal::remove_const<typename XprType::CoeffReturnType>::type CoeffReturnType;
|
|
76
|
+
typedef typename Eigen::internal::nested<TensorLayoutSwapOp>::type Nested;
|
|
77
|
+
typedef typename Eigen::internal::traits<TensorLayoutSwapOp>::StorageKind StorageKind;
|
|
78
|
+
typedef typename Eigen::internal::traits<TensorLayoutSwapOp>::Index Index;
|
|
79
|
+
|
|
80
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorLayoutSwapOp(const XprType& expr)
|
|
81
|
+
: m_xpr(expr) {}
|
|
82
|
+
|
|
83
|
+
EIGEN_DEVICE_FUNC
|
|
84
|
+
const typename internal::remove_all<typename XprType::Nested>::type&
|
|
85
|
+
expression() const { return m_xpr; }
|
|
86
|
+
|
|
87
|
+
EIGEN_TENSOR_INHERIT_ASSIGNMENT_OPERATORS(TensorLayoutSwapOp)
|
|
88
|
+
protected:
|
|
89
|
+
typename XprType::Nested m_xpr;
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
// Eval as rvalue
|
|
94
|
+
template<typename ArgType, typename Device>
|
|
95
|
+
struct TensorEvaluator<const TensorLayoutSwapOp<ArgType>, Device>
|
|
96
|
+
{
|
|
97
|
+
typedef TensorLayoutSwapOp<ArgType> XprType;
|
|
98
|
+
typedef typename XprType::Index Index;
|
|
99
|
+
static const int NumDims = internal::array_size<typename TensorEvaluator<ArgType, Device>::Dimensions>::value;
|
|
100
|
+
typedef DSizes<Index, NumDims> Dimensions;
|
|
101
|
+
|
|
102
|
+
enum {
|
|
103
|
+
IsAligned = TensorEvaluator<ArgType, Device>::IsAligned,
|
|
104
|
+
PacketAccess = TensorEvaluator<ArgType, Device>::PacketAccess,
|
|
105
|
+
BlockAccess = false,
|
|
106
|
+
PreferBlockAccess = TensorEvaluator<ArgType, Device>::PreferBlockAccess,
|
|
107
|
+
Layout = (static_cast<int>(TensorEvaluator<ArgType, Device>::Layout) == static_cast<int>(ColMajor)) ? RowMajor : ColMajor,
|
|
108
|
+
CoordAccess = false, // to be implemented
|
|
109
|
+
RawAccess = TensorEvaluator<ArgType, Device>::RawAccess
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
//===- Tensor block evaluation strategy (see TensorBlock.h) -------------===//
|
|
113
|
+
typedef internal::TensorBlockNotImplemented TensorBlock;
|
|
114
|
+
//===--------------------------------------------------------------------===//
|
|
115
|
+
|
|
116
|
+
EIGEN_STRONG_INLINE TensorEvaluator(const XprType& op, const Device& device)
|
|
117
|
+
: m_impl(op.expression(), device)
|
|
118
|
+
{
|
|
119
|
+
for(int i = 0; i < NumDims; ++i) {
|
|
120
|
+
m_dimensions[i] = m_impl.dimensions()[NumDims-1-i];
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
#ifdef EIGEN_USE_SYCL
|
|
125
|
+
// binding placeholder accessors to a command group handler for SYCL
|
|
126
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void bind(cl::sycl::handler &cgh) const {
|
|
127
|
+
m_impl.bind(cgh);
|
|
128
|
+
}
|
|
129
|
+
#endif
|
|
130
|
+
|
|
131
|
+
typedef typename XprType::Scalar Scalar;
|
|
132
|
+
typedef typename XprType::CoeffReturnType CoeffReturnType;
|
|
133
|
+
typedef typename PacketType<CoeffReturnType, Device>::type PacketReturnType;
|
|
134
|
+
typedef StorageMemory<CoeffReturnType, Device> Storage;
|
|
135
|
+
typedef typename Storage::Type EvaluatorPointerType;
|
|
136
|
+
|
|
137
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Dimensions& dimensions() const { return m_dimensions; }
|
|
138
|
+
|
|
139
|
+
EIGEN_STRONG_INLINE bool evalSubExprsIfNeeded(EvaluatorPointerType data) {
|
|
140
|
+
return m_impl.evalSubExprsIfNeeded(data);
|
|
141
|
+
}
|
|
142
|
+
EIGEN_STRONG_INLINE void cleanup() {
|
|
143
|
+
m_impl.cleanup();
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType coeff(Index index) const
|
|
147
|
+
{
|
|
148
|
+
return m_impl.coeff(index);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
template<int LoadMode>
|
|
152
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE PacketReturnType packet(Index index) const
|
|
153
|
+
{
|
|
154
|
+
return m_impl.template packet<LoadMode>(index);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorOpCost costPerCoeff(bool vectorized) const {
|
|
158
|
+
return m_impl.costPerCoeff(vectorized);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
EIGEN_DEVICE_FUNC typename Storage::Type data() const {
|
|
162
|
+
return constCast(m_impl.data());
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
const TensorEvaluator<ArgType, Device>& impl() const { return m_impl; }
|
|
166
|
+
|
|
167
|
+
protected:
|
|
168
|
+
TensorEvaluator<ArgType, Device> m_impl;
|
|
169
|
+
Dimensions m_dimensions;
|
|
170
|
+
};
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
// Eval as lvalue
|
|
174
|
+
template<typename ArgType, typename Device>
|
|
175
|
+
struct TensorEvaluator<TensorLayoutSwapOp<ArgType>, Device>
|
|
176
|
+
: public TensorEvaluator<const TensorLayoutSwapOp<ArgType>, Device>
|
|
177
|
+
{
|
|
178
|
+
typedef TensorEvaluator<const TensorLayoutSwapOp<ArgType>, Device> Base;
|
|
179
|
+
typedef TensorLayoutSwapOp<ArgType> XprType;
|
|
180
|
+
|
|
181
|
+
enum {
|
|
182
|
+
IsAligned = TensorEvaluator<ArgType, Device>::IsAligned,
|
|
183
|
+
PacketAccess = TensorEvaluator<ArgType, Device>::PacketAccess,
|
|
184
|
+
BlockAccess = false,
|
|
185
|
+
PreferBlockAccess = TensorEvaluator<ArgType, Device>::PreferBlockAccess,
|
|
186
|
+
Layout = (static_cast<int>(TensorEvaluator<ArgType, Device>::Layout) == static_cast<int>(ColMajor)) ? RowMajor : ColMajor,
|
|
187
|
+
CoordAccess = false // to be implemented
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
//===- Tensor block evaluation strategy (see TensorBlock.h) -------------===//
|
|
191
|
+
typedef internal::TensorBlockNotImplemented TensorBlock;
|
|
192
|
+
//===--------------------------------------------------------------------===//
|
|
193
|
+
|
|
194
|
+
EIGEN_STRONG_INLINE TensorEvaluator(const XprType& op, const Device& device)
|
|
195
|
+
: Base(op, device)
|
|
196
|
+
{ }
|
|
197
|
+
|
|
198
|
+
typedef typename XprType::Index Index;
|
|
199
|
+
typedef typename XprType::Scalar Scalar;
|
|
200
|
+
typedef typename XprType::CoeffReturnType CoeffReturnType;
|
|
201
|
+
typedef typename PacketType<CoeffReturnType, Device>::type PacketReturnType;
|
|
202
|
+
|
|
203
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CoeffReturnType& coeffRef(Index index)
|
|
204
|
+
{
|
|
205
|
+
return this->m_impl.coeffRef(index);
|
|
206
|
+
}
|
|
207
|
+
template <int StoreMode> EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
|
|
208
|
+
void writePacket(Index index, const PacketReturnType& x)
|
|
209
|
+
{
|
|
210
|
+
this->m_impl.template writePacket<StoreMode>(index, x);
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
|
|
214
|
+
} // end namespace Eigen
|
|
215
|
+
|
|
216
|
+
#endif // EIGEN_CXX11_TENSOR_TENSOR_LAYOUT_SWAP_H
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
// This file is part of Eigen, a lightweight C++ template library
|
|
2
|
+
// for linear algebra.
|
|
3
|
+
//
|
|
4
|
+
// Copyright (C) 2015 Benoit Steiner <benoit.steiner.goog@gmail.com>
|
|
5
|
+
//
|
|
6
|
+
// This Source Code Form is subject to the terms of the Mozilla
|
|
7
|
+
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
8
|
+
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
9
|
+
|
|
10
|
+
#ifndef EIGEN_CXX11_TENSOR_TENSOR_META_MACROS_H
|
|
11
|
+
#define EIGEN_CXX11_TENSOR_TENSOR_META_MACROS_H
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
/** use this macro in sfinae selection in templated functions
|
|
15
|
+
*
|
|
16
|
+
* template<typename T,
|
|
17
|
+
* typename std::enable_if< isBanana<T>::value , int >::type = 0
|
|
18
|
+
* >
|
|
19
|
+
* void foo(){}
|
|
20
|
+
*
|
|
21
|
+
* becomes =>
|
|
22
|
+
*
|
|
23
|
+
* template<typename TopoType,
|
|
24
|
+
* SFINAE_ENABLE_IF( isBanana<T>::value )
|
|
25
|
+
* >
|
|
26
|
+
* void foo(){}
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
// SFINAE requires variadic templates
|
|
30
|
+
#if !defined(EIGEN_GPUCC)
|
|
31
|
+
#if EIGEN_HAS_VARIADIC_TEMPLATES
|
|
32
|
+
// SFINAE doesn't work for gcc <= 4.7
|
|
33
|
+
#ifdef EIGEN_COMP_GNUC
|
|
34
|
+
#if EIGEN_GNUC_AT_LEAST(4,8)
|
|
35
|
+
#define EIGEN_HAS_SFINAE
|
|
36
|
+
#endif
|
|
37
|
+
#else
|
|
38
|
+
#define EIGEN_HAS_SFINAE
|
|
39
|
+
#endif
|
|
40
|
+
#endif
|
|
41
|
+
#endif
|
|
42
|
+
|
|
43
|
+
#define EIGEN_SFINAE_ENABLE_IF( __condition__ ) \
|
|
44
|
+
typename internal::enable_if< ( __condition__ ) , int >::type = 0
|
|
45
|
+
|
|
46
|
+
// Define a macro to use a reference on the host but a value on the device
|
|
47
|
+
#if defined(SYCL_DEVICE_ONLY)
|
|
48
|
+
#define EIGEN_DEVICE_REF
|
|
49
|
+
#else
|
|
50
|
+
#define EIGEN_DEVICE_REF &
|
|
51
|
+
#endif
|
|
52
|
+
|
|
53
|
+
// Define a macro for catching SYCL exceptions if exceptions are enabled
|
|
54
|
+
#define EIGEN_SYCL_TRY_CATCH(X) \
|
|
55
|
+
do { \
|
|
56
|
+
EIGEN_TRY {X;} \
|
|
57
|
+
EIGEN_CATCH(const cl::sycl::exception& e) { \
|
|
58
|
+
EIGEN_THROW_X(std::runtime_error("SYCL exception at " + \
|
|
59
|
+
std::string(__FILE__) + ":" + \
|
|
60
|
+
std::to_string(__LINE__) + "\n" + \
|
|
61
|
+
e.what())); \
|
|
62
|
+
} \
|
|
63
|
+
} while (false)
|
|
64
|
+
|
|
65
|
+
// Define a macro if local memory flags are unset or one of them is set
|
|
66
|
+
// Setting both flags is the same as unsetting them
|
|
67
|
+
#if (!defined(EIGEN_SYCL_LOCAL_MEM) && !defined(EIGEN_SYCL_NO_LOCAL_MEM)) || \
|
|
68
|
+
(defined(EIGEN_SYCL_LOCAL_MEM) && defined(EIGEN_SYCL_NO_LOCAL_MEM))
|
|
69
|
+
#define EIGEN_SYCL_LOCAL_MEM_UNSET_OR_ON 1
|
|
70
|
+
#define EIGEN_SYCL_LOCAL_MEM_UNSET_OR_OFF 1
|
|
71
|
+
#elif defined(EIGEN_SYCL_LOCAL_MEM) && !defined(EIGEN_SYCL_NO_LOCAL_MEM)
|
|
72
|
+
#define EIGEN_SYCL_LOCAL_MEM_UNSET_OR_ON 1
|
|
73
|
+
#elif !defined(EIGEN_SYCL_LOCAL_MEM) && defined(EIGEN_SYCL_NO_LOCAL_MEM)
|
|
74
|
+
#define EIGEN_SYCL_LOCAL_MEM_UNSET_OR_OFF 1
|
|
75
|
+
#endif
|
|
76
|
+
|
|
77
|
+
#if EIGEN_COMP_CLANG // workaround clang bug (see http://forum.kde.org/viewtopic.php?f=74&t=102653)
|
|
78
|
+
#define EIGEN_TENSOR_INHERIT_ASSIGNMENT_EQUAL_OPERATOR(Derived) \
|
|
79
|
+
using Base::operator =; \
|
|
80
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived& operator=(const Derived& other) { Base::operator=(other); return *this; } \
|
|
81
|
+
template <typename OtherDerived> \
|
|
82
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived& operator=(const OtherDerived& other) { Base::operator=(other); return *this; }
|
|
83
|
+
#else
|
|
84
|
+
#define EIGEN_TENSOR_INHERIT_ASSIGNMENT_EQUAL_OPERATOR(Derived) \
|
|
85
|
+
EIGEN_INHERIT_ASSIGNMENT_EQUAL_OPERATOR(Derived)
|
|
86
|
+
#endif
|
|
87
|
+
|
|
88
|
+
/** \internal
|
|
89
|
+
* \brief Macro to manually inherit assignment operators.
|
|
90
|
+
* This is necessary, because the implicitly defined assignment operator gets deleted when a custom operator= is defined.
|
|
91
|
+
* This also inherits template<OtherDerived> operator=(const OtherDerived&) assignments.
|
|
92
|
+
* With C++11 or later this also default-implements the copy-constructor
|
|
93
|
+
*/
|
|
94
|
+
#define EIGEN_TENSOR_INHERIT_ASSIGNMENT_OPERATORS(Derived) \
|
|
95
|
+
EIGEN_TENSOR_INHERIT_ASSIGNMENT_EQUAL_OPERATOR(Derived) \
|
|
96
|
+
EIGEN_DEFAULT_COPY_CONSTRUCTOR(Derived)
|
|
97
|
+
|
|
98
|
+
#endif
|
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
// This file is part of Eigen, a lightweight C++ template library
|
|
2
|
+
// for linear algebra.
|
|
3
|
+
//
|
|
4
|
+
// Copyright (C) 2014 Benoit Steiner <benoit.steiner.goog@gmail.com>
|
|
5
|
+
//
|
|
6
|
+
// This Source Code Form is subject to the terms of the Mozilla
|
|
7
|
+
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
8
|
+
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
9
|
+
|
|
10
|
+
#ifndef EIGEN_CXX11_TENSOR_TENSOR_MAP_H
|
|
11
|
+
#define EIGEN_CXX11_TENSOR_TENSOR_MAP_H
|
|
12
|
+
|
|
13
|
+
namespace Eigen {
|
|
14
|
+
|
|
15
|
+
// FIXME use proper doxygen documentation (e.g. \tparam MakePointer_)
|
|
16
|
+
|
|
17
|
+
/** \class TensorMap
|
|
18
|
+
* \ingroup CXX11_Tensor_Module
|
|
19
|
+
*
|
|
20
|
+
* \brief A tensor expression mapping an existing array of data.
|
|
21
|
+
*
|
|
22
|
+
*/
|
|
23
|
+
/// `template <class> class MakePointer_` is added to convert the host pointer to the device pointer.
|
|
24
|
+
/// It is added due to the fact that for our device compiler `T*` is not allowed.
|
|
25
|
+
/// If we wanted to use the same Evaluator functions we have to convert that type to our pointer `T`.
|
|
26
|
+
/// This is done through our `MakePointer_` class. By default the Type in the `MakePointer_<T>` is `T*` .
|
|
27
|
+
/// Therefore, by adding the default value, we managed to convert the type and it does not break any
|
|
28
|
+
/// existing code as its default value is `T*`.
|
|
29
|
+
template<typename PlainObjectType, int Options_, template <class> class MakePointer_> class TensorMap : public TensorBase<TensorMap<PlainObjectType, Options_, MakePointer_> >
|
|
30
|
+
{
|
|
31
|
+
public:
|
|
32
|
+
typedef TensorMap<PlainObjectType, Options_, MakePointer_> Self;
|
|
33
|
+
typedef TensorBase<TensorMap<PlainObjectType, Options_, MakePointer_> > Base;
|
|
34
|
+
#ifdef EIGEN_USE_SYCL
|
|
35
|
+
typedef typename Eigen::internal::remove_reference<typename Eigen::internal::nested<Self>::type>::type Nested;
|
|
36
|
+
#else
|
|
37
|
+
typedef typename Eigen::internal::nested<Self>::type Nested;
|
|
38
|
+
#endif
|
|
39
|
+
typedef typename internal::traits<PlainObjectType>::StorageKind StorageKind;
|
|
40
|
+
typedef typename internal::traits<PlainObjectType>::Index Index;
|
|
41
|
+
typedef typename internal::traits<PlainObjectType>::Scalar Scalar;
|
|
42
|
+
typedef typename NumTraits<Scalar>::Real RealScalar;
|
|
43
|
+
typedef typename PlainObjectType::Base::CoeffReturnType CoeffReturnType;
|
|
44
|
+
|
|
45
|
+
typedef typename MakePointer_<Scalar>::Type PointerType;
|
|
46
|
+
typedef typename MakePointer_<Scalar>::ConstType PointerConstType;
|
|
47
|
+
|
|
48
|
+
// WARN: PointerType still can be a pointer to const (const Scalar*), for
|
|
49
|
+
// example in TensorMap<Tensor<const Scalar, ...>> expression. This type of
|
|
50
|
+
// expression should be illegal, but adding this restriction is not possible
|
|
51
|
+
// in practice (see https://bitbucket.org/eigen/eigen/pull-requests/488).
|
|
52
|
+
typedef typename internal::conditional<
|
|
53
|
+
bool(internal::is_lvalue<PlainObjectType>::value),
|
|
54
|
+
PointerType, // use simple pointer in lvalue expressions
|
|
55
|
+
PointerConstType // use const pointer in rvalue expressions
|
|
56
|
+
>::type StoragePointerType;
|
|
57
|
+
|
|
58
|
+
// If TensorMap was constructed over rvalue expression (e.g. const Tensor),
|
|
59
|
+
// we should return a reference to const from operator() (and others), even
|
|
60
|
+
// if TensorMap itself is not const.
|
|
61
|
+
typedef typename internal::conditional<
|
|
62
|
+
bool(internal::is_lvalue<PlainObjectType>::value),
|
|
63
|
+
Scalar&,
|
|
64
|
+
const Scalar&
|
|
65
|
+
>::type StorageRefType;
|
|
66
|
+
|
|
67
|
+
static const int Options = Options_;
|
|
68
|
+
|
|
69
|
+
static const Index NumIndices = PlainObjectType::NumIndices;
|
|
70
|
+
typedef typename PlainObjectType::Dimensions Dimensions;
|
|
71
|
+
|
|
72
|
+
enum {
|
|
73
|
+
IsAligned = ((int(Options_)&Aligned)==Aligned),
|
|
74
|
+
Layout = PlainObjectType::Layout,
|
|
75
|
+
CoordAccess = true,
|
|
76
|
+
RawAccess = true
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
EIGEN_DEVICE_FUNC
|
|
80
|
+
EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr) : m_data(dataPtr), m_dimensions() {
|
|
81
|
+
// The number of dimensions used to construct a tensor must be equal to the rank of the tensor.
|
|
82
|
+
EIGEN_STATIC_ASSERT((0 == NumIndices || NumIndices == Dynamic), YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
#if EIGEN_HAS_VARIADIC_TEMPLATES
|
|
86
|
+
template<typename... IndexTypes> EIGEN_DEVICE_FUNC
|
|
87
|
+
EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index firstDimension, IndexTypes... otherDimensions) : m_data(dataPtr), m_dimensions(firstDimension, otherDimensions...) {
|
|
88
|
+
// The number of dimensions used to construct a tensor must be equal to the rank of the tensor.
|
|
89
|
+
EIGEN_STATIC_ASSERT((sizeof...(otherDimensions) + 1 == NumIndices || NumIndices == Dynamic), YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
90
|
+
}
|
|
91
|
+
#else
|
|
92
|
+
EIGEN_DEVICE_FUNC
|
|
93
|
+
EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index firstDimension) : m_data(dataPtr), m_dimensions(firstDimension) {
|
|
94
|
+
// The number of dimensions used to construct a tensor must be equal to the rank of the tensor.
|
|
95
|
+
EIGEN_STATIC_ASSERT((1 == NumIndices || NumIndices == Dynamic), YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
96
|
+
}
|
|
97
|
+
EIGEN_DEVICE_FUNC
|
|
98
|
+
EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2) : m_data(dataPtr), m_dimensions(dim1, dim2) {
|
|
99
|
+
EIGEN_STATIC_ASSERT(2 == NumIndices || NumIndices == Dynamic, YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
100
|
+
}
|
|
101
|
+
EIGEN_DEVICE_FUNC
|
|
102
|
+
EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2, Index dim3) : m_data(dataPtr), m_dimensions(dim1, dim2, dim3) {
|
|
103
|
+
EIGEN_STATIC_ASSERT(3 == NumIndices || NumIndices == Dynamic, YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
104
|
+
}
|
|
105
|
+
EIGEN_DEVICE_FUNC
|
|
106
|
+
EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2, Index dim3, Index dim4) : m_data(dataPtr), m_dimensions(dim1, dim2, dim3, dim4) {
|
|
107
|
+
EIGEN_STATIC_ASSERT(4 == NumIndices || NumIndices == Dynamic, YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
108
|
+
}
|
|
109
|
+
EIGEN_DEVICE_FUNC
|
|
110
|
+
EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2, Index dim3, Index dim4, Index dim5) : m_data(dataPtr), m_dimensions(dim1, dim2, dim3, dim4, dim5) {
|
|
111
|
+
EIGEN_STATIC_ASSERT(5 == NumIndices || NumIndices == Dynamic, YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
112
|
+
}
|
|
113
|
+
#endif
|
|
114
|
+
|
|
115
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, const array<Index, NumIndices>& dimensions)
|
|
116
|
+
: m_data(dataPtr), m_dimensions(dimensions)
|
|
117
|
+
{ }
|
|
118
|
+
|
|
119
|
+
template <typename Dimensions>
|
|
120
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, const Dimensions& dimensions)
|
|
121
|
+
: m_data(dataPtr), m_dimensions(dimensions)
|
|
122
|
+
{ }
|
|
123
|
+
|
|
124
|
+
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(PlainObjectType& tensor)
|
|
125
|
+
: m_data(tensor.data()), m_dimensions(tensor.dimensions())
|
|
126
|
+
{ }
|
|
127
|
+
|
|
128
|
+
EIGEN_DEVICE_FUNC
|
|
129
|
+
EIGEN_STRONG_INLINE Index rank() const { return m_dimensions.rank(); }
|
|
130
|
+
EIGEN_DEVICE_FUNC
|
|
131
|
+
EIGEN_STRONG_INLINE Index dimension(Index n) const { return m_dimensions[n]; }
|
|
132
|
+
EIGEN_DEVICE_FUNC
|
|
133
|
+
EIGEN_STRONG_INLINE const Dimensions& dimensions() const { return m_dimensions; }
|
|
134
|
+
EIGEN_DEVICE_FUNC
|
|
135
|
+
EIGEN_STRONG_INLINE Index size() const { return m_dimensions.TotalSize(); }
|
|
136
|
+
EIGEN_DEVICE_FUNC
|
|
137
|
+
EIGEN_STRONG_INLINE StoragePointerType data() { return m_data; }
|
|
138
|
+
EIGEN_DEVICE_FUNC
|
|
139
|
+
EIGEN_STRONG_INLINE StoragePointerType data() const { return m_data; }
|
|
140
|
+
|
|
141
|
+
EIGEN_DEVICE_FUNC
|
|
142
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(const array<Index, NumIndices>& indices) const
|
|
143
|
+
{
|
|
144
|
+
// eigen_assert(checkIndexRange(indices));
|
|
145
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
146
|
+
const Index index = m_dimensions.IndexOfRowMajor(indices);
|
|
147
|
+
return m_data[index];
|
|
148
|
+
} else {
|
|
149
|
+
const Index index = m_dimensions.IndexOfColMajor(indices);
|
|
150
|
+
return m_data[index];
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
EIGEN_DEVICE_FUNC
|
|
155
|
+
EIGEN_STRONG_INLINE StorageRefType operator()() const
|
|
156
|
+
{
|
|
157
|
+
EIGEN_STATIC_ASSERT(NumIndices == 0, YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
158
|
+
return m_data[0];
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
EIGEN_DEVICE_FUNC
|
|
162
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index index) const
|
|
163
|
+
{
|
|
164
|
+
eigen_internal_assert(index >= 0 && index < size());
|
|
165
|
+
return m_data[index];
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
#if EIGEN_HAS_VARIADIC_TEMPLATES
|
|
169
|
+
template<typename... IndexTypes> EIGEN_DEVICE_FUNC
|
|
170
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index firstIndex, Index secondIndex, IndexTypes... otherIndices) const
|
|
171
|
+
{
|
|
172
|
+
EIGEN_STATIC_ASSERT(sizeof...(otherIndices) + 2 == NumIndices, YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
173
|
+
eigen_assert(internal::all((Eigen::NumTraits<Index>::highest() >= otherIndices)...));
|
|
174
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
175
|
+
const Index index = m_dimensions.IndexOfRowMajor(array<Index, NumIndices>{{firstIndex, secondIndex, otherIndices...}});
|
|
176
|
+
return m_data[index];
|
|
177
|
+
} else {
|
|
178
|
+
const Index index = m_dimensions.IndexOfColMajor(array<Index, NumIndices>{{firstIndex, secondIndex, otherIndices...}});
|
|
179
|
+
return m_data[index];
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
#else
|
|
183
|
+
EIGEN_DEVICE_FUNC
|
|
184
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1) const
|
|
185
|
+
{
|
|
186
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
187
|
+
const Index index = i1 + i0 * m_dimensions[1];
|
|
188
|
+
return m_data[index];
|
|
189
|
+
} else {
|
|
190
|
+
const Index index = i0 + i1 * m_dimensions[0];
|
|
191
|
+
return m_data[index];
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
EIGEN_DEVICE_FUNC
|
|
195
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2) const
|
|
196
|
+
{
|
|
197
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
198
|
+
const Index index = i2 + m_dimensions[2] * (i1 + m_dimensions[1] * i0);
|
|
199
|
+
return m_data[index];
|
|
200
|
+
} else {
|
|
201
|
+
const Index index = i0 + m_dimensions[0] * (i1 + m_dimensions[1] * i2);
|
|
202
|
+
return m_data[index];
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
EIGEN_DEVICE_FUNC
|
|
206
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3) const
|
|
207
|
+
{
|
|
208
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
209
|
+
const Index index = i3 + m_dimensions[3] * (i2 + m_dimensions[2] * (i1 + m_dimensions[1] * i0));
|
|
210
|
+
return m_data[index];
|
|
211
|
+
} else {
|
|
212
|
+
const Index index = i0 + m_dimensions[0] * (i1 + m_dimensions[1] * (i2 + m_dimensions[2] * i3));
|
|
213
|
+
return m_data[index];
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
EIGEN_DEVICE_FUNC
|
|
217
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3, Index i4) const
|
|
218
|
+
{
|
|
219
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
220
|
+
const Index index = i4 + m_dimensions[4] * (i3 + m_dimensions[3] * (i2 + m_dimensions[2] * (i1 + m_dimensions[1] * i0)));
|
|
221
|
+
return m_data[index];
|
|
222
|
+
} else {
|
|
223
|
+
const Index index = i0 + m_dimensions[0] * (i1 + m_dimensions[1] * (i2 + m_dimensions[2] * (i3 + m_dimensions[3] * i4)));
|
|
224
|
+
return m_data[index];
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
#endif
|
|
228
|
+
|
|
229
|
+
EIGEN_DEVICE_FUNC
|
|
230
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(const array<Index, NumIndices>& indices)
|
|
231
|
+
{
|
|
232
|
+
// eigen_assert(checkIndexRange(indices));
|
|
233
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
234
|
+
const Index index = m_dimensions.IndexOfRowMajor(indices);
|
|
235
|
+
return m_data[index];
|
|
236
|
+
} else {
|
|
237
|
+
const Index index = m_dimensions.IndexOfColMajor(indices);
|
|
238
|
+
return m_data[index];
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
EIGEN_DEVICE_FUNC
|
|
243
|
+
EIGEN_STRONG_INLINE StorageRefType operator()()
|
|
244
|
+
{
|
|
245
|
+
EIGEN_STATIC_ASSERT(NumIndices == 0, YOU_MADE_A_PROGRAMMING_MISTAKE)
|
|
246
|
+
return m_data[0];
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
EIGEN_DEVICE_FUNC
|
|
250
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index index)
|
|
251
|
+
{
|
|
252
|
+
eigen_internal_assert(index >= 0 && index < size());
|
|
253
|
+
return m_data[index];
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
#if EIGEN_HAS_VARIADIC_TEMPLATES
|
|
257
|
+
template<typename... IndexTypes> EIGEN_DEVICE_FUNC
|
|
258
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index firstIndex, Index secondIndex, IndexTypes... otherIndices)
|
|
259
|
+
{
|
|
260
|
+
static_assert(sizeof...(otherIndices) + 2 == NumIndices || NumIndices == Dynamic, "Number of indices used to access a tensor coefficient must be equal to the rank of the tensor.");
|
|
261
|
+
eigen_assert(internal::all((Eigen::NumTraits<Index>::highest() >= otherIndices)...));
|
|
262
|
+
const std::size_t NumDims = sizeof...(otherIndices) + 2;
|
|
263
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
264
|
+
const Index index = m_dimensions.IndexOfRowMajor(array<Index, NumDims>{{firstIndex, secondIndex, otherIndices...}});
|
|
265
|
+
return m_data[index];
|
|
266
|
+
} else {
|
|
267
|
+
const Index index = m_dimensions.IndexOfColMajor(array<Index, NumDims>{{firstIndex, secondIndex, otherIndices...}});
|
|
268
|
+
return m_data[index];
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
#else
|
|
272
|
+
EIGEN_DEVICE_FUNC
|
|
273
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1)
|
|
274
|
+
{
|
|
275
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
276
|
+
const Index index = i1 + i0 * m_dimensions[1];
|
|
277
|
+
return m_data[index];
|
|
278
|
+
} else {
|
|
279
|
+
const Index index = i0 + i1 * m_dimensions[0];
|
|
280
|
+
return m_data[index];
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
EIGEN_DEVICE_FUNC
|
|
284
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2)
|
|
285
|
+
{
|
|
286
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
287
|
+
const Index index = i2 + m_dimensions[2] * (i1 + m_dimensions[1] * i0);
|
|
288
|
+
return m_data[index];
|
|
289
|
+
} else {
|
|
290
|
+
const Index index = i0 + m_dimensions[0] * (i1 + m_dimensions[1] * i2);
|
|
291
|
+
return m_data[index];
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
EIGEN_DEVICE_FUNC
|
|
295
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3)
|
|
296
|
+
{
|
|
297
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
298
|
+
const Index index = i3 + m_dimensions[3] * (i2 + m_dimensions[2] * (i1 + m_dimensions[1] * i0));
|
|
299
|
+
return m_data[index];
|
|
300
|
+
} else {
|
|
301
|
+
const Index index = i0 + m_dimensions[0] * (i1 + m_dimensions[1] * (i2 + m_dimensions[2] * i3));
|
|
302
|
+
return m_data[index];
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
EIGEN_DEVICE_FUNC
|
|
306
|
+
EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3, Index i4)
|
|
307
|
+
{
|
|
308
|
+
if (PlainObjectType::Options&RowMajor) {
|
|
309
|
+
const Index index = i4 + m_dimensions[4] * (i3 + m_dimensions[3] * (i2 + m_dimensions[2] * (i1 + m_dimensions[1] * i0)));
|
|
310
|
+
return m_data[index];
|
|
311
|
+
} else {
|
|
312
|
+
const Index index = i0 + m_dimensions[0] * (i1 + m_dimensions[1] * (i2 + m_dimensions[2] * (i3 + m_dimensions[3] * i4)));
|
|
313
|
+
return m_data[index];
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
#endif
|
|
317
|
+
|
|
318
|
+
EIGEN_TENSOR_INHERIT_ASSIGNMENT_OPERATORS(TensorMap)
|
|
319
|
+
|
|
320
|
+
private:
|
|
321
|
+
StoragePointerType m_data;
|
|
322
|
+
Dimensions m_dimensions;
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
} // end namespace Eigen
|
|
326
|
+
|
|
327
|
+
#endif // EIGEN_CXX11_TENSOR_TENSOR_MAP_H
|