stochtree 0.0.1__tar.gz
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.
- stochtree-0.0.1/CMakeLists.txt +165 -0
- stochtree-0.0.1/LICENSE +2 -0
- stochtree-0.0.1/LICENSE.md +21 -0
- stochtree-0.0.1/MANIFEST.in +69 -0
- stochtree-0.0.1/PKG-INFO +27 -0
- stochtree-0.0.1/README.md +175 -0
- stochtree-0.0.1/deps/eigen/Eigen/Cholesky +45 -0
- stochtree-0.0.1/deps/eigen/Eigen/Core +385 -0
- stochtree-0.0.1/deps/eigen/Eigen/Dense +7 -0
- stochtree-0.0.1/deps/eigen/Eigen/Eigenvalues +60 -0
- stochtree-0.0.1/deps/eigen/Eigen/Geometry +59 -0
- stochtree-0.0.1/deps/eigen/Eigen/Householder +29 -0
- stochtree-0.0.1/deps/eigen/Eigen/IterativeLinearSolvers +48 -0
- stochtree-0.0.1/deps/eigen/Eigen/Jacobi +32 -0
- stochtree-0.0.1/deps/eigen/Eigen/LU +47 -0
- stochtree-0.0.1/deps/eigen/Eigen/OrderingMethods +70 -0
- stochtree-0.0.1/deps/eigen/Eigen/QR +50 -0
- stochtree-0.0.1/deps/eigen/Eigen/SVD +50 -0
- stochtree-0.0.1/deps/eigen/Eigen/Sparse +34 -0
- stochtree-0.0.1/deps/eigen/Eigen/SparseCholesky +37 -0
- stochtree-0.0.1/deps/eigen/Eigen/SparseCore +69 -0
- stochtree-0.0.1/deps/eigen/Eigen/SparseQR +36 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Cholesky/LDLT.h +688 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Cholesky/LLT.h +558 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/ArithmeticSequence.h +413 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Array.h +417 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/ArrayBase.h +226 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/ArrayWrapper.h +209 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Assign.h +90 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/AssignEvaluator.h +1010 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Assign_MKL.h +178 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/BandMatrix.h +353 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Block.h +463 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/BooleanRedux.h +164 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CommaInitializer.h +164 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/ConditionEstimator.h +175 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CoreEvaluators.h +1741 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CoreIterators.h +132 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CwiseBinaryOp.h +183 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CwiseTernaryOp.h +197 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CwiseUnaryOp.h +103 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/CwiseUnaryView.h +132 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/DenseBase.h +701 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/DenseCoeffsBase.h +685 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/DenseStorage.h +652 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Diagonal.h +259 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/DiagonalMatrix.h +391 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/DiagonalProduct.h +28 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Dot.h +313 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/EigenBase.h +160 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/ForceAlignedAccess.h +150 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Fuzzy.h +155 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/GeneralProduct.h +465 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/GenericPacketMath.h +1040 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/GlobalFunctions.h +194 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/IO.h +258 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/IndexedView.h +247 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Inverse.h +117 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Map.h +171 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/MapBase.h +310 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/MathFunctions.h +2212 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/MathFunctionsImpl.h +200 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Matrix.h +565 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/MatrixBase.h +541 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/NestByValue.h +85 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/NoAlias.h +109 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/NumTraits.h +348 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/PartialReduxEvaluator.h +237 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/PermutationMatrix.h +605 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/PlainObjectBase.h +1128 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Product.h +191 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/ProductEvaluators.h +1179 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Random.h +218 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Redux.h +515 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Ref.h +381 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Replicate.h +142 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Reshaped.h +454 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/ReturnByValue.h +119 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Reverse.h +217 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Select.h +164 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/SelfAdjointView.h +365 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Solve.h +188 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/SolveTriangular.h +235 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/SolverBase.h +168 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/StableNorm.h +251 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/StlIterators.h +463 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Stride.h +120 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Swap.h +68 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Transpose.h +464 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Transpositions.h +386 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/TriangularMatrix.h +1001 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/VectorBlock.h +96 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/VectorwiseOp.h +784 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/Visitor.h +381 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX/Complex.h +368 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX/PacketMath.h +1588 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX512/Complex.h +384 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX512/MathFunctions.h +361 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX512/PacketMath.h +2270 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AltiVec/Complex.h +411 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AltiVec/MathFunctions.h +104 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2776 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +159 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +627 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h +2729 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/CUDA/Complex.h +269 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/Default/BFloat16.h +688 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1662 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +116 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/Default/Half.h +950 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/Default/Settings.h +49 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/GPU/PacketMath.h +1646 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/GPU/TypeCasting.h +79 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/MSA/Complex.h +645 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/NEON/Complex.h +563 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/NEON/PacketMath.h +4610 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/NEON/TypeCasting.h +1424 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SSE/Complex.h +338 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/functors/StlFunctors.h +166 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/GeneralMatrixVector.h +523 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/Parallelizer.h +180 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/BlasUtil.h +583 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/ConfigureVectorization.h +514 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/Constants.h +563 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/DisableStupidWarnings.h +138 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/IntegralConstant.h +272 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/MKL_support.h +137 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/Macros.h +1477 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/Memory.h +1202 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/Meta.h +814 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/NonMPL2.h +3 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/ReshapedHelper.h +51 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/StaticAssert.h +221 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/SymbolicIndex.h +293 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Core/util/XprHelper.h +856 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h +345 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +417 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/RealQZ.h +657 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/RealSchur.h +557 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Eigenvalues/Tridiagonalization.h +560 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/AlignedBox.h +486 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/AngleAxis.h +247 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/EulerAngles.h +114 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Homogeneous.h +501 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Hyperplane.h +282 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/OrthoMethods.h +235 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/ParametrizedLine.h +232 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Quaternion.h +870 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Rotation2D.h +199 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/RotationBase.h +206 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Scaling.h +188 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Transform.h +1566 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Translation.h +202 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/Umeyama.h +168 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Householder/BlockHouseholder.h +110 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Householder/Householder.h +176 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Householder/HouseholderSequence.h +545 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +227 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/Jacobi/Jacobi.h +483 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/LU/Determinant.h +117 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/LU/FullPivLU.h +877 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/LU/InverseImpl.h +432 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/LU/PartialPivLU.h +624 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/LU/arch/InverseSize4.h +363 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/OrderingMethods/Amd.h +435 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/OrderingMethods/Ordering.h +153 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/QR/HouseholderQR.h +434 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SVD/BDCSVD.h +1377 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SVD/JacobiSVD.h +813 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SVD/SVDBase.h +376 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SVD/UpperBidiagonalization.h +415 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/AmbiVector.h +378 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/CompressedStorage.h +274 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseAssign.h +270 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseBlock.h +566 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseColEtree.h +206 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseDot.h +98 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseMap.h +306 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseMatrix.h +1520 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseMatrixBase.h +399 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparsePermutation.h +178 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseProduct.h +181 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseRedux.h +49 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseRef.h +397 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseTranspose.h +92 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseUtil.h +186 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseVector.h +480 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/SparseView.h +254 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseCore/TriangularSolver.h +315 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/SparseQR/SparseQR.h +758 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/misc/Image.h +82 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/misc/Kernel.h +79 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/misc/RealSvd2x2.h +55 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/misc/blas.h +440 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/misc/lapack.h +152 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/misc/lapacke.h +16292 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/misc/lapacke_mangling.h +17 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h +434 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/BlockMethods.h +1442 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/IndexedViewMethods.h +262 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h +184 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
- stochtree-0.0.1/deps/eigen/Eigen/src/plugins/ReshapedMethods.h +149 -0
- stochtree-0.0.1/deps/fast_double_parser/include/fast_double_parser.h +1270 -0
- stochtree-0.0.1/deps/fmt/include/fmt/args.h +228 -0
- stochtree-0.0.1/deps/fmt/include/fmt/base.h +3050 -0
- stochtree-0.0.1/deps/fmt/include/fmt/chrono.h +2432 -0
- stochtree-0.0.1/deps/fmt/include/fmt/color.h +612 -0
- stochtree-0.0.1/deps/fmt/include/fmt/compile.h +529 -0
- stochtree-0.0.1/deps/fmt/include/fmt/core.h +5 -0
- stochtree-0.0.1/deps/fmt/include/fmt/format-inl.h +1897 -0
- stochtree-0.0.1/deps/fmt/include/fmt/format.h +4413 -0
- stochtree-0.0.1/deps/fmt/include/fmt/os.h +439 -0
- stochtree-0.0.1/deps/fmt/include/fmt/ostream.h +211 -0
- stochtree-0.0.1/deps/fmt/include/fmt/printf.h +656 -0
- stochtree-0.0.1/deps/fmt/include/fmt/ranges.h +879 -0
- stochtree-0.0.1/deps/fmt/include/fmt/std.h +647 -0
- stochtree-0.0.1/deps/fmt/include/fmt/xchar.h +322 -0
- stochtree-0.0.1/deps/pybind11/CMakeLists.txt +373 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/attr.h +690 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/buffer_info.h +208 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/cast.h +1837 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/chrono.h +225 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/common.h +2 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/complex.h +74 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/detail/class.h +748 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/detail/common.h +1267 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/detail/descr.h +171 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/detail/init.h +434 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/detail/internals.h +667 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/detail/type_caster_base.h +1218 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/detail/typeid.h +65 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/eigen/common.h +9 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/eigen/matrix.h +714 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/eigen/tensor.h +517 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/eigen.h +12 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/embed.h +316 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/eval.h +156 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/functional.h +138 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/gil.h +247 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/gil_safe_call_once.h +91 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/iostream.h +265 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/numpy.h +2133 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/operators.h +202 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/options.h +92 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/pybind11.h +2963 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/pytypes.h +2574 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/stl/filesystem.h +116 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/stl.h +448 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/stl_bind.h +823 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/type_caster_pyobject_ptr.h +61 -0
- stochtree-0.0.1/deps/pybind11/include/pybind11/typing.h +125 -0
- stochtree-0.0.1/deps/pybind11/pyproject.toml +95 -0
- stochtree-0.0.1/deps/pybind11/setup.cfg +43 -0
- stochtree-0.0.1/deps/pybind11/setup.py +150 -0
- stochtree-0.0.1/deps/pybind11/tools/FindCatch.cmake +76 -0
- stochtree-0.0.1/deps/pybind11/tools/FindEigen3.cmake +86 -0
- stochtree-0.0.1/deps/pybind11/tools/FindPythonLibsNew.cmake +310 -0
- stochtree-0.0.1/deps/pybind11/tools/JoinPaths.cmake +23 -0
- stochtree-0.0.1/deps/pybind11/tools/check-style.sh +44 -0
- stochtree-0.0.1/deps/pybind11/tools/cmake_uninstall.cmake.in +23 -0
- stochtree-0.0.1/deps/pybind11/tools/codespell_ignore_lines_from_errors.py +39 -0
- stochtree-0.0.1/deps/pybind11/tools/libsize.py +36 -0
- stochtree-0.0.1/deps/pybind11/tools/make_changelog.py +90 -0
- stochtree-0.0.1/deps/pybind11/tools/pybind11.pc.in +7 -0
- stochtree-0.0.1/deps/pybind11/tools/pybind11Common.cmake +419 -0
- stochtree-0.0.1/deps/pybind11/tools/pybind11Config.cmake.in +233 -0
- stochtree-0.0.1/deps/pybind11/tools/pybind11NewTools.cmake +311 -0
- stochtree-0.0.1/deps/pybind11/tools/pybind11Tools.cmake +239 -0
- stochtree-0.0.1/deps/pybind11/tools/pyproject.toml +3 -0
- stochtree-0.0.1/deps/pybind11/tools/setup_global.py.in +63 -0
- stochtree-0.0.1/deps/pybind11/tools/setup_main.py.in +44 -0
- stochtree-0.0.1/include/nlohmann/json.hpp +24766 -0
- stochtree-0.0.1/include/stochtree/category_tracker.h +181 -0
- stochtree-0.0.1/include/stochtree/common.h +1189 -0
- stochtree-0.0.1/include/stochtree/container.h +88 -0
- stochtree-0.0.1/include/stochtree/cutpoint_candidates.h +211 -0
- stochtree-0.0.1/include/stochtree/data.h +142 -0
- stochtree-0.0.1/include/stochtree/ensemble.h +356 -0
- stochtree-0.0.1/include/stochtree/export.h +31 -0
- stochtree-0.0.1/include/stochtree/ig_sampler.h +30 -0
- stochtree-0.0.1/include/stochtree/io.h +750 -0
- stochtree-0.0.1/include/stochtree/kernel.h +255 -0
- stochtree-0.0.1/include/stochtree/leaf_model.h +225 -0
- stochtree-0.0.1/include/stochtree/log.h +184 -0
- stochtree-0.0.1/include/stochtree/meta.h +151 -0
- stochtree-0.0.1/include/stochtree/normal_sampler.h +80 -0
- stochtree-0.0.1/include/stochtree/partition_tracker.h +649 -0
- stochtree-0.0.1/include/stochtree/prior.h +81 -0
- stochtree-0.0.1/include/stochtree/random.h +117 -0
- stochtree-0.0.1/include/stochtree/random_effects.h +297 -0
- stochtree-0.0.1/include/stochtree/tree.h +854 -0
- stochtree-0.0.1/include/stochtree/tree_sampler.h +693 -0
- stochtree-0.0.1/include/stochtree/variance_model.h +74 -0
- stochtree-0.0.1/pyproject.toml +12 -0
- stochtree-0.0.1/setup.cfg +4 -0
- stochtree-0.0.1/setup.py +189 -0
- stochtree-0.0.1/src/container.cpp +139 -0
- stochtree-0.0.1/src/cpp11.cpp +888 -0
- stochtree-0.0.1/src/cutpoint_candidates.cpp +323 -0
- stochtree-0.0.1/src/data.cpp +76 -0
- stochtree-0.0.1/src/forest.cpp +162 -0
- stochtree-0.0.1/src/io.cpp +315 -0
- stochtree-0.0.1/src/kernel.cpp +153 -0
- stochtree-0.0.1/src/leaf_model.cpp +710 -0
- stochtree-0.0.1/src/partition_tracker.cpp +387 -0
- stochtree-0.0.1/src/py_stochtree.cpp +762 -0
- stochtree-0.0.1/src/random_effects.cpp +297 -0
- stochtree-0.0.1/src/sampler.cpp +197 -0
- stochtree-0.0.1/src/serialization.cpp +319 -0
- stochtree-0.0.1/src/stochtree_types.h +14 -0
- stochtree-0.0.1/src/tree.cpp +657 -0
- stochtree-0.0.1/stochtree/__init__.py +12 -0
- stochtree-0.0.1/stochtree/bart.py +353 -0
- stochtree-0.0.1/stochtree/bcf.py +960 -0
- stochtree-0.0.1/stochtree/data.py +50 -0
- stochtree-0.0.1/stochtree/forest.py +44 -0
- stochtree-0.0.1/stochtree/preprocessing.py +275 -0
- stochtree-0.0.1/stochtree/sampler.py +55 -0
- stochtree-0.0.1/stochtree/serialization.py +183 -0
- stochtree-0.0.1/stochtree/utils.py +9 -0
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
# Build options
|
|
2
|
+
option(USE_DEBUG "Set to ON for Debug mode" OFF)
|
|
3
|
+
option(USE_SANITIZER "Use santizer flags" ON)
|
|
4
|
+
option(BUILD_TEST "Build C++ tests with Google Test" ON)
|
|
5
|
+
option(BUILD_DEBUG_TARGETS "Build Standalone C++ Programs for Debugging" ON)
|
|
6
|
+
option(BUILD_PYTHON "Build Shared Library for Python Package" OFF)
|
|
7
|
+
|
|
8
|
+
# Require at least C++17
|
|
9
|
+
set(CMAKE_CXX_STANDARD 17)
|
|
10
|
+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
11
|
+
|
|
12
|
+
# Default to CMake 3.16
|
|
13
|
+
cmake_minimum_required(VERSION 3.16)
|
|
14
|
+
|
|
15
|
+
# Define the project
|
|
16
|
+
project(stochtree LANGUAGES C CXX)
|
|
17
|
+
|
|
18
|
+
# Sanitizer support
|
|
19
|
+
set(
|
|
20
|
+
ENABLED_SANITIZERS
|
|
21
|
+
"address" "undefined"
|
|
22
|
+
CACHE
|
|
23
|
+
STRING
|
|
24
|
+
"Semicolon separated list of sanitizer names, e.g., 'address;leak'. \
|
|
25
|
+
Supported sanitizers are address, leak, undefined and thread."
|
|
26
|
+
)
|
|
27
|
+
if(USE_SANITIZER)
|
|
28
|
+
include(cmake/Sanitizer.cmake)
|
|
29
|
+
enable_sanitizers("${ENABLED_SANITIZERS}")
|
|
30
|
+
endif()
|
|
31
|
+
|
|
32
|
+
# Debug flags
|
|
33
|
+
if(USE_DEBUG)
|
|
34
|
+
add_definitions(-DDEBUG)
|
|
35
|
+
endif()
|
|
36
|
+
|
|
37
|
+
if(UNIX OR MINGW OR CYGWIN)
|
|
38
|
+
set(
|
|
39
|
+
CMAKE_CXX_FLAGS
|
|
40
|
+
"${CMAKE_CXX_FLAGS} -pthread -w"
|
|
41
|
+
)
|
|
42
|
+
if(USE_DEBUG)
|
|
43
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0")
|
|
44
|
+
else()
|
|
45
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3")
|
|
46
|
+
endif()
|
|
47
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-pragmas -Wno-unused-private-field")
|
|
48
|
+
endif()
|
|
49
|
+
|
|
50
|
+
if(MSVC)
|
|
51
|
+
set(
|
|
52
|
+
variables
|
|
53
|
+
CMAKE_C_FLAGS_DEBUG
|
|
54
|
+
CMAKE_C_FLAGS_MINSIZEREL
|
|
55
|
+
CMAKE_C_FLAGS_RELEASE
|
|
56
|
+
CMAKE_C_FLAGS_RELWITHDEBINFO
|
|
57
|
+
CMAKE_CXX_FLAGS_DEBUG
|
|
58
|
+
CMAKE_CXX_FLAGS_MINSIZEREL
|
|
59
|
+
CMAKE_CXX_FLAGS_RELEASE
|
|
60
|
+
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
|
61
|
+
)
|
|
62
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4 /MP /utf-8")
|
|
63
|
+
if(USE_DEBUG)
|
|
64
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Od")
|
|
65
|
+
else()
|
|
66
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /O2 /Ob2 /Oi /Ot /Oy")
|
|
67
|
+
endif()
|
|
68
|
+
else()
|
|
69
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
|
|
70
|
+
if(NOT USE_DEBUG)
|
|
71
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -funroll-loops")
|
|
72
|
+
endif()
|
|
73
|
+
endif()
|
|
74
|
+
|
|
75
|
+
# Header file directory
|
|
76
|
+
set(StochTree_HEADER_DIR ${PROJECT_SOURCE_DIR}/include)
|
|
77
|
+
|
|
78
|
+
# boost.math header file directory
|
|
79
|
+
set(BOOSTMATH_HEADER_DIR ${PROJECT_SOURCE_DIR}/deps/boost_math/include)
|
|
80
|
+
|
|
81
|
+
# Eigen header file directory
|
|
82
|
+
set(EIGEN_HEADER_DIR ${PROJECT_SOURCE_DIR}/deps/eigen)
|
|
83
|
+
|
|
84
|
+
# fast_double_parser header file directory
|
|
85
|
+
set(FAST_DOUBLE_PARSER_HEADER_DIR ${PROJECT_SOURCE_DIR}/deps/fast_double_parser/include)
|
|
86
|
+
|
|
87
|
+
# fmt header file directory
|
|
88
|
+
set(FMT_HEADER_DIR ${PROJECT_SOURCE_DIR}/deps/fmt/include)
|
|
89
|
+
|
|
90
|
+
# Library directory
|
|
91
|
+
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/build)
|
|
92
|
+
|
|
93
|
+
# Aggregate the source files underpinning the implementation in the C++ library
|
|
94
|
+
file(
|
|
95
|
+
GLOB
|
|
96
|
+
SOURCES
|
|
97
|
+
src/container.cpp
|
|
98
|
+
src/cutpoint_candidates.cpp
|
|
99
|
+
src/data.cpp
|
|
100
|
+
src/io.cpp
|
|
101
|
+
src/json11.cpp
|
|
102
|
+
src/leaf_model.cpp
|
|
103
|
+
src/partition_tracker.cpp
|
|
104
|
+
src/random_effects.cpp
|
|
105
|
+
src/tree.cpp
|
|
106
|
+
)
|
|
107
|
+
|
|
108
|
+
# Define the C++ source code as a target
|
|
109
|
+
add_library(stochtree_objs OBJECT ${SOURCES})
|
|
110
|
+
|
|
111
|
+
# Include the headers in the source library
|
|
112
|
+
target_include_directories(stochtree_objs PRIVATE ${StochTree_HEADER_DIR} ${BOOSTMATH_HEADER_DIR} ${EIGEN_HEADER_DIR} ${FAST_DOUBLE_PARSER_HEADER_DIR} ${FMT_HEADER_DIR})
|
|
113
|
+
|
|
114
|
+
if(APPLE)
|
|
115
|
+
set(CMAKE_SHARED_LIBRARY_SUFFIX ".so")
|
|
116
|
+
endif()
|
|
117
|
+
|
|
118
|
+
# Python shared library
|
|
119
|
+
if (BUILD_PYTHON)
|
|
120
|
+
# Add pybind11 module
|
|
121
|
+
add_subdirectory(deps/pybind11)
|
|
122
|
+
pybind11_add_module(stochtree_cpp src/py_stochtree.cpp)
|
|
123
|
+
|
|
124
|
+
# Link to C++ source and headers
|
|
125
|
+
target_include_directories(stochtree_cpp PRIVATE ${StochTree_HEADER_DIR} ${BOOSTMATH_HEADER_DIR} ${EIGEN_HEADER_DIR} ${FAST_DOUBLE_PARSER_HEADER_DIR} ${FMT_HEADER_DIR})
|
|
126
|
+
target_link_libraries(stochtree_cpp PRIVATE stochtree_objs)
|
|
127
|
+
|
|
128
|
+
# EXAMPLE_VERSION_INFO is defined by setup.py and passed into the C++ code as a
|
|
129
|
+
# define (VERSION_INFO) here.
|
|
130
|
+
target_compile_definitions(stochtree_cpp PRIVATE VERSION_INFO=${EXAMPLE_VERSION_INFO})
|
|
131
|
+
endif()
|
|
132
|
+
|
|
133
|
+
# Build C++ test program
|
|
134
|
+
if(BUILD_TEST)
|
|
135
|
+
# Download the GoogleTest dependency if necessary
|
|
136
|
+
include(FetchContent)
|
|
137
|
+
FetchContent_Declare(
|
|
138
|
+
googletest
|
|
139
|
+
GIT_REPOSITORY https://github.com/google/googletest.git
|
|
140
|
+
GIT_TAG e2239ee6043f73722e7aa812a459f54a28552929 # release-1.14.0
|
|
141
|
+
)
|
|
142
|
+
# For Windows: Prevent overriding the parent project's compiler/linker settings
|
|
143
|
+
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
|
144
|
+
FetchContent_MakeAvailable(googletest)
|
|
145
|
+
|
|
146
|
+
# Build test suite
|
|
147
|
+
enable_testing()
|
|
148
|
+
include(GoogleTest)
|
|
149
|
+
file(GLOB CPP_TEST_SOURCES test/cpp/*.cpp)
|
|
150
|
+
add_executable(teststochtree ${CPP_TEST_SOURCES})
|
|
151
|
+
set(STOCHTREE_TEST_HEADER_DIR ${PROJECT_SOURCE_DIR}/test/cpp)
|
|
152
|
+
target_include_directories(teststochtree PRIVATE ${StochTree_HEADER_DIR} ${BOOSTMATH_HEADER_DIR} ${EIGEN_HEADER_DIR} ${STOCHTREE_TEST_HEADER_DIR} ${FAST_DOUBLE_PARSER_HEADER_DIR} ${FMT_HEADER_DIR})
|
|
153
|
+
target_link_libraries(teststochtree PRIVATE stochtree_objs GTest::gtest_main)
|
|
154
|
+
gtest_discover_tests(teststochtree)
|
|
155
|
+
endif()
|
|
156
|
+
|
|
157
|
+
# Standalone C++ Program for Debugging
|
|
158
|
+
if(BUILD_DEBUG_TARGETS)
|
|
159
|
+
# Build test suite
|
|
160
|
+
add_executable(debugstochtree debug/api_debug.cpp)
|
|
161
|
+
set(StochTree_DEBUG_HEADER_DIR ${PROJECT_SOURCE_DIR}/debug)
|
|
162
|
+
target_include_directories(debugstochtree PRIVATE ${StochTree_HEADER_DIR} ${BOOSTMATH_HEADER_DIR} ${EIGEN_HEADER_DIR} ${StochTree_DEBUG_HEADER_DIR} ${FAST_DOUBLE_PARSER_HEADER_DIR} ${FMT_HEADER_DIR})
|
|
163
|
+
target_link_libraries(debugstochtree PRIVATE stochtree_objs)
|
|
164
|
+
endif()
|
|
165
|
+
|
stochtree-0.0.1/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 stochtree authors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Include cmake build instructions
|
|
2
|
+
include CMakeLists.txt
|
|
3
|
+
|
|
4
|
+
# Vendor package header files
|
|
5
|
+
recursive-include include *.h
|
|
6
|
+
recursive-include include *.hpp
|
|
7
|
+
|
|
8
|
+
# Vendor package source files (excluding R-specific)
|
|
9
|
+
recursive-include src *.cpp
|
|
10
|
+
recursive-include src *.h
|
|
11
|
+
exclude src/R_data.cpp src/R_random_effects.cpp
|
|
12
|
+
|
|
13
|
+
# Remove the CRAN extensionless LICENSE file
|
|
14
|
+
exclude LICENSE
|
|
15
|
+
|
|
16
|
+
# Remove egg info
|
|
17
|
+
prune stochtree.egg-info
|
|
18
|
+
|
|
19
|
+
# Vendor pybind11 dependencies in PyPI source distribution
|
|
20
|
+
recursive-include deps/pybind11/include/pybind11 *.h
|
|
21
|
+
recursive-include deps/pybind11/tools *
|
|
22
|
+
include deps/pybind11/CMakeLists.txt
|
|
23
|
+
include deps/pybind11/pyproject.toml
|
|
24
|
+
include deps/pybind11/setup.cfg
|
|
25
|
+
include deps/pybind11/setup.py
|
|
26
|
+
|
|
27
|
+
# Vendor fmt header files in PyPI source distribution
|
|
28
|
+
recursive-include deps/fmt/include/fmt *.h
|
|
29
|
+
|
|
30
|
+
# Vendor fast_double_parser header file in PyPI source distribution
|
|
31
|
+
include deps/fast_double_parser/include/fast_double_parser.h
|
|
32
|
+
|
|
33
|
+
# Vendor Eigen header files in PyPI source distribution
|
|
34
|
+
include deps/eigen/Eigen/Cholesky
|
|
35
|
+
include deps/eigen/Eigen/Core
|
|
36
|
+
include deps/eigen/Eigen/Dense
|
|
37
|
+
include deps/eigen/Eigen/Eigenvalues
|
|
38
|
+
include deps/eigen/Eigen/Geometry
|
|
39
|
+
include deps/eigen/Eigen/Householder
|
|
40
|
+
include deps/eigen/Eigen/IterativeLinearSolvers
|
|
41
|
+
include deps/eigen/Eigen/Jacobi
|
|
42
|
+
include deps/eigen/Eigen/LU
|
|
43
|
+
include deps/eigen/Eigen/OrderingMethods
|
|
44
|
+
include deps/eigen/Eigen/QR
|
|
45
|
+
include deps/eigen/Eigen/SVD
|
|
46
|
+
include deps/eigen/Eigen/Sparse
|
|
47
|
+
include deps/eigen/Eigen/SparseCholesky
|
|
48
|
+
include deps/eigen/Eigen/SparseCore
|
|
49
|
+
include deps/eigen/Eigen/SparseQR
|
|
50
|
+
include deps/eigen/Eigen/misc
|
|
51
|
+
include deps/eigen/Eigen/plugins
|
|
52
|
+
recursive-include deps/eigen/Eigen/src/Cholesky *.h
|
|
53
|
+
recursive-include deps/eigen/Eigen/src/Core *.h
|
|
54
|
+
recursive-include deps/eigen/Eigen/src/Dense *.h
|
|
55
|
+
recursive-include deps/eigen/Eigen/src/Eigenvalues *.h
|
|
56
|
+
recursive-include deps/eigen/Eigen/src/Geometry *.h
|
|
57
|
+
recursive-include deps/eigen/Eigen/src/Householder *.h
|
|
58
|
+
recursive-include deps/eigen/Eigen/src/IterativeLinearSolvers *.h
|
|
59
|
+
recursive-include deps/eigen/Eigen/src/Jacobi *.h
|
|
60
|
+
recursive-include deps/eigen/Eigen/src/LU *.h
|
|
61
|
+
recursive-include deps/eigen/Eigen/src/OrderingMethods *.h
|
|
62
|
+
recursive-include deps/eigen/Eigen/src/QR *.h
|
|
63
|
+
recursive-include deps/eigen/Eigen/src/SVD *.h
|
|
64
|
+
recursive-include deps/eigen/Eigen/src/Sparse *.h
|
|
65
|
+
recursive-include deps/eigen/Eigen/src/SparseCholesky *.h
|
|
66
|
+
recursive-include deps/eigen/Eigen/src/SparseCore *.h
|
|
67
|
+
recursive-include deps/eigen/Eigen/src/SparseQR *.h
|
|
68
|
+
recursive-include deps/eigen/Eigen/src/misc *.h
|
|
69
|
+
recursive-include deps/eigen/Eigen/src/plugins *.h
|
stochtree-0.0.1/PKG-INFO
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: stochtree
|
|
3
|
+
Version: 0.0.1
|
|
4
|
+
Summary: Stochastic Tree Ensembles for Machine Learning and Causal Inference
|
|
5
|
+
Home-page: https://github.com/StochasticTree/stochtree
|
|
6
|
+
Author: Drew Herren
|
|
7
|
+
Author-email: drewherrenopensource@gmail.com
|
|
8
|
+
License: MIT
|
|
9
|
+
Classifier: Development Status :: 2 - Pre-Alpha
|
|
10
|
+
Classifier: Intended Audience :: Science/Research
|
|
11
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
12
|
+
Classifier: Operating System :: MacOS
|
|
13
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
14
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
21
|
+
Requires-Python: >=3.8
|
|
22
|
+
License-File: LICENSE
|
|
23
|
+
License-File: LICENSE.md
|
|
24
|
+
Provides-Extra: test
|
|
25
|
+
Requires-Dist: pytest>=6.0; extra == "test"
|
|
26
|
+
|
|
27
|
+
Stochastic Tree Ensembles for Machine Learning and Causal Inference
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
# StochasticTree
|
|
2
|
+
|
|
3
|
+
[](https://github.com/StochasticTree/stochtree/actions/workflows/cpp-test.yml)
|
|
4
|
+
[](https://github.com/StochasticTree/stochtree/actions/workflows/python-test.yml)
|
|
5
|
+
[](https://github.com/StochasticTree/stochtree/actions/workflows/r-test.yml)
|
|
6
|
+
|
|
7
|
+
Software for building stochastic tree ensembles (i.e. BART, XBART) for supervised learning and causal inference.
|
|
8
|
+
|
|
9
|
+
# Getting Started
|
|
10
|
+
|
|
11
|
+
`StochasticTree` is composed of a C++ "core" and R / Python interfaces to that core.
|
|
12
|
+
Details on installation and use are available below:
|
|
13
|
+
|
|
14
|
+
* [Python](#python-package)
|
|
15
|
+
* [R](#r-package)
|
|
16
|
+
* [C++ core](#c-core)
|
|
17
|
+
|
|
18
|
+
# Python Package
|
|
19
|
+
|
|
20
|
+
The python package is not yet on PyPI but can be installed from source using pip's [git interface](https://pip.pypa.io/en/stable/topics/vcs-support/).
|
|
21
|
+
To proceed, you will need a working version of [git](https://git-scm.com) and python 3.8 or greater (available from several sources, one of the most
|
|
22
|
+
straightforward being the [anaconda](https://docs.conda.io/projects/conda/en/stable/user-guide/install/index.html) suite).
|
|
23
|
+
|
|
24
|
+
## Quick start
|
|
25
|
+
|
|
26
|
+
Without worrying about virtual environments (detailed further below), `stochtree` can be installed from the command line
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
pip install numpy scipy pytest pandas scikit-learn pybind11
|
|
30
|
+
pip install git+https://github.com/StochasticTree/stochtree.git
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Virtual environment installation
|
|
34
|
+
|
|
35
|
+
Often, users prefer to manage different projects (with different package / python version requirements) in virtual environments.
|
|
36
|
+
|
|
37
|
+
### Conda
|
|
38
|
+
|
|
39
|
+
Conda provides a straightforward experience in managing python dependencies, avoiding version conflicts / ABI issues / etc.
|
|
40
|
+
|
|
41
|
+
To build stochtree using a `conda` based workflow, first create and activate a conda environment with the requisite dependencies
|
|
42
|
+
|
|
43
|
+
```{bash}
|
|
44
|
+
conda create -n stochtree-dev -c conda-forge python=3.10 numpy scipy pytest pandas pybind11 scikit-learn matplotlib seaborn
|
|
45
|
+
conda activate stochtree-dev
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Then install the package from github via pip
|
|
49
|
+
|
|
50
|
+
```{bash}
|
|
51
|
+
pip install git+https://github.com/StochasticTree/stochtree.git
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
(*Note*: if you'd also like to run `stochtree`'s notebook examples, you will also need jupyterlab, seaborn, and matplotlib)
|
|
55
|
+
|
|
56
|
+
```{bash}
|
|
57
|
+
conda install matplotlib seaborn
|
|
58
|
+
pip install jupyterlab
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
With these dependencies installed, you can [clone the repo](###cloning-the-repository) and run the `demo/` examples.
|
|
62
|
+
|
|
63
|
+
### Venv
|
|
64
|
+
|
|
65
|
+
You could also use venv for environment management. First, navigate to the folder in which you usually store virtual environments
|
|
66
|
+
(i.e. `cd /path/to/envs`) and create and activate a virtual environment:
|
|
67
|
+
|
|
68
|
+
```{bash}
|
|
69
|
+
python -m venv venv
|
|
70
|
+
source venv/bin/activate
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Install all of the package (and demo notebook) dependencies
|
|
74
|
+
|
|
75
|
+
```{bash}
|
|
76
|
+
pip install numpy scipy pytest pandas scikit-learn pybind11
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Then install stochtree via
|
|
80
|
+
|
|
81
|
+
```{bash}
|
|
82
|
+
pip install git+https://github.com/StochasticTree/stochtree.git
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
As above, if you'd like to run the notebook examples in the `demo/` subfolder, you will also need jupyterlab, seaborn, and matplotlib and you will have to [clone the repo](###cloning-the-repository)
|
|
86
|
+
|
|
87
|
+
```{bash}
|
|
88
|
+
pip install matplotlib seaborn jupyterlab
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
# R Package
|
|
92
|
+
|
|
93
|
+
The package can be installed in R via
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
remotes::install_github("StochasticTree/stochtree", ref="r-dev")
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
# C++ Core
|
|
100
|
+
|
|
101
|
+
While the C++ core links to both R and Python for a performant, high-level interface,
|
|
102
|
+
the C++ code can be compiled and unit-tested and compiled into a standalone
|
|
103
|
+
[debug program](https://github.com/StochasticTree/stochtree/tree/main/debug).
|
|
104
|
+
|
|
105
|
+
## Compilation
|
|
106
|
+
|
|
107
|
+
### Cloning the Repository
|
|
108
|
+
|
|
109
|
+
To clone the repository, you must have git installed, which you can do following [these instructions](https://learn.microsoft.com/en-us/devops/develop/git/install-and-set-up-git).
|
|
110
|
+
|
|
111
|
+
Once git is available at the command line, navigate to the folder that will store this project (in bash / zsh, this is done by running `cd` followed by the path to the directory).
|
|
112
|
+
Then, clone the `stochtree` repo as a subfolder by running
|
|
113
|
+
```{bash}
|
|
114
|
+
git clone --recursive https://github.com/StochasticTree/stochtree.git
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
*NOTE*: this project incorporates several dependencies as [git submodules](https://git-scm.com/book/en/v2/Git-Tools-Submodules),
|
|
118
|
+
which is why the `--recursive` flag is necessary (some systems may perform a recursive clone without this flag, but
|
|
119
|
+
`--recursive` ensures this behavior on all platforms). If you have already cloned the repo without the `--recursive` flag,
|
|
120
|
+
you can retrieve the submodules recursively by running `git submodule update --init --recursive` in the main repo directory.
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
### CMake Build
|
|
124
|
+
|
|
125
|
+
The C++ project can be built independently from the R / Python packages using `cmake`.
|
|
126
|
+
See [here](https://cmake.org/install/) for details on installing cmake (alternatively,
|
|
127
|
+
on MacOS, `cmake` can be installed using [homebrew](https://formulae.brew.sh/formula/cmake)).
|
|
128
|
+
Once `cmake` is installed, you can build the CLI by navigating to the main
|
|
129
|
+
project directory at your command line (i.e. `cd /path/to/stochtree`) and
|
|
130
|
+
running the following code
|
|
131
|
+
|
|
132
|
+
```{bash}
|
|
133
|
+
rm -rf build
|
|
134
|
+
mkdir build
|
|
135
|
+
cmake -S . -B build
|
|
136
|
+
cmake --build build
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
The CMake build has two primary targets, which are detailed below
|
|
140
|
+
|
|
141
|
+
#### Debug Program
|
|
142
|
+
|
|
143
|
+
`debug/api_debug.cpp` defines a standalone target that can be straightforwardly run with a debugger (i.e. `lldb`, `gdb`)
|
|
144
|
+
while making non-trivial changes to the C++ code.
|
|
145
|
+
This debugging program is compiled as part of the CMake build if the `BUILD_DEBUG_TARGETS` option in `CMakeLists.txt` is set to `ON`.
|
|
146
|
+
|
|
147
|
+
Once the program has been built, it can be run from the command line via `./build/debugstochtree` or attached to a debugger
|
|
148
|
+
via `lldb ./build/debugstochtree` (clang) or `gdb ./build/debugstochtree` (gcc).
|
|
149
|
+
|
|
150
|
+
#### Unit Tests
|
|
151
|
+
|
|
152
|
+
We test `stochtree` using the [GoogleTest](https://google.github.io/googletest/) framework.
|
|
153
|
+
Unit tests are compiled into a single target as part of the CMake build if the `BUILD_TEST` option is set to `ON`
|
|
154
|
+
and the test suite can be run after compilation via `./build/teststochtree`
|
|
155
|
+
|
|
156
|
+
## Xcode
|
|
157
|
+
|
|
158
|
+
While using `gdb` or `lldb` on `debugstochtree` at the command line is very helpful, users may prefer debugging in a full-fledged IDE like xcode. This project's C++ core can be converted to an xcode project from `CMakeLists.txt`, but first you must turn off sanitizers (xcode seems to have its own way of setting this at build time for different configurations, and having injected
|
|
159
|
+
`-fsanitize=address` statically into compiler arguments will cause xcode errors). To do this, modify the `USE_SANITIZER` line in `CMakeLists.txt`:
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
option(USE_SANITIZER "Use santizer flags" OFF)
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
To generate an XCode project based on the build targets and specifications defined in a `CMakeLists.txt`, navigate to the main project folder (i.e. `cd /path/to/project`) and run the following commands:
|
|
166
|
+
|
|
167
|
+
```{bash}
|
|
168
|
+
rm -rf xcode/
|
|
169
|
+
mkdir xcode
|
|
170
|
+
cd xcode
|
|
171
|
+
cmake -G Xcode .. -DCMAKE_C_COMPILER=cc -DCMAKE_CXX_COMPILER=c++
|
|
172
|
+
cd ..
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
Now, if you navigate to the xcode subfolder (in Finder), you should be able to click on a `.xcodeproj` file and the project will open in XCode.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
// This file is part of Eigen, a lightweight C++ template library
|
|
2
|
+
// for linear algebra.
|
|
3
|
+
//
|
|
4
|
+
// This Source Code Form is subject to the terms of the Mozilla
|
|
5
|
+
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
6
|
+
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
7
|
+
|
|
8
|
+
#ifndef EIGEN_CHOLESKY_MODULE_H
|
|
9
|
+
#define EIGEN_CHOLESKY_MODULE_H
|
|
10
|
+
|
|
11
|
+
#include "Core"
|
|
12
|
+
#include "Jacobi"
|
|
13
|
+
|
|
14
|
+
#include "src/Core/util/DisableStupidWarnings.h"
|
|
15
|
+
|
|
16
|
+
/** \defgroup Cholesky_Module Cholesky module
|
|
17
|
+
*
|
|
18
|
+
*
|
|
19
|
+
*
|
|
20
|
+
* This module provides two variants of the Cholesky decomposition for selfadjoint (hermitian) matrices.
|
|
21
|
+
* Those decompositions are also accessible via the following methods:
|
|
22
|
+
* - MatrixBase::llt()
|
|
23
|
+
* - MatrixBase::ldlt()
|
|
24
|
+
* - SelfAdjointView::llt()
|
|
25
|
+
* - SelfAdjointView::ldlt()
|
|
26
|
+
*
|
|
27
|
+
* \code
|
|
28
|
+
* #include <Eigen/Cholesky>
|
|
29
|
+
* \endcode
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
#include "src/Cholesky/LLT.h"
|
|
33
|
+
#include "src/Cholesky/LDLT.h"
|
|
34
|
+
#ifdef EIGEN_USE_LAPACKE
|
|
35
|
+
#ifdef EIGEN_USE_MKL
|
|
36
|
+
#include "mkl_lapacke.h"
|
|
37
|
+
#else
|
|
38
|
+
#include "src/misc/lapacke.h"
|
|
39
|
+
#endif
|
|
40
|
+
#include "src/Cholesky/LLT_LAPACKE.h"
|
|
41
|
+
#endif
|
|
42
|
+
|
|
43
|
+
#include "src/Core/util/ReenableStupidWarnings.h"
|
|
44
|
+
|
|
45
|
+
#endif // EIGEN_CHOLESKY_MODULE_H
|