qilisdk 0.1.8__cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.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.
- 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
- qilisdk/__init__.py +26 -0
- qilisdk/__init__.pyi +16 -0
- qilisdk/_logging.py +135 -0
- qilisdk/_optionals.py +137 -0
- qilisdk/analog/__init__.py +18 -0
- qilisdk/analog/exceptions.py +17 -0
- qilisdk/analog/hamiltonian.py +1068 -0
- qilisdk/analog/schedule.py +483 -0
- qilisdk/backends/__init__.py +46 -0
- qilisdk/backends/__init__.pyi +18 -0
- qilisdk/backends/backend.py +132 -0
- qilisdk/backends/cuda_backend.py +752 -0
- qilisdk/backends/qilisim.py +148 -0
- qilisdk/backends/qutip_backend.py +504 -0
- qilisdk/core/__init__.py +70 -0
- qilisdk/core/exceptions.py +29 -0
- qilisdk/core/interpolator.py +640 -0
- qilisdk/core/model.py +1012 -0
- qilisdk/core/parameterizable.py +133 -0
- qilisdk/core/qtensor.py +684 -0
- qilisdk/core/result.py +18 -0
- qilisdk/core/types.py +49 -0
- qilisdk/core/variables.py +2035 -0
- qilisdk/cost_functions/__init__.py +18 -0
- qilisdk/cost_functions/cost_function.py +77 -0
- qilisdk/cost_functions/model_cost_function.py +152 -0
- qilisdk/cost_functions/observable_cost_function.py +112 -0
- qilisdk/digital/__init__.py +67 -0
- qilisdk/digital/ansatz.py +382 -0
- qilisdk/digital/circuit.py +371 -0
- qilisdk/digital/circuit_transpiler.py +46 -0
- qilisdk/digital/circuit_transpiler_passes/__init__.py +18 -0
- qilisdk/digital/circuit_transpiler_passes/circuit_transpiler_pass.py +36 -0
- qilisdk/digital/circuit_transpiler_passes/decompose_multi_controlled_gates_pass.py +220 -0
- qilisdk/digital/circuit_transpiler_passes/numeric_helpers.py +82 -0
- qilisdk/digital/exceptions.py +37 -0
- qilisdk/digital/gates.py +1308 -0
- qilisdk/experiments/__init__.py +36 -0
- qilisdk/experiments/experiment_functional.py +212 -0
- qilisdk/experiments/experiment_result.py +247 -0
- qilisdk/functionals/__init__.py +29 -0
- qilisdk/functionals/functional.py +39 -0
- qilisdk/functionals/functional_result.py +18 -0
- qilisdk/functionals/sampling.py +89 -0
- qilisdk/functionals/sampling_result.py +92 -0
- qilisdk/functionals/time_evolution.py +111 -0
- qilisdk/functionals/time_evolution_result.py +91 -0
- qilisdk/functionals/variational_program.py +138 -0
- qilisdk/functionals/variational_program_result.py +69 -0
- qilisdk/logging_config.yaml +16 -0
- qilisdk/noise/__init__.py +56 -0
- qilisdk/noise/amplitude_damping.py +71 -0
- qilisdk/noise/bit_flip.py +45 -0
- qilisdk/noise/dephasing.py +69 -0
- qilisdk/noise/depolarizing.py +44 -0
- qilisdk/noise/gaussian_perturbation.py +69 -0
- qilisdk/noise/noise.py +20 -0
- qilisdk/noise/noise_abc.py +31 -0
- qilisdk/noise/noise_config.py +77 -0
- qilisdk/noise/noise_model.py +259 -0
- qilisdk/noise/offset_perturbation.py +39 -0
- qilisdk/noise/parameter_perturbation.py +45 -0
- qilisdk/noise/pauli_channel.py +115 -0
- qilisdk/noise/phase_flip.py +45 -0
- qilisdk/noise/protocols.py +107 -0
- qilisdk/noise/readout_assignment.py +60 -0
- qilisdk/noise/representations.py +149 -0
- qilisdk/noise/utils.py +90 -0
- qilisdk/optimizers/__init__.py +17 -0
- qilisdk/optimizers/optimizer.py +39 -0
- qilisdk/optimizers/optimizer_result.py +101 -0
- qilisdk/optimizers/scipy_optimizer.py +118 -0
- qilisdk/py.typed +0 -0
- qilisdk/settings.py +103 -0
- qilisdk/speqtrum/__init__.py +41 -0
- qilisdk/speqtrum/__init__.pyi +18 -0
- qilisdk/speqtrum/keyring.py +58 -0
- qilisdk/speqtrum/speqtrum.py +817 -0
- qilisdk/speqtrum/speqtrum_models.py +560 -0
- qilisdk/utils/__init__.py +13 -0
- qilisdk/utils/openfermion/__init__.py +38 -0
- qilisdk/utils/openfermion/__init__.pyi +17 -0
- qilisdk/utils/openfermion/openfermion.py +45 -0
- qilisdk/utils/openqasm2.py +215 -0
- qilisdk/utils/serialization.py +128 -0
- qilisdk/utils/trotterization/__init__.py +18 -0
- qilisdk/utils/trotterization/trotterization.py +127 -0
- qilisdk/utils/visualization/PlusJakartaSans-SemiBold.ttf +0 -0
- qilisdk/utils/visualization/__init__.py +24 -0
- qilisdk/utils/visualization/circuit_renderers.py +781 -0
- qilisdk/utils/visualization/schedule_renderers.py +175 -0
- qilisdk/utils/visualization/style.py +154 -0
- qilisdk/utils/visualization/themes.py +76 -0
- qilisdk/yaml.py +260 -0
- qilisdk-0.1.8.dist-info/METADATA +657 -0
- qilisdk-0.1.8.dist-info/RECORD +635 -0
- qilisdk-0.1.8.dist-info/WHEEL +6 -0
- qilisdk-0.1.8.dist-info/licenses/LICENCE +201 -0
- qilisdk.libs/libgomp-65f46eca.so.1.0.0 +0 -0
- qilisim_module.cpython-313-i386-linux-gnu.so +0 -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
|
@@ -0,0 +1,560 @@
|
|
|
1
|
+
# Copyright 2025 Qilimanjaro Quantum Tech
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
# ruff: noqa: ANN001, ANN202, PLR6301
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
|
|
17
|
+
from email.utils import parsedate_to_datetime
|
|
18
|
+
from enum import Enum
|
|
19
|
+
from typing import Any, Callable, Generic, TypeVar, cast, overload
|
|
20
|
+
|
|
21
|
+
from pydantic import AwareDatetime, BaseModel, ConfigDict, Field, field_serializer, field_validator
|
|
22
|
+
|
|
23
|
+
from qilisdk.experiments import (
|
|
24
|
+
RabiExperiment,
|
|
25
|
+
RabiExperimentResult,
|
|
26
|
+
T1Experiment,
|
|
27
|
+
T1ExperimentResult,
|
|
28
|
+
T2Experiment,
|
|
29
|
+
T2ExperimentResult,
|
|
30
|
+
TwoTonesExperiment,
|
|
31
|
+
TwoTonesExperimentResult,
|
|
32
|
+
)
|
|
33
|
+
from qilisdk.functionals import (
|
|
34
|
+
Sampling,
|
|
35
|
+
SamplingResult,
|
|
36
|
+
TimeEvolution,
|
|
37
|
+
TimeEvolutionResult,
|
|
38
|
+
VariationalProgram,
|
|
39
|
+
VariationalProgramResult,
|
|
40
|
+
)
|
|
41
|
+
from qilisdk.functionals.functional_result import FunctionalResult
|
|
42
|
+
from qilisdk.utils.serialization import deserialize, serialize
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class SpeQtrumModel(BaseModel):
|
|
46
|
+
model_config = ConfigDict(validate_by_name=True, validate_by_alias=True, arbitrary_types_allowed=True)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
class LoginPayload(BaseModel): ...
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class Token(SpeQtrumModel):
|
|
53
|
+
"""
|
|
54
|
+
Represents the structure of the login response:
|
|
55
|
+
{
|
|
56
|
+
"accessToken": "...",
|
|
57
|
+
"expiresIn": 123456789,
|
|
58
|
+
"issuedAt": "123456789",
|
|
59
|
+
"refreshToken": "...",
|
|
60
|
+
"tokenType": "bearer"
|
|
61
|
+
}
|
|
62
|
+
"""
|
|
63
|
+
|
|
64
|
+
access_token: str = Field(alias="accessToken")
|
|
65
|
+
expires_in: int = Field(alias="expiresIn")
|
|
66
|
+
issued_at: int = Field(alias="issuedAt")
|
|
67
|
+
refresh_token: str = Field(alias="refreshToken")
|
|
68
|
+
token_type: str = Field(alias="tokenType")
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class DeviceStatus(str, Enum):
|
|
72
|
+
"""Device status typing for posting"""
|
|
73
|
+
|
|
74
|
+
ONLINE = "online"
|
|
75
|
+
MAINTENANCE = "maintenance"
|
|
76
|
+
OFFLINE = "offline"
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
class DeviceType(str, Enum):
|
|
80
|
+
"""Device type"""
|
|
81
|
+
|
|
82
|
+
QPU_ANALOG = "qpu.analog"
|
|
83
|
+
QPU_DIGITAL = "qpu.digital"
|
|
84
|
+
SIMULATOR = "simulator"
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
class Device(SpeQtrumModel):
|
|
88
|
+
code: str = Field(...)
|
|
89
|
+
nqubits: int = Field(...)
|
|
90
|
+
name: str = Field(...)
|
|
91
|
+
description: str = Field(...)
|
|
92
|
+
type: DeviceType = Field(...)
|
|
93
|
+
status: DeviceStatus = Field(...)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
class ExecuteType(str, Enum):
|
|
97
|
+
SAMPLING = "sampling"
|
|
98
|
+
TIME_EVOLUTION = "time_evolution"
|
|
99
|
+
VARIATIONAL_PROGRAM = "variational_program"
|
|
100
|
+
RABI_EXPERIMENT = "rabi_experiment"
|
|
101
|
+
T1_EXPERIMENT = "t1_experiment"
|
|
102
|
+
T2_EXPERIMENT = "t2_experiment"
|
|
103
|
+
TWO_TONES_EXPERIMENT = "two_tones_experiment"
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
class SamplingPayload(SpeQtrumModel):
|
|
107
|
+
sampling: Sampling = Field(...)
|
|
108
|
+
|
|
109
|
+
@field_serializer("sampling")
|
|
110
|
+
def _serialize_sampling(self, sampling: Sampling, _info):
|
|
111
|
+
return serialize(sampling)
|
|
112
|
+
|
|
113
|
+
@field_validator("sampling", mode="before")
|
|
114
|
+
def _load_sampling(cls, v):
|
|
115
|
+
if isinstance(v, str):
|
|
116
|
+
return deserialize(v, Sampling)
|
|
117
|
+
return v
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
class TimeEvolutionPayload(SpeQtrumModel):
|
|
121
|
+
time_evolution: TimeEvolution = Field(...)
|
|
122
|
+
|
|
123
|
+
@field_serializer("time_evolution")
|
|
124
|
+
def _serialize_time_evolution(self, time_evolution: TimeEvolution, _info):
|
|
125
|
+
return serialize(time_evolution)
|
|
126
|
+
|
|
127
|
+
@field_validator("time_evolution", mode="before")
|
|
128
|
+
def _load_time_evolution(cls, v):
|
|
129
|
+
if isinstance(v, str):
|
|
130
|
+
return deserialize(v, TimeEvolution)
|
|
131
|
+
return v
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
class VariationalProgramPayload(SpeQtrumModel):
|
|
135
|
+
variational_program: VariationalProgram = Field(...)
|
|
136
|
+
|
|
137
|
+
@field_serializer("variational_program")
|
|
138
|
+
def _serialize_variational_program(self, variational_program: VariationalProgram, _info):
|
|
139
|
+
return serialize(variational_program)
|
|
140
|
+
|
|
141
|
+
@field_validator("variational_program", mode="before")
|
|
142
|
+
def _load_variational_program(cls, v):
|
|
143
|
+
if isinstance(v, str):
|
|
144
|
+
return deserialize(v, VariationalProgram)
|
|
145
|
+
return v
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
class RabiExperimentPayload(SpeQtrumModel):
|
|
149
|
+
rabi_experiment: RabiExperiment = Field(...)
|
|
150
|
+
|
|
151
|
+
@field_serializer("rabi_experiment")
|
|
152
|
+
def _serialize_rabi_experiment(self, rabi_experiment: RabiExperiment, _info):
|
|
153
|
+
return serialize(rabi_experiment)
|
|
154
|
+
|
|
155
|
+
@field_validator("rabi_experiment", mode="before")
|
|
156
|
+
def _load_rabi_experiment(cls, v):
|
|
157
|
+
if isinstance(v, str):
|
|
158
|
+
return deserialize(v, RabiExperiment)
|
|
159
|
+
return v
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
class T1ExperimentPayload(SpeQtrumModel):
|
|
163
|
+
t1_experiment: T1Experiment = Field(...)
|
|
164
|
+
|
|
165
|
+
@field_serializer("t1_experiment")
|
|
166
|
+
def _serialize_t1_experiment(self, t1_experiment: T1Experiment, _info):
|
|
167
|
+
return serialize(t1_experiment)
|
|
168
|
+
|
|
169
|
+
@field_validator("t1_experiment", mode="before")
|
|
170
|
+
def _load_t1_experiment(cls, v):
|
|
171
|
+
if isinstance(v, str):
|
|
172
|
+
return deserialize(v, T1Experiment)
|
|
173
|
+
return v
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
class T2ExperimentPayload(SpeQtrumModel):
|
|
177
|
+
t2_experiment: T2Experiment = Field(...)
|
|
178
|
+
|
|
179
|
+
@field_serializer("t2_experiment")
|
|
180
|
+
def _serialize_t2_experiment(self, t2_experiment: T2Experiment, _info):
|
|
181
|
+
return serialize(t2_experiment)
|
|
182
|
+
|
|
183
|
+
@field_validator("t2_experiment", mode="before")
|
|
184
|
+
def _load_t2_experiment(cls, v):
|
|
185
|
+
if isinstance(v, str):
|
|
186
|
+
return deserialize(v, T2Experiment)
|
|
187
|
+
return v
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
class TwoTonesExperimentPayload(SpeQtrumModel):
|
|
191
|
+
two_tones_experiment: TwoTonesExperiment = Field(...)
|
|
192
|
+
|
|
193
|
+
@field_serializer("two_tones_experiment")
|
|
194
|
+
def _serialize_two_tones_experiment(self, two_tones_experiment: TwoTonesExperiment, _info):
|
|
195
|
+
return serialize(two_tones_experiment)
|
|
196
|
+
|
|
197
|
+
@field_validator("two_tones_experiment", mode="before")
|
|
198
|
+
def _load_two_tones_experiment(cls, v):
|
|
199
|
+
if isinstance(v, str):
|
|
200
|
+
return deserialize(v, TwoTonesExperiment)
|
|
201
|
+
return v
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
class ExecutePayload(SpeQtrumModel):
|
|
205
|
+
type: ExecuteType = Field(...)
|
|
206
|
+
sampling_payload: SamplingPayload | None = None
|
|
207
|
+
time_evolution_payload: TimeEvolutionPayload | None = None
|
|
208
|
+
variational_program_payload: VariationalProgramPayload | None = None
|
|
209
|
+
rabi_experiment_payload: RabiExperimentPayload | None = None
|
|
210
|
+
t1_experiment_payload: T1ExperimentPayload | None = None
|
|
211
|
+
t2_experiment_payload: T2ExperimentPayload | None = None
|
|
212
|
+
two_tones_experiment_payload: TwoTonesExperimentPayload | None = None
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
class ExecuteResult(SpeQtrumModel):
|
|
216
|
+
type: ExecuteType = Field(...)
|
|
217
|
+
sampling_result: SamplingResult | None = None
|
|
218
|
+
time_evolution_result: TimeEvolutionResult | None = None
|
|
219
|
+
variational_program_result: VariationalProgramResult | None = None
|
|
220
|
+
rabi_experiment_result: RabiExperimentResult | None = None
|
|
221
|
+
t1_experiment_result: T1ExperimentResult | None = None
|
|
222
|
+
t2_experiment_result: T2ExperimentResult | None = None
|
|
223
|
+
two_tones_experiment_result: TwoTonesExperimentResult | None = None
|
|
224
|
+
|
|
225
|
+
@field_serializer("sampling_result")
|
|
226
|
+
def _serialize_sampling_result(self, sampling_result: SamplingResult, _info):
|
|
227
|
+
return serialize(sampling_result) if sampling_result is not None else None
|
|
228
|
+
|
|
229
|
+
@field_validator("sampling_result", mode="before")
|
|
230
|
+
def _load_sampling_result(cls, v):
|
|
231
|
+
if isinstance(v, str) and v.startswith("!"):
|
|
232
|
+
return deserialize(v, SamplingResult)
|
|
233
|
+
return v
|
|
234
|
+
|
|
235
|
+
@field_serializer("time_evolution_result")
|
|
236
|
+
def _serialize_time_evolution_result(self, time_evolution_result: TimeEvolutionResult, _info):
|
|
237
|
+
return serialize(time_evolution_result) if time_evolution_result is not None else None
|
|
238
|
+
|
|
239
|
+
@field_validator("time_evolution_result", mode="before")
|
|
240
|
+
def _load_time_evolution_result(cls, v):
|
|
241
|
+
if isinstance(v, str) and v.startswith("!"):
|
|
242
|
+
return deserialize(v, TimeEvolutionResult)
|
|
243
|
+
return v
|
|
244
|
+
|
|
245
|
+
@field_serializer("variational_program_result")
|
|
246
|
+
def _serialize_variational_program_result(self, variational_program_result: VariationalProgramResult, _info):
|
|
247
|
+
return serialize(variational_program_result) if variational_program_result is not None else None
|
|
248
|
+
|
|
249
|
+
@field_validator("variational_program_result", mode="before")
|
|
250
|
+
def _load_variational_program_result(cls, v):
|
|
251
|
+
if isinstance(v, str) and v.startswith("!"):
|
|
252
|
+
return deserialize(v, VariationalProgramResult)
|
|
253
|
+
return v
|
|
254
|
+
|
|
255
|
+
@field_serializer("rabi_experiment_result")
|
|
256
|
+
def _serialize_rabi_experiment_result(self, rabi_experiment_result: RabiExperimentResult, _info):
|
|
257
|
+
return serialize(rabi_experiment_result) if rabi_experiment_result is not None else None
|
|
258
|
+
|
|
259
|
+
@field_validator("rabi_experiment_result", mode="before")
|
|
260
|
+
def _load_rabi_experiment_result(cls, v):
|
|
261
|
+
if isinstance(v, str) and v.startswith("!"):
|
|
262
|
+
return deserialize(v, RabiExperimentResult)
|
|
263
|
+
return v
|
|
264
|
+
|
|
265
|
+
@field_serializer("t1_experiment_result")
|
|
266
|
+
def _serialize_t1_experiment_result(self, t1_experiment_result: T1ExperimentResult, _info):
|
|
267
|
+
return serialize(t1_experiment_result) if t1_experiment_result is not None else None
|
|
268
|
+
|
|
269
|
+
@field_validator("t1_experiment_result", mode="before")
|
|
270
|
+
def _load_t1_experiment_result(cls, v):
|
|
271
|
+
if isinstance(v, str) and v.startswith("!"):
|
|
272
|
+
return deserialize(v, T1ExperimentResult)
|
|
273
|
+
return v
|
|
274
|
+
|
|
275
|
+
@field_serializer("t2_experiment_result")
|
|
276
|
+
def _serialize_t2_experiment_result(self, t2_experiment_result: T2ExperimentResult, _info):
|
|
277
|
+
return serialize(t2_experiment_result) if t2_experiment_result is not None else None
|
|
278
|
+
|
|
279
|
+
@field_validator("t2_experiment_result", mode="before")
|
|
280
|
+
def _load_t2_experiment_result(cls, v):
|
|
281
|
+
if isinstance(v, str) and v.startswith("!"):
|
|
282
|
+
return deserialize(v, T2ExperimentResult)
|
|
283
|
+
return v
|
|
284
|
+
|
|
285
|
+
@field_serializer("two_tones_experiment_result")
|
|
286
|
+
def _serialize_two_tones_experiment_result(self, two_tones_experiment_result: TwoTonesExperimentResult, _info):
|
|
287
|
+
return serialize(two_tones_experiment_result) if two_tones_experiment_result is not None else None
|
|
288
|
+
|
|
289
|
+
@field_validator("two_tones_experiment_result", mode="before")
|
|
290
|
+
def _load_two_tones_experiment_result(cls, v):
|
|
291
|
+
if isinstance(v, str) and v.startswith("!"):
|
|
292
|
+
return deserialize(v, TwoTonesExperimentResult)
|
|
293
|
+
return v
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
TFunctionalResult_co = TypeVar("TFunctionalResult_co", bound=FunctionalResult, covariant=True)
|
|
297
|
+
TVariationalInnerResult = TypeVar("TVariationalInnerResult", bound=FunctionalResult)
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
ResultExtractor = Callable[[ExecuteResult], TFunctionalResult_co]
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
# these helpers live outside the models so they can be referenced by default values
|
|
304
|
+
def _require_sampling_result(result: ExecuteResult) -> SamplingResult:
|
|
305
|
+
if result.sampling_result is None:
|
|
306
|
+
raise RuntimeError("SpeQtrum did not return a sampling_result for a sampling execution.")
|
|
307
|
+
return result.sampling_result
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
def _require_time_evolution_result(result: ExecuteResult) -> TimeEvolutionResult:
|
|
311
|
+
if result.time_evolution_result is None:
|
|
312
|
+
raise RuntimeError("SpeQtrum did not return a time_evolution_result for a time evolution execution.")
|
|
313
|
+
return result.time_evolution_result
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
def _require_variational_program_result(result: ExecuteResult) -> VariationalProgramResult:
|
|
317
|
+
if result.variational_program_result is None:
|
|
318
|
+
raise RuntimeError("SpeQtrum did not return a variational_program_result for a variational program execution.")
|
|
319
|
+
return result.variational_program_result
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
def _require_rabi_experiment_result(result: ExecuteResult) -> RabiExperimentResult:
|
|
323
|
+
if result.rabi_experiment_result is None:
|
|
324
|
+
raise RuntimeError("SpeQtrum did not return a rabi_experiment_result for a Rabi experiment execution.")
|
|
325
|
+
return result.rabi_experiment_result
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
def _require_t1_experiment_result(result: ExecuteResult) -> T1ExperimentResult:
|
|
329
|
+
if result.t1_experiment_result is None:
|
|
330
|
+
raise RuntimeError("SpeQtrum did not return a t1_experiment_result for a T1 experiment execution.")
|
|
331
|
+
return result.t1_experiment_result
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
def _require_t2_experiment_result(result: ExecuteResult) -> T2ExperimentResult:
|
|
335
|
+
if result.t2_experiment_result is None:
|
|
336
|
+
raise RuntimeError("SpeQtrum did not return a t2_experiment_result for a T2 experiment execution.")
|
|
337
|
+
return result.t2_experiment_result
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
def _require_two_tones_experiment_result(result: ExecuteResult) -> TwoTonesExperimentResult:
|
|
341
|
+
if result.two_tones_experiment_result is None:
|
|
342
|
+
raise RuntimeError(
|
|
343
|
+
"SpeQtrum did not return a two_tones_experiment_result for a Two-Tones experiment execution."
|
|
344
|
+
)
|
|
345
|
+
return result.two_tones_experiment_result
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
def _require_variational_program_result_typed(
|
|
349
|
+
inner_result_type: type[TVariationalInnerResult],
|
|
350
|
+
) -> ResultExtractor[VariationalProgramResult[TVariationalInnerResult]]:
|
|
351
|
+
def _extractor(result: ExecuteResult) -> VariationalProgramResult[TVariationalInnerResult]:
|
|
352
|
+
variational_result = _require_variational_program_result(result)
|
|
353
|
+
optimal_results = variational_result.optimal_execution_results
|
|
354
|
+
if not isinstance(optimal_results, inner_result_type):
|
|
355
|
+
raise RuntimeError(
|
|
356
|
+
"SpeQtrum returned a variational program result whose optimal execution result "
|
|
357
|
+
f"({type(optimal_results).__qualname__}) does not match the expected "
|
|
358
|
+
f"{inner_result_type.__qualname__}."
|
|
359
|
+
)
|
|
360
|
+
return cast("VariationalProgramResult[TVariationalInnerResult]", variational_result)
|
|
361
|
+
|
|
362
|
+
return _extractor
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
class JobHandle(SpeQtrumModel, Generic[TFunctionalResult_co]):
|
|
366
|
+
"""Strongly typed reference to a submitted SpeQtrum job."""
|
|
367
|
+
|
|
368
|
+
id: int
|
|
369
|
+
execute_type: ExecuteType
|
|
370
|
+
extractor: ResultExtractor[TFunctionalResult_co] = Field(repr=False, exclude=True)
|
|
371
|
+
|
|
372
|
+
@classmethod
|
|
373
|
+
def sampling(cls: type[JobHandle[SamplingResult]], job_id: int) -> JobHandle[SamplingResult]:
|
|
374
|
+
return cls(id=job_id, execute_type=ExecuteType.SAMPLING, extractor=_require_sampling_result)
|
|
375
|
+
|
|
376
|
+
@classmethod
|
|
377
|
+
def time_evolution(cls: type[JobHandle[TimeEvolutionResult]], job_id: int) -> JobHandle[TimeEvolutionResult]:
|
|
378
|
+
return cls(id=job_id, execute_type=ExecuteType.TIME_EVOLUTION, extractor=_require_time_evolution_result)
|
|
379
|
+
|
|
380
|
+
@overload
|
|
381
|
+
@classmethod
|
|
382
|
+
def variational_program(cls, job_id: int) -> JobHandle[VariationalProgramResult]: ...
|
|
383
|
+
|
|
384
|
+
@overload
|
|
385
|
+
@classmethod
|
|
386
|
+
def variational_program(
|
|
387
|
+
cls, job_id: int, *, result_type: type[TVariationalInnerResult]
|
|
388
|
+
) -> "JobHandle[VariationalProgramResult[TVariationalInnerResult]]": ...
|
|
389
|
+
|
|
390
|
+
@classmethod
|
|
391
|
+
def variational_program(
|
|
392
|
+
cls, job_id: int, *, result_type: type[TVariationalInnerResult] | None = None
|
|
393
|
+
) -> "JobHandle[Any]":
|
|
394
|
+
"""Create a variational-program handle for an existing job identifier.
|
|
395
|
+
|
|
396
|
+
Args:
|
|
397
|
+
job_id: Numeric identifier returned by the SpeQtrum service.
|
|
398
|
+
result_type: Optional functional result type expected within the
|
|
399
|
+
variational program payload. When provided the returned handle
|
|
400
|
+
enforces that the optimiser output matches this type.
|
|
401
|
+
|
|
402
|
+
Returns:
|
|
403
|
+
JobHandle: A handle whose ``get_results`` invocation yields a
|
|
404
|
+
``VariationalProgramResult`` preserving the requested inner result
|
|
405
|
+
type when supplied.
|
|
406
|
+
"""
|
|
407
|
+
if result_type is None:
|
|
408
|
+
handle = cls(
|
|
409
|
+
id=job_id,
|
|
410
|
+
execute_type=ExecuteType.VARIATIONAL_PROGRAM,
|
|
411
|
+
extractor=_require_variational_program_result,
|
|
412
|
+
)
|
|
413
|
+
return cast("JobHandle[VariationalProgramResult]", handle)
|
|
414
|
+
|
|
415
|
+
extractor = _require_variational_program_result_typed(result_type)
|
|
416
|
+
handle = cls(id=job_id, execute_type=ExecuteType.VARIATIONAL_PROGRAM, extractor=extractor)
|
|
417
|
+
return cast("JobHandle[VariationalProgramResult[TVariationalInnerResult]]", handle)
|
|
418
|
+
|
|
419
|
+
@classmethod
|
|
420
|
+
def rabi_experiment(cls: type[JobHandle[RabiExperimentResult]], job_id: int) -> JobHandle[RabiExperimentResult]:
|
|
421
|
+
return cls(id=job_id, execute_type=ExecuteType.RABI_EXPERIMENT, extractor=_require_rabi_experiment_result)
|
|
422
|
+
|
|
423
|
+
@classmethod
|
|
424
|
+
def t1_experiment(cls: type[JobHandle[T1ExperimentResult]], job_id: int) -> JobHandle[T1ExperimentResult]:
|
|
425
|
+
return cls(id=job_id, execute_type=ExecuteType.T1_EXPERIMENT, extractor=_require_t1_experiment_result)
|
|
426
|
+
|
|
427
|
+
@classmethod
|
|
428
|
+
def t2_experiment(cls: type[JobHandle[T2ExperimentResult]], job_id: int) -> JobHandle[T2ExperimentResult]:
|
|
429
|
+
return cls(id=job_id, execute_type=ExecuteType.T2_EXPERIMENT, extractor=_require_t2_experiment_result)
|
|
430
|
+
|
|
431
|
+
@classmethod
|
|
432
|
+
def two_tones_experiment(
|
|
433
|
+
cls: type[JobHandle[TwoTonesExperimentResult]], job_id: int
|
|
434
|
+
) -> JobHandle[TwoTonesExperimentResult]:
|
|
435
|
+
return cls(
|
|
436
|
+
id=job_id,
|
|
437
|
+
execute_type=ExecuteType.TWO_TONES_EXPERIMENT,
|
|
438
|
+
extractor=_require_two_tones_experiment_result,
|
|
439
|
+
)
|
|
440
|
+
|
|
441
|
+
def bind(self, detail: "JobDetail") -> "TypedJobDetail[TFunctionalResult_co]":
|
|
442
|
+
"""Attach this handle's typing information to a concrete job detail.
|
|
443
|
+
|
|
444
|
+
Args:
|
|
445
|
+
detail: Un-typed job detail payload returned by the SpeQtrum API.
|
|
446
|
+
|
|
447
|
+
Returns:
|
|
448
|
+
TypedJobDetail: Wrapper exposing ``get_results`` with the typing
|
|
449
|
+
captured when the handle was created.
|
|
450
|
+
"""
|
|
451
|
+
return TypedJobDetail.model_validate(
|
|
452
|
+
{
|
|
453
|
+
**detail.model_dump(),
|
|
454
|
+
"expected_type": self.execute_type,
|
|
455
|
+
"extractor": self.extractor,
|
|
456
|
+
}
|
|
457
|
+
)
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
class JobStatus(str, Enum):
|
|
461
|
+
"Job has not been submitted to the Lab api"
|
|
462
|
+
|
|
463
|
+
PENDING = "pending"
|
|
464
|
+
"Job has been queued but not yet validated"
|
|
465
|
+
VALIDATING = "validating"
|
|
466
|
+
"Job has been validated and is queued for execution"
|
|
467
|
+
QUEUED = "queued"
|
|
468
|
+
"Job is being executed on the device"
|
|
469
|
+
RUNNING = "running"
|
|
470
|
+
"Job finished successfully"
|
|
471
|
+
COMPLETED = "completed"
|
|
472
|
+
"Job failed due to an error"
|
|
473
|
+
ERROR = "error"
|
|
474
|
+
"Job was cancelled by the user or system"
|
|
475
|
+
CANCELLED = "cancelled"
|
|
476
|
+
"Job failed due to timeout"
|
|
477
|
+
TIMEOUT = "timeout"
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
class JobType(str, Enum):
|
|
481
|
+
DIGITAL = "digital"
|
|
482
|
+
PULSE = "pulse"
|
|
483
|
+
ANALOG = "analog"
|
|
484
|
+
VARIATIONAL = "variational"
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
class JobId(SpeQtrumModel):
|
|
488
|
+
"""Handle/reference you normally get back immediately after `POST /execute`."""
|
|
489
|
+
|
|
490
|
+
id: int = Field(...)
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
class JobInfo(JobId):
|
|
494
|
+
"""
|
|
495
|
+
Light-weight representation suitable for 'list jobs' and polling
|
|
496
|
+
when you do *not* need logs or results.
|
|
497
|
+
"""
|
|
498
|
+
|
|
499
|
+
name: str = Field(...)
|
|
500
|
+
description: str = Field(...)
|
|
501
|
+
device_id: int = Field(...)
|
|
502
|
+
status: JobStatus = Field(...)
|
|
503
|
+
created_at: AwareDatetime = Field(...)
|
|
504
|
+
updated_at: AwareDatetime | None = None
|
|
505
|
+
completed_at: AwareDatetime | None = None
|
|
506
|
+
|
|
507
|
+
@field_validator("created_at", mode="before")
|
|
508
|
+
def _parse_created_at(cls, v):
|
|
509
|
+
return parsedate_to_datetime(v) if isinstance(v, str) else v
|
|
510
|
+
|
|
511
|
+
@field_validator("updated_at", mode="before")
|
|
512
|
+
def _parse_updated_at(cls, v):
|
|
513
|
+
return parsedate_to_datetime(v) if isinstance(v, str) else v
|
|
514
|
+
|
|
515
|
+
@field_validator("completed_at", mode="before")
|
|
516
|
+
def _parse_completed_at(cls, v):
|
|
517
|
+
return parsedate_to_datetime(v) if isinstance(v, str) else v
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
class JobDetail(JobInfo):
|
|
521
|
+
"""
|
|
522
|
+
Full representation returned by `GET /jobs/{id}` when payload/result/logs
|
|
523
|
+
are requested.
|
|
524
|
+
"""
|
|
525
|
+
|
|
526
|
+
payload: ExecutePayload | None = None
|
|
527
|
+
result: ExecuteResult | None = None
|
|
528
|
+
jobType: JobType | None = None
|
|
529
|
+
logs: str | None = None
|
|
530
|
+
error: str | None = None
|
|
531
|
+
error_logs: str | None = None
|
|
532
|
+
|
|
533
|
+
|
|
534
|
+
class TypedJobDetail(JobDetail, Generic[TFunctionalResult_co]):
|
|
535
|
+
"""`JobDetail` subclass that exposes a strongly typed `get_results` method."""
|
|
536
|
+
|
|
537
|
+
expected_type: ExecuteType = Field(repr=False)
|
|
538
|
+
extractor: ResultExtractor[TFunctionalResult_co] = Field(repr=False, exclude=True)
|
|
539
|
+
|
|
540
|
+
def get_results(self) -> TFunctionalResult_co:
|
|
541
|
+
"""Return the strongly typed execution result.
|
|
542
|
+
|
|
543
|
+
Returns:
|
|
544
|
+
ResultT_co: Result payload associated with the completed job,
|
|
545
|
+
respecting the type information carried by the originating
|
|
546
|
+
``JobHandle``.
|
|
547
|
+
|
|
548
|
+
Raises:
|
|
549
|
+
RuntimeError: If SpeQtrum has not populated the result payload or
|
|
550
|
+
the execute type disagrees with the handle.
|
|
551
|
+
"""
|
|
552
|
+
if self.result is None:
|
|
553
|
+
raise RuntimeError("The job completed without a result payload; inspect `error` or `logs` for details.")
|
|
554
|
+
|
|
555
|
+
if self.result.type != self.expected_type:
|
|
556
|
+
raise RuntimeError(
|
|
557
|
+
f"Expected a result of type '{self.expected_type.value}' but received '{self.result.type.value}'."
|
|
558
|
+
)
|
|
559
|
+
|
|
560
|
+
return self.extractor(self.result)
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Copyright 2025 Qilimanjaro Quantum Tech
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Copyright 2025 Qilimanjaro Quantum Tech
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
import sys
|
|
15
|
+
|
|
16
|
+
from qilisdk._optionals import ImportedFeature, OptionalFeature, Symbol, import_optional_dependencies
|
|
17
|
+
|
|
18
|
+
__all__ = []
|
|
19
|
+
|
|
20
|
+
OPTIONAL_FEATURES: list[OptionalFeature] = [
|
|
21
|
+
OptionalFeature(
|
|
22
|
+
name="openfermion",
|
|
23
|
+
dependencies=["openfermion"],
|
|
24
|
+
symbols=[
|
|
25
|
+
Symbol(path="qilisdk.utils.openfermion.openfermion", name="openfermion_to_qilisdk"),
|
|
26
|
+
Symbol(path="qilisdk.utils.openfermion.openfermion", name="qilisdk_to_openfermion"),
|
|
27
|
+
],
|
|
28
|
+
),
|
|
29
|
+
]
|
|
30
|
+
|
|
31
|
+
current_module = sys.modules[__name__]
|
|
32
|
+
|
|
33
|
+
# Dynamically import (or stub) each feature's symbols and attach them
|
|
34
|
+
for feature in OPTIONAL_FEATURES:
|
|
35
|
+
imported_feature: ImportedFeature = import_optional_dependencies(feature)
|
|
36
|
+
for symbol_name, symbol_obj in imported_feature.symbols.items():
|
|
37
|
+
setattr(current_module, symbol_name, symbol_obj)
|
|
38
|
+
__all__ += [symbol_name] # noqa: PLE0604
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Copyright 2025 Qilimanjaro Quantum Tech
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
from .openfermion import openfermion_to_qilisdk, qilisdk_to_openfermion
|
|
16
|
+
|
|
17
|
+
__all__ = ["openfermion_to_qilisdk", "qilisdk_to_openfermion"]
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Copyright 2025 Qilimanjaro Quantum Tech
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
from openfermion import QubitOperator
|
|
16
|
+
|
|
17
|
+
from qilisdk.analog import Hamiltonian, PauliI, PauliX, PauliY, PauliZ
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def openfermion_to_qilisdk(qubit_operator: QubitOperator) -> Hamiltonian:
|
|
21
|
+
pauli_map = {"X": PauliX, "Y": PauliY, "Z": PauliZ}
|
|
22
|
+
|
|
23
|
+
return Hamiltonian(
|
|
24
|
+
{
|
|
25
|
+
(tuple((pauli_map[op](q)) for q, op in term) if len(term) > 0 else (PauliI(0),)): coeff
|
|
26
|
+
for term, coeff in qubit_operator.terms.items()
|
|
27
|
+
}
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def qilisdk_to_openfermion(hamiltonian: Hamiltonian) -> QubitOperator:
|
|
32
|
+
of_ham = QubitOperator()
|
|
33
|
+
|
|
34
|
+
for coeff, terms in hamiltonian:
|
|
35
|
+
of_term = ""
|
|
36
|
+
for t in terms:
|
|
37
|
+
if isinstance(t, PauliI):
|
|
38
|
+
continue
|
|
39
|
+
|
|
40
|
+
of_term += str(t).replace("(", "").replace(")", "") + " "
|
|
41
|
+
of_term = of_term.rstrip()
|
|
42
|
+
|
|
43
|
+
of_ham += QubitOperator(of_term, coeff)
|
|
44
|
+
|
|
45
|
+
return of_ham
|