qilisdk 0.1.8__cp312-cp312-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-312-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,36 @@
|
|
|
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
|
+
from .experiment_functional import ExperimentFunctional, RabiExperiment, T1Experiment, T2Experiment, TwoTonesExperiment
|
|
15
|
+
from .experiment_result import (
|
|
16
|
+
Dimension,
|
|
17
|
+
ExperimentResult,
|
|
18
|
+
RabiExperimentResult,
|
|
19
|
+
T1ExperimentResult,
|
|
20
|
+
T2ExperimentResult,
|
|
21
|
+
TwoTonesExperimentResult,
|
|
22
|
+
)
|
|
23
|
+
|
|
24
|
+
__all__ = [
|
|
25
|
+
"Dimension",
|
|
26
|
+
"ExperimentFunctional",
|
|
27
|
+
"ExperimentResult",
|
|
28
|
+
"RabiExperiment",
|
|
29
|
+
"RabiExperimentResult",
|
|
30
|
+
"T1Experiment",
|
|
31
|
+
"T1ExperimentResult",
|
|
32
|
+
"T2Experiment",
|
|
33
|
+
"T2ExperimentResult",
|
|
34
|
+
"TwoTonesExperiment",
|
|
35
|
+
"TwoTonesExperimentResult",
|
|
36
|
+
]
|
|
@@ -0,0 +1,212 @@
|
|
|
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
|
+
from __future__ import annotations
|
|
15
|
+
|
|
16
|
+
from abc import ABC
|
|
17
|
+
from typing import TYPE_CHECKING, ClassVar, Generic, TypeVar
|
|
18
|
+
|
|
19
|
+
from qilisdk.experiments.experiment_result import (
|
|
20
|
+
ExperimentResult,
|
|
21
|
+
RabiExperimentResult,
|
|
22
|
+
T1ExperimentResult,
|
|
23
|
+
T2ExperimentResult,
|
|
24
|
+
TwoTonesExperimentResult,
|
|
25
|
+
)
|
|
26
|
+
from qilisdk.functionals.functional import Functional
|
|
27
|
+
from qilisdk.yaml import yaml
|
|
28
|
+
|
|
29
|
+
if TYPE_CHECKING:
|
|
30
|
+
import numpy as np
|
|
31
|
+
|
|
32
|
+
TResult_co = TypeVar("TResult_co", bound=ExperimentResult, covariant=True)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
@yaml.register_class
|
|
36
|
+
class ExperimentFunctional(Functional, ABC, Generic[TResult_co]):
|
|
37
|
+
"""Abstract base class for single-qubit experiment functionals.
|
|
38
|
+
|
|
39
|
+
This class serves as a generic interface for defining quantum
|
|
40
|
+
characterization experiments such as Rabi or T1. Each subclass
|
|
41
|
+
specifies a concrete `ExperimentResult` type and the corresponding
|
|
42
|
+
sweep parameters.
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
def __init__(self, qubit: int) -> None:
|
|
46
|
+
"""Initialize the experiment functional.
|
|
47
|
+
|
|
48
|
+
Args:
|
|
49
|
+
qubit (int): The physical qubit index on which the experiment is performed.
|
|
50
|
+
"""
|
|
51
|
+
self._qubit = qubit
|
|
52
|
+
|
|
53
|
+
@property
|
|
54
|
+
def qubit(self) -> int:
|
|
55
|
+
"""The physical qubit index on which the experiment is performed.
|
|
56
|
+
|
|
57
|
+
Returns:
|
|
58
|
+
int: Index of the qubit.
|
|
59
|
+
"""
|
|
60
|
+
return self._qubit
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
@yaml.register_class
|
|
64
|
+
class RabiExperiment(ExperimentFunctional[RabiExperimentResult]):
|
|
65
|
+
"""Rabi experiment functional for a single qubit.
|
|
66
|
+
|
|
67
|
+
This functional defines a standard Rabi oscillation experiment where
|
|
68
|
+
the drive pulse duration is swept to measure the oscillatory response
|
|
69
|
+
of the qubit under continuous driving.
|
|
70
|
+
"""
|
|
71
|
+
|
|
72
|
+
result_type: ClassVar[type[RabiExperimentResult]] = RabiExperimentResult
|
|
73
|
+
"""Result type returned by this functional."""
|
|
74
|
+
|
|
75
|
+
def __init__(self, qubit: int, drive_duration_values: np.ndarray) -> None:
|
|
76
|
+
"""Initialize a Rabi experiment functional.
|
|
77
|
+
|
|
78
|
+
Args:
|
|
79
|
+
qubit (int): The physical qubit index on which the experiment is performed.
|
|
80
|
+
drive_duration_values (np.ndarray): Array of drive pulse durations (in nanoseconds)
|
|
81
|
+
used to sweep the experiment.
|
|
82
|
+
"""
|
|
83
|
+
super().__init__(qubit=qubit)
|
|
84
|
+
self._drive_duration_values = drive_duration_values
|
|
85
|
+
|
|
86
|
+
@property
|
|
87
|
+
def drive_duration_values(self) -> np.ndarray:
|
|
88
|
+
"""Drive pulse duration sweep values.
|
|
89
|
+
|
|
90
|
+
Returns:
|
|
91
|
+
np.ndarray: The set of drive durations (in nanoseconds) used in the Rabi experiment.
|
|
92
|
+
"""
|
|
93
|
+
return self._drive_duration_values
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
@yaml.register_class
|
|
97
|
+
class T1Experiment(ExperimentFunctional[T1ExperimentResult]):
|
|
98
|
+
"""T1 relaxation experiment functional for a single qubit.
|
|
99
|
+
|
|
100
|
+
This functional defines a standard T1 (energy relaxation) experiment,
|
|
101
|
+
where the delay between excitation and measurement is varied to extract
|
|
102
|
+
the relaxation time constant of the qubit.
|
|
103
|
+
"""
|
|
104
|
+
|
|
105
|
+
result_type: ClassVar[type[T1ExperimentResult]] = T1ExperimentResult
|
|
106
|
+
"""Result type returned by this functional."""
|
|
107
|
+
|
|
108
|
+
def __init__(self, qubit: int, wait_duration_values: np.ndarray) -> None:
|
|
109
|
+
"""Initialize a T1 experiment functional.
|
|
110
|
+
|
|
111
|
+
Args:
|
|
112
|
+
qubit (int): The physical qubit index on which the experiment is performed.
|
|
113
|
+
wait_duration_values (np.ndarray): Array of waiting times (in nanoseconds)
|
|
114
|
+
between excitation and measurement.
|
|
115
|
+
"""
|
|
116
|
+
super().__init__(qubit=qubit)
|
|
117
|
+
self._wait_duration_values: np.ndarray = wait_duration_values
|
|
118
|
+
|
|
119
|
+
@property
|
|
120
|
+
def wait_duration_values(self) -> np.ndarray:
|
|
121
|
+
"""Waiting time sweep values.
|
|
122
|
+
|
|
123
|
+
Returns:
|
|
124
|
+
np.ndarray: The set of delay durations (in nanoseconds) used in the T1 experiment.
|
|
125
|
+
"""
|
|
126
|
+
return self._wait_duration_values
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
@yaml.register_class
|
|
130
|
+
class T2Experiment(ExperimentFunctional[T2ExperimentResult]):
|
|
131
|
+
"""T2 dephasing experiment functional for a single qubit.
|
|
132
|
+
|
|
133
|
+
This functional defines a Ramsey/spin-echo style T2 experiment, where
|
|
134
|
+
the free-evolution delay between phase-sensitive pulses is swept to
|
|
135
|
+
extract the qubit coherence time.
|
|
136
|
+
"""
|
|
137
|
+
|
|
138
|
+
result_type: ClassVar[type[T2ExperimentResult]] = T2ExperimentResult
|
|
139
|
+
"""Result type returned by this functional."""
|
|
140
|
+
|
|
141
|
+
def __init__(self, qubit: int, wait_duration_values: np.ndarray) -> None:
|
|
142
|
+
"""Initialize a T2 dephasing experiment functional.
|
|
143
|
+
|
|
144
|
+
Args:
|
|
145
|
+
qubit (int): The physical qubit index on which the experiment is performed.
|
|
146
|
+
wait_duration_values (np.ndarray): Array of free-evolution delays
|
|
147
|
+
(in nanoseconds) between the phase-sensitive pulses.
|
|
148
|
+
"""
|
|
149
|
+
super().__init__(qubit=qubit)
|
|
150
|
+
self._wait_duration_values: np.ndarray = wait_duration_values
|
|
151
|
+
|
|
152
|
+
@property
|
|
153
|
+
def wait_duration_values(self) -> np.ndarray:
|
|
154
|
+
"""Free-evolution delay sweep values.
|
|
155
|
+
|
|
156
|
+
Returns:
|
|
157
|
+
np.ndarray: The set of delay durations (in nanoseconds) used to estimate T2.
|
|
158
|
+
"""
|
|
159
|
+
return self._wait_duration_values
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
@yaml.register_class
|
|
163
|
+
class TwoTonesExperiment(ExperimentFunctional[TwoTonesExperimentResult]):
|
|
164
|
+
"""Two-tone spectroscopy functional for a single qubit.
|
|
165
|
+
|
|
166
|
+
Sweeps a drive tone frequency while monitoring the readout tone to
|
|
167
|
+
identify the qubit transition frequency.
|
|
168
|
+
"""
|
|
169
|
+
|
|
170
|
+
result_type: ClassVar[type[TwoTonesExperimentResult]] = TwoTonesExperimentResult
|
|
171
|
+
"""Result type returned by this functional."""
|
|
172
|
+
|
|
173
|
+
def __init__(self, qubit: int, frequency_start: float, frequency_stop: float, frequency_step: float) -> None:
|
|
174
|
+
"""Initialize a two-tone spectroscopy functional.
|
|
175
|
+
|
|
176
|
+
Args:
|
|
177
|
+
qubit (int): The physical qubit index on which the experiment is performed.
|
|
178
|
+
frequency_start (float): Starting frequency of the swept drive tone (in Hz).
|
|
179
|
+
frequency_stop (float): Ending frequency of the swept drive tone (in Hz).
|
|
180
|
+
frequency_step (float): Frequency increment between sweep points (in Hz).
|
|
181
|
+
"""
|
|
182
|
+
super().__init__(qubit=qubit)
|
|
183
|
+
self._frequency_start: float = frequency_start
|
|
184
|
+
self._frequency_stop: float = frequency_stop
|
|
185
|
+
self._frequency_step: float = frequency_step
|
|
186
|
+
|
|
187
|
+
@property
|
|
188
|
+
def frequency_start(self) -> float:
|
|
189
|
+
"""Start frequency for the drive tone sweep.
|
|
190
|
+
|
|
191
|
+
Returns:
|
|
192
|
+
float: Starting frequency of the drive tone (in Hz).
|
|
193
|
+
"""
|
|
194
|
+
return self._frequency_start
|
|
195
|
+
|
|
196
|
+
@property
|
|
197
|
+
def frequency_stop(self) -> float:
|
|
198
|
+
"""Stop frequency for the drive tone sweep.
|
|
199
|
+
|
|
200
|
+
Returns:
|
|
201
|
+
float: Ending frequency of the drive tone (in Hz).
|
|
202
|
+
"""
|
|
203
|
+
return self._frequency_stop
|
|
204
|
+
|
|
205
|
+
@property
|
|
206
|
+
def frequency_step(self) -> float:
|
|
207
|
+
"""Step size for the drive tone sweep.
|
|
208
|
+
|
|
209
|
+
Returns:
|
|
210
|
+
float: Frequency increment between sweep points (in Hz).
|
|
211
|
+
"""
|
|
212
|
+
return self._frequency_step
|
|
@@ -0,0 +1,247 @@
|
|
|
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
|
+
from pathlib import Path
|
|
15
|
+
from typing import ClassVar
|
|
16
|
+
|
|
17
|
+
import matplotlib.pyplot as plt
|
|
18
|
+
import numpy as np
|
|
19
|
+
from matplotlib.figure import Figure
|
|
20
|
+
|
|
21
|
+
from qilisdk.functionals.functional_result import FunctionalResult
|
|
22
|
+
from qilisdk.yaml import yaml
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
@yaml.register_class
|
|
26
|
+
class Dimension:
|
|
27
|
+
"""Represents a labeled dimension in an experiment sweep.
|
|
28
|
+
|
|
29
|
+
A `Dimension` defines one or more sweep parameters, such as drive
|
|
30
|
+
amplitude, frequency, or delay time, together with their associated
|
|
31
|
+
numerical values.
|
|
32
|
+
|
|
33
|
+
Attributes:
|
|
34
|
+
labels (list[str]): Human-readable labels for the sweep parameters.
|
|
35
|
+
values (list[np.ndarray]): Numeric arrays representing the values
|
|
36
|
+
corresponding to each label.
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
def __init__(self, labels: list[str], values: list[np.ndarray]) -> None:
|
|
40
|
+
"""Initialize a Dimension object.
|
|
41
|
+
|
|
42
|
+
Args:
|
|
43
|
+
labels (list[str]): Labels describing each dimension (e.g. ``["Drive amplitude"]``).
|
|
44
|
+
values (list[np.ndarray]): Numerical arrays for the corresponding parameter values.
|
|
45
|
+
"""
|
|
46
|
+
self.labels = labels
|
|
47
|
+
self.values = values
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
@yaml.register_class
|
|
51
|
+
class ExperimentResult(FunctionalResult):
|
|
52
|
+
"""Base class for storing and visualizing experiment results.
|
|
53
|
+
|
|
54
|
+
This class defines common utilities for handling experimental data,
|
|
55
|
+
including computation of S21 parameters and automatic 1D or 2D plotting.
|
|
56
|
+
Subclasses provide specific sweep parameters and plot titles.
|
|
57
|
+
"""
|
|
58
|
+
|
|
59
|
+
plot_title: ClassVar[str]
|
|
60
|
+
"""Default plot title; subclasses provide the concrete label."""
|
|
61
|
+
|
|
62
|
+
def __init__(self, qubit: int, data: np.ndarray, dims: list[Dimension]) -> None:
|
|
63
|
+
"""Initialize an experiment result.
|
|
64
|
+
|
|
65
|
+
Args:
|
|
66
|
+
qubit (int): The qubit index on which the experiment was performed.
|
|
67
|
+
data (np.ndarray): Raw experimental data array.
|
|
68
|
+
dims (list[Dimension]): Sweep dimensions of the experiment.
|
|
69
|
+
"""
|
|
70
|
+
self.qubit = qubit
|
|
71
|
+
self.data = data
|
|
72
|
+
self.dims = dims
|
|
73
|
+
|
|
74
|
+
@property
|
|
75
|
+
def s21(self) -> np.ndarray:
|
|
76
|
+
"""Complex S21 transmission parameter.
|
|
77
|
+
|
|
78
|
+
Returns:
|
|
79
|
+
np.ndarray: The complex-valued S21 response computed as ``Re + i * Im``.
|
|
80
|
+
"""
|
|
81
|
+
return self.data[..., 0] + 1j * self.data[..., 1]
|
|
82
|
+
|
|
83
|
+
@property
|
|
84
|
+
def s21_modulus(self) -> np.ndarray:
|
|
85
|
+
"""Magnitude of the S21 parameter.
|
|
86
|
+
|
|
87
|
+
Returns:
|
|
88
|
+
np.ndarray: The absolute value of the S21 parameter.
|
|
89
|
+
"""
|
|
90
|
+
return np.abs(self.s21)
|
|
91
|
+
|
|
92
|
+
@property
|
|
93
|
+
def s21_db(self) -> np.ndarray:
|
|
94
|
+
"""Magnitude of S21 in decibels (dB).
|
|
95
|
+
|
|
96
|
+
Returns:
|
|
97
|
+
np.ndarray: ``20 * log10(abs(S21))`` expressed in dB.
|
|
98
|
+
"""
|
|
99
|
+
return 20 * np.log10(self.s21_modulus)
|
|
100
|
+
|
|
101
|
+
def plot(self, save_to: str | None = None) -> None:
|
|
102
|
+
"""Plot the S21 parameter from experiment results.
|
|
103
|
+
|
|
104
|
+
Automatically detects whether the dataset is 1D or 2D and creates
|
|
105
|
+
the appropriate figure. Optionally saves the figure to disk.
|
|
106
|
+
|
|
107
|
+
Args:
|
|
108
|
+
save_to (str | None): Optional path or directory to save the
|
|
109
|
+
generated plot. If a directory is provided, the filename is
|
|
110
|
+
automatically generated as ``{plot_title}_qubit{qubit}.png``.
|
|
111
|
+
|
|
112
|
+
Raises:
|
|
113
|
+
NotImplementedError: If the experiment data has more than 2 dimensions.
|
|
114
|
+
"""
|
|
115
|
+
|
|
116
|
+
def save_figure(figure: Figure, save_to: str | Path) -> None:
|
|
117
|
+
save_to = Path(save_to)
|
|
118
|
+
|
|
119
|
+
# If a directory was given, append the default filename
|
|
120
|
+
if save_to.is_dir():
|
|
121
|
+
save_to /= f"{self.plot_title}_qubit{self.qubit}.png"
|
|
122
|
+
|
|
123
|
+
save_to.parent.mkdir(parents=True, exist_ok=True)
|
|
124
|
+
figure.savefig(save_to)
|
|
125
|
+
|
|
126
|
+
def plot_1d(s21: np.ndarray, dims: list[Dimension]) -> None:
|
|
127
|
+
"""Plot 1d"""
|
|
128
|
+
x_labels, x_values = dims[0].labels, dims[0].values
|
|
129
|
+
|
|
130
|
+
fig, ax1 = plt.subplots()
|
|
131
|
+
ax1.set_title(f"{self.plot_title} - Qubit {self.qubit}")
|
|
132
|
+
ax1.set_xlabel(x_labels[0])
|
|
133
|
+
ax1.set_ylabel(r"$|S_{21}|$")
|
|
134
|
+
ax1.plot(x_values[0], s21, ".")
|
|
135
|
+
|
|
136
|
+
if len(x_labels) > 1:
|
|
137
|
+
# Create secondary x-axis
|
|
138
|
+
ax2 = ax1.twiny()
|
|
139
|
+
|
|
140
|
+
# Set labels
|
|
141
|
+
ax2.set_xlabel(x_labels[1])
|
|
142
|
+
ax2.set_xlim(min(x_values[1]), max(x_values[1]))
|
|
143
|
+
|
|
144
|
+
# Set tick locations
|
|
145
|
+
ax2_ticks = np.linspace(min(x_values[1]), max(x_values[1]), num=6)
|
|
146
|
+
ax2.set_xticks(ax2_ticks)
|
|
147
|
+
|
|
148
|
+
# Force scientific notation
|
|
149
|
+
ax2.ticklabel_format(axis="x", style="sci", scilimits=(-3, 3))
|
|
150
|
+
|
|
151
|
+
if save_to:
|
|
152
|
+
save_figure(fig, save_to)
|
|
153
|
+
|
|
154
|
+
plt.show()
|
|
155
|
+
|
|
156
|
+
# pylint: disable=too-many-locals
|
|
157
|
+
def plot_2d(s21: np.ndarray, dims: list[Dimension]) -> None:
|
|
158
|
+
"""Plot 2d"""
|
|
159
|
+
x_labels, x_values = dims[0].labels, dims[0].values
|
|
160
|
+
y_labels, y_values = dims[1].labels, dims[1].values
|
|
161
|
+
|
|
162
|
+
# Create x and y edge arrays by extrapolating the edges
|
|
163
|
+
x_edges = np.linspace(x_values[0].min(), x_values[0].max(), len(x_values[0]) + 1)
|
|
164
|
+
y_edges = np.linspace(y_values[0].min(), y_values[0].max(), len(y_values[0]) + 1)
|
|
165
|
+
|
|
166
|
+
fig, ax1 = plt.subplots()
|
|
167
|
+
ax1.set_title(f"{self.plot_title} - Qubit {self.qubit}")
|
|
168
|
+
ax1.set_xlabel(x_labels[0])
|
|
169
|
+
ax1.set_ylabel(y_labels[0])
|
|
170
|
+
|
|
171
|
+
# Force scientific notation
|
|
172
|
+
ax1.ticklabel_format(axis="both", style="sci", scilimits=(-3, 3))
|
|
173
|
+
|
|
174
|
+
mesh = ax1.pcolormesh(x_edges, y_edges, s21.T, cmap="viridis", shading="auto")
|
|
175
|
+
fig.colorbar(mesh, ax=ax1)
|
|
176
|
+
|
|
177
|
+
if len(x_labels) > 1:
|
|
178
|
+
# Create secondary x-axis
|
|
179
|
+
ax2 = ax1.twiny()
|
|
180
|
+
|
|
181
|
+
# Set labels
|
|
182
|
+
ax2.set_xlabel(x_labels[1])
|
|
183
|
+
ax2.set_xlim(min(x_values[1]), max(x_values[1]))
|
|
184
|
+
|
|
185
|
+
# Set tick locations
|
|
186
|
+
ax2_ticks = np.linspace(min(x_values[1]), max(x_values[1]), num=6)
|
|
187
|
+
ax2.set_xticks(ax2_ticks)
|
|
188
|
+
|
|
189
|
+
# Force scientific notation
|
|
190
|
+
ax2.ticklabel_format(axis="x", style="sci", scilimits=(-3, 3))
|
|
191
|
+
if len(y_labels) > 1:
|
|
192
|
+
ax3 = ax1.twinx()
|
|
193
|
+
ax3.set_ylabel(y_labels[1])
|
|
194
|
+
ax3.set_ylim(min(y_values[1]), max(y_values[1]))
|
|
195
|
+
|
|
196
|
+
# Set tick locations
|
|
197
|
+
ax3_ticks = np.linspace(min(y_values[1]), max(y_values[1]), num=6)
|
|
198
|
+
ax3.set_xticks(ax3_ticks)
|
|
199
|
+
|
|
200
|
+
# Force scientific notation
|
|
201
|
+
ax3.ticklabel_format(axis="y", style="sci", scilimits=(-3, 3))
|
|
202
|
+
|
|
203
|
+
if save_to:
|
|
204
|
+
save_figure(fig, save_to)
|
|
205
|
+
|
|
206
|
+
plt.tight_layout()
|
|
207
|
+
plt.show()
|
|
208
|
+
|
|
209
|
+
n_dimensions = len(self.s21_modulus.shape)
|
|
210
|
+
if n_dimensions == 1:
|
|
211
|
+
plot_1d(self.s21_modulus, self.dims)
|
|
212
|
+
elif n_dimensions == 2: # noqa: PLR2004
|
|
213
|
+
plot_2d(self.s21_modulus, self.dims)
|
|
214
|
+
else:
|
|
215
|
+
raise NotImplementedError("3D and higher dimension plots are not supported yet.")
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
@yaml.register_class
|
|
219
|
+
class RabiExperimentResult(ExperimentResult):
|
|
220
|
+
"""Result container for Rabi experiments."""
|
|
221
|
+
|
|
222
|
+
plot_title: ClassVar[str] = "Rabi"
|
|
223
|
+
"""Default title for Rabi experiment plots."""
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
@yaml.register_class
|
|
227
|
+
class T1ExperimentResult(ExperimentResult):
|
|
228
|
+
"""Result container for T1 relaxation experiments."""
|
|
229
|
+
|
|
230
|
+
plot_title: ClassVar[str] = "T1"
|
|
231
|
+
"""Default title for T1 experiment plots."""
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
@yaml.register_class
|
|
235
|
+
class T2ExperimentResult(ExperimentResult):
|
|
236
|
+
"""Result container for T2 dephasing experiments."""
|
|
237
|
+
|
|
238
|
+
plot_title: ClassVar[str] = "T2"
|
|
239
|
+
"""Default title for T2 experiment plots."""
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
@yaml.register_class
|
|
243
|
+
class TwoTonesExperimentResult(ExperimentResult):
|
|
244
|
+
"""Result container for TwoTones experiments."""
|
|
245
|
+
|
|
246
|
+
plot_title: ClassVar[str] = "TwoTones"
|
|
247
|
+
"""Default title for TwoTones experiment plots."""
|
|
@@ -0,0 +1,29 @@
|
|
|
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 .sampling import Sampling
|
|
16
|
+
from .sampling_result import SamplingResult
|
|
17
|
+
from .time_evolution import TimeEvolution
|
|
18
|
+
from .time_evolution_result import TimeEvolutionResult
|
|
19
|
+
from .variational_program import VariationalProgram
|
|
20
|
+
from .variational_program_result import VariationalProgramResult
|
|
21
|
+
|
|
22
|
+
__all__ = [
|
|
23
|
+
"Sampling",
|
|
24
|
+
"SamplingResult",
|
|
25
|
+
"TimeEvolution",
|
|
26
|
+
"TimeEvolutionResult",
|
|
27
|
+
"VariationalProgram",
|
|
28
|
+
"VariationalProgramResult",
|
|
29
|
+
]
|
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
from __future__ import annotations
|
|
15
|
+
|
|
16
|
+
from abc import ABC
|
|
17
|
+
from typing import ClassVar, Generic, TypeVar
|
|
18
|
+
|
|
19
|
+
from qilisdk.core.parameterizable import Parameterizable
|
|
20
|
+
from qilisdk.functionals.functional_result import FunctionalResult
|
|
21
|
+
|
|
22
|
+
TResult_co = TypeVar("TResult_co", bound=FunctionalResult, covariant=True)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class Functional(ABC):
|
|
26
|
+
"""
|
|
27
|
+
Abstract interface for executable routines that return a :class:`FunctionalResult`.
|
|
28
|
+
|
|
29
|
+
Subclasses detail the concrete `result_type` they generate.
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
result_type: ClassVar[type[FunctionalResult]]
|
|
33
|
+
"""Concrete :class:`~qilisdk.functionals.functional_result.FunctionalResult` subclass returned."""
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class PrimitiveFunctional(Parameterizable, Functional, ABC, Generic[TResult_co]):
|
|
37
|
+
"""
|
|
38
|
+
Base class for functionals backed by a :class:`~qilisdk.core.parameterizable.Parameterizable` object.
|
|
39
|
+
"""
|
|
@@ -0,0 +1,18 @@
|
|
|
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
|
+
from qilisdk.core.result import Result
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class FunctionalResult(Result):
|
|
18
|
+
"""Base class for artifacts produced by executing a :class:`Functional`."""
|
|
@@ -0,0 +1,89 @@
|
|
|
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
|
+
from typing import ClassVar
|
|
15
|
+
|
|
16
|
+
from qilisdk.core.types import RealNumber
|
|
17
|
+
from qilisdk.core.variables import ComparisonTerm
|
|
18
|
+
from qilisdk.digital.circuit import Circuit
|
|
19
|
+
from qilisdk.functionals.functional import PrimitiveFunctional
|
|
20
|
+
from qilisdk.functionals.sampling_result import SamplingResult
|
|
21
|
+
from qilisdk.yaml import yaml
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
@yaml.register_class
|
|
25
|
+
class Sampling(PrimitiveFunctional[SamplingResult]):
|
|
26
|
+
"""
|
|
27
|
+
Execute a digital circuit and collect bitstring samples.
|
|
28
|
+
|
|
29
|
+
Example:
|
|
30
|
+
.. code-block:: python
|
|
31
|
+
|
|
32
|
+
from qilisdk.digital.circuit import Circuit
|
|
33
|
+
from qilisdk.functionals.sampling import Sampling
|
|
34
|
+
|
|
35
|
+
circuit = Circuit(nqubits=2)
|
|
36
|
+
circuit.h(0)
|
|
37
|
+
sampler = Sampling(circuit, nshots=1024)
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
result_type: ClassVar[type[SamplingResult]] = SamplingResult
|
|
41
|
+
|
|
42
|
+
def __init__(self, circuit: Circuit, nshots: int = 1000) -> None:
|
|
43
|
+
"""
|
|
44
|
+
Args:
|
|
45
|
+
circuit (Circuit): Circuit to execute for sampling.
|
|
46
|
+
nshots (int, optional): Number of repetitions used to estimate probabilities. Defaults to 1000.
|
|
47
|
+
"""
|
|
48
|
+
self.circuit = circuit
|
|
49
|
+
self.nshots = nshots
|
|
50
|
+
|
|
51
|
+
@property
|
|
52
|
+
def nparameters(self) -> int:
|
|
53
|
+
"""Return the number of parameters exposed by the underlying circuit."""
|
|
54
|
+
return self.circuit.nparameters
|
|
55
|
+
|
|
56
|
+
def set_parameters(self, parameters: dict[str, RealNumber]) -> None:
|
|
57
|
+
"""Assign a subset of circuit parameters provided by label."""
|
|
58
|
+
self.circuit.set_parameters(parameters)
|
|
59
|
+
|
|
60
|
+
def get_parameters(self) -> dict[str, RealNumber]:
|
|
61
|
+
"""Return a mapping of all circuit parameters to their current value."""
|
|
62
|
+
return self.circuit.get_parameters()
|
|
63
|
+
|
|
64
|
+
def get_parameter_names(self) -> list[str]:
|
|
65
|
+
"""Return circuit parameter labels in deterministic order."""
|
|
66
|
+
return list(self.circuit.get_parameters().keys())
|
|
67
|
+
|
|
68
|
+
def get_parameter_values(self) -> list[RealNumber]:
|
|
69
|
+
"""Return the current parameter values following ``get_parameter_names`` order."""
|
|
70
|
+
return list(self.circuit.get_parameters().values())
|
|
71
|
+
|
|
72
|
+
def set_parameter_values(self, values: list[float]) -> None:
|
|
73
|
+
"""Update all circuit parameters using the order defined by ``get_parameter_names``."""
|
|
74
|
+
self.circuit.set_parameter_values(values)
|
|
75
|
+
|
|
76
|
+
def get_parameter_bounds(self) -> dict[str, tuple[float, float]]:
|
|
77
|
+
"""Return lower and upper bounds registered for each circuit parameter."""
|
|
78
|
+
return self.circuit.get_parameter_bounds()
|
|
79
|
+
|
|
80
|
+
def set_parameter_bounds(self, ranges: dict[str, tuple[float, float]]) -> None:
|
|
81
|
+
"""Update the admissible range for selected circuit parameters."""
|
|
82
|
+
self.circuit.set_parameter_bounds(ranges)
|
|
83
|
+
|
|
84
|
+
def get_constraints(self) -> list[ComparisonTerm]:
|
|
85
|
+
"""Expose parameter constraints defined on the circuit.
|
|
86
|
+
Returns:
|
|
87
|
+
list[ComparisonTerm]: a list of constraints on the circuit parameters.
|
|
88
|
+
"""
|
|
89
|
+
return self.circuit.get_constraints()
|