name: eigen version: 2.1.7 homepage: https://github.com/osidorkin/haskell-eigen synopsis: Eigen C++ library (linear algebra: matrices, sparse matrices, vectors, numerical solvers). description: This module provides Haskell binding for . . Eigen is versatile. . * It supports all matrix sizes, from small fixed-size matrices to arbitrarily large dense matrices, and even sparse matrices. . * It supports all standard numeric types, including std::complex, integers, and is easily extensible to custom numeric types. . * It supports various and . . * Its ecosystem of provides many specialized features such as non-linear optimization, matrix functions, a polynomial solver, FFT, and much more. . Eigen is fast. . * Expression templates allow to intelligently remove temporaries and enable , when that is appropriate. . * is performed for SSE 2\/3\/4, ARM NEON, and AltiVec instruction sets, with graceful fallback to non-vectorized code. . * Fixed-size matrices are fully optimized: dynamic memory allocation is avoided, and the loops are unrolled when that makes sense. . * For large matrices, special attention is paid to cache-friendliness. . Eigen is reliable. . * Algorithms are carefully selected for reliability. Reliability trade-offs are and are available. . * Eigen is thoroughly tested through its own (over 500 executables), the standard BLAS test suite, and parts of the LAPACK test suite. . Eigen is elegant. . * The API is extremely while feeling natural to C++ programmers, thanks to expression templates. . * Implementing an algorithm on top of Eigen feels like just copying pseudocode. . Eigen has good compiler support as we run our test suite against many compilers to guarantee reliability and work around any compiler bugs. Eigen also is standard C++98 and maintains very reasonable compilation times. . Eigen is licensed under the MPL2, which is a simple weak copyleft license. Common questions about the MPL2 are answered in the official MPL2 FAQ at . . Note that currently, a few features in Eigen rely on third-party code licensed under the LGPL: SimplicialCholesky, AMD ordering, and constrained_cg. Such features are explicitly disabled by compiling Eigen with the EIGEN_MPL2_ONLY preprocessor symbol defined. . Virtually any software may use Eigen. For example, closed-source software may use Eigen without having to disclose its own source code. Many proprietary and closed-source software projects are using Eigen right now, as well as many BSD-licensed projects. . Documentation at the most extent replicates original . category: Data, Math, Algebra, Statistics, Algorithms, Numeric license: BSD3 license-file: LICENSE copyright: (c) 2013-2015, Oleg Sidorkin author: Oleg Sidorkin maintainer: Oleg Sidorkin cabal-version: >= 1.8 build-type: Simple tested-with: GHC ==7.8.3 extra-source-files: cbits/eigen-runtime.h cbits/eigen-dense.h cbits/eigen-la.h cbits/eigen-sparse.h cbits/eigen-sparse-la.h eigen3/COPYING.BSD eigen3/COPYING.GPL eigen3/COPYING.LGPL eigen3/COPYING.MINPACK eigen3/COPYING.MPL2 eigen3/COPYING.README eigen3/Eigen/Array eigen3/Eigen/Cholesky eigen3/Eigen/CholmodSupport eigen3/Eigen/CMakeLists.txt eigen3/Eigen/Core eigen3/Eigen/Dense eigen3/Eigen/Eigen eigen3/Eigen/Eigen2Support eigen3/Eigen/Eigenvalues eigen3/Eigen/Geometry eigen3/Eigen/Householder eigen3/Eigen/IterativeLinearSolvers eigen3/Eigen/Jacobi eigen3/Eigen/LeastSquares eigen3/Eigen/LU eigen3/Eigen/MetisSupport eigen3/Eigen/OrderingMethods eigen3/Eigen/PardisoSupport eigen3/Eigen/PaStiXSupport eigen3/Eigen/QR eigen3/Eigen/QtAlignedMalloc eigen3/Eigen/Sparse eigen3/Eigen/SparseCholesky eigen3/Eigen/SparseCore eigen3/Eigen/SparseLU eigen3/Eigen/SparseQR eigen3/Eigen/SPQRSupport eigen3/Eigen/src/Cholesky/CMakeLists.txt eigen3/Eigen/src/Cholesky/LDLT.h eigen3/Eigen/src/Cholesky/LLT.h eigen3/Eigen/src/Cholesky/LLT_MKL.h eigen3/Eigen/src/CholmodSupport/CholmodSupport.h eigen3/Eigen/src/CholmodSupport/CMakeLists.txt eigen3/Eigen/src/CMakeLists.txt eigen3/Eigen/src/Core/arch/AltiVec/CMakeLists.txt eigen3/Eigen/src/Core/arch/AltiVec/Complex.h eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h eigen3/Eigen/src/Core/arch/CMakeLists.txt eigen3/Eigen/src/Core/arch/Default/CMakeLists.txt eigen3/Eigen/src/Core/arch/Default/Settings.h eigen3/Eigen/src/Core/arch/NEON/CMakeLists.txt eigen3/Eigen/src/Core/arch/NEON/Complex.h eigen3/Eigen/src/Core/arch/NEON/PacketMath.h eigen3/Eigen/src/Core/arch/SSE/CMakeLists.txt eigen3/Eigen/src/Core/arch/SSE/Complex.h eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h eigen3/Eigen/src/Core/arch/SSE/PacketMath.h eigen3/Eigen/src/Core/Array.h eigen3/Eigen/src/Core/ArrayBase.h eigen3/Eigen/src/Core/ArrayWrapper.h eigen3/Eigen/src/Core/Assign.h eigen3/Eigen/src/Core/Assign_MKL.h eigen3/Eigen/src/Core/BandMatrix.h eigen3/Eigen/src/Core/Block.h eigen3/Eigen/src/Core/BooleanRedux.h eigen3/Eigen/src/Core/CMakeLists.txt eigen3/Eigen/src/Core/CommaInitializer.h eigen3/Eigen/src/Core/CoreIterators.h eigen3/Eigen/src/Core/CwiseBinaryOp.h eigen3/Eigen/src/Core/CwiseNullaryOp.h eigen3/Eigen/src/Core/CwiseUnaryOp.h eigen3/Eigen/src/Core/CwiseUnaryView.h eigen3/Eigen/src/Core/DenseBase.h eigen3/Eigen/src/Core/DenseCoeffsBase.h eigen3/Eigen/src/Core/DenseStorage.h eigen3/Eigen/src/Core/Diagonal.h eigen3/Eigen/src/Core/DiagonalMatrix.h eigen3/Eigen/src/Core/DiagonalProduct.h eigen3/Eigen/src/Core/Dot.h eigen3/Eigen/src/Core/EigenBase.h eigen3/Eigen/src/Core/Flagged.h eigen3/Eigen/src/Core/ForceAlignedAccess.h eigen3/Eigen/src/Core/Functors.h eigen3/Eigen/src/Core/Fuzzy.h eigen3/Eigen/src/Core/GeneralProduct.h eigen3/Eigen/src/Core/GenericPacketMath.h eigen3/Eigen/src/Core/GlobalFunctions.h eigen3/Eigen/src/Core/IO.h eigen3/Eigen/src/Core/Map.h eigen3/Eigen/src/Core/MapBase.h eigen3/Eigen/src/Core/MathFunctions.h eigen3/Eigen/src/Core/Matrix.h eigen3/Eigen/src/Core/MatrixBase.h eigen3/Eigen/src/Core/NestByValue.h eigen3/Eigen/src/Core/NoAlias.h eigen3/Eigen/src/Core/NumTraits.h eigen3/Eigen/src/Core/PermutationMatrix.h eigen3/Eigen/src/Core/PlainObjectBase.h eigen3/Eigen/src/Core/ProductBase.h eigen3/Eigen/src/Core/products/CMakeLists.txt eigen3/Eigen/src/Core/products/CoeffBasedProduct.h eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h eigen3/Eigen/src/Core/products/GeneralMatrixVector.h eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h eigen3/Eigen/src/Core/products/Parallelizer.h eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h eigen3/Eigen/src/Core/products/SelfadjointProduct.h eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h eigen3/Eigen/src/Core/products/TriangularMatrixVector.h eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h eigen3/Eigen/src/Core/products/TriangularSolverVector.h eigen3/Eigen/src/Core/Random.h eigen3/Eigen/src/Core/Redux.h eigen3/Eigen/src/Core/Ref.h eigen3/Eigen/src/Core/Replicate.h eigen3/Eigen/src/Core/ReturnByValue.h eigen3/Eigen/src/Core/Reverse.h eigen3/Eigen/src/Core/Select.h eigen3/Eigen/src/Core/SelfAdjointView.h eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h eigen3/Eigen/src/Core/SolveTriangular.h eigen3/Eigen/src/Core/StableNorm.h eigen3/Eigen/src/Core/Stride.h eigen3/Eigen/src/Core/Swap.h eigen3/Eigen/src/Core/Transpose.h eigen3/Eigen/src/Core/Transpositions.h eigen3/Eigen/src/Core/TriangularMatrix.h eigen3/Eigen/src/Core/util/BlasUtil.h eigen3/Eigen/src/Core/util/CMakeLists.txt eigen3/Eigen/src/Core/util/Constants.h eigen3/Eigen/src/Core/util/DisableStupidWarnings.h eigen3/Eigen/src/Core/util/ForwardDeclarations.h eigen3/Eigen/src/Core/util/Macros.h eigen3/Eigen/src/Core/util/Memory.h eigen3/Eigen/src/Core/util/Meta.h eigen3/Eigen/src/Core/util/MKL_support.h eigen3/Eigen/src/Core/util/NonMPL2.h eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h eigen3/Eigen/src/Core/util/StaticAssert.h eigen3/Eigen/src/Core/util/XprHelper.h eigen3/Eigen/src/Core/VectorBlock.h eigen3/Eigen/src/Core/VectorwiseOp.h eigen3/Eigen/src/Core/Visitor.h eigen3/Eigen/src/Eigen2Support/Block.h eigen3/Eigen/src/Eigen2Support/CMakeLists.txt eigen3/Eigen/src/Eigen2Support/Cwise.h eigen3/Eigen/src/Eigen2Support/CwiseOperators.h eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h eigen3/Eigen/src/Eigen2Support/Geometry/All.h eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h eigen3/Eigen/src/Eigen2Support/Geometry/CMakeLists.txt eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h eigen3/Eigen/src/Eigen2Support/Lazy.h eigen3/Eigen/src/Eigen2Support/LeastSquares.h eigen3/Eigen/src/Eigen2Support/LU.h eigen3/Eigen/src/Eigen2Support/Macros.h eigen3/Eigen/src/Eigen2Support/MathFunctions.h eigen3/Eigen/src/Eigen2Support/Memory.h eigen3/Eigen/src/Eigen2Support/Meta.h eigen3/Eigen/src/Eigen2Support/Minor.h eigen3/Eigen/src/Eigen2Support/QR.h eigen3/Eigen/src/Eigen2Support/SVD.h eigen3/Eigen/src/Eigen2Support/TriangularSolver.h eigen3/Eigen/src/Eigen2Support/VectorBlock.h eigen3/Eigen/src/Eigenvalues/CMakeLists.txt eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h eigen3/Eigen/src/Eigenvalues/ComplexSchur.h eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h eigen3/Eigen/src/Eigenvalues/EigenSolver.h eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h eigen3/Eigen/src/Eigenvalues/RealQZ.h eigen3/Eigen/src/Eigenvalues/RealSchur.h eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h eigen3/Eigen/src/Geometry/AlignedBox.h eigen3/Eigen/src/Geometry/AngleAxis.h eigen3/Eigen/src/Geometry/arch/CMakeLists.txt eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h eigen3/Eigen/src/Geometry/CMakeLists.txt eigen3/Eigen/src/Geometry/EulerAngles.h eigen3/Eigen/src/Geometry/Homogeneous.h eigen3/Eigen/src/Geometry/Hyperplane.h eigen3/Eigen/src/Geometry/OrthoMethods.h eigen3/Eigen/src/Geometry/ParametrizedLine.h eigen3/Eigen/src/Geometry/Quaternion.h eigen3/Eigen/src/Geometry/Rotation2D.h eigen3/Eigen/src/Geometry/RotationBase.h eigen3/Eigen/src/Geometry/Scaling.h eigen3/Eigen/src/Geometry/Transform.h eigen3/Eigen/src/Geometry/Translation.h eigen3/Eigen/src/Geometry/Umeyama.h eigen3/Eigen/src/Householder/BlockHouseholder.h eigen3/Eigen/src/Householder/CMakeLists.txt eigen3/Eigen/src/Householder/Householder.h eigen3/Eigen/src/Householder/HouseholderSequence.h eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h eigen3/Eigen/src/IterativeLinearSolvers/CMakeLists.txt eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h eigen3/Eigen/src/Jacobi/CMakeLists.txt eigen3/Eigen/src/Jacobi/Jacobi.h eigen3/Eigen/src/LU/arch/CMakeLists.txt eigen3/Eigen/src/LU/arch/Inverse_SSE.h eigen3/Eigen/src/LU/CMakeLists.txt eigen3/Eigen/src/LU/Determinant.h eigen3/Eigen/src/LU/FullPivLU.h eigen3/Eigen/src/LU/Inverse.h eigen3/Eigen/src/LU/PartialPivLU.h eigen3/Eigen/src/LU/PartialPivLU_MKL.h eigen3/Eigen/src/MetisSupport/CMakeLists.txt eigen3/Eigen/src/MetisSupport/MetisSupport.h eigen3/Eigen/src/misc/blas.h eigen3/Eigen/src/misc/CMakeLists.txt eigen3/Eigen/src/misc/Image.h eigen3/Eigen/src/misc/Kernel.h eigen3/Eigen/src/misc/Solve.h eigen3/Eigen/src/misc/SparseSolve.h eigen3/Eigen/src/OrderingMethods/Amd.h eigen3/Eigen/src/OrderingMethods/CMakeLists.txt eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h eigen3/Eigen/src/OrderingMethods/Ordering.h eigen3/Eigen/src/PardisoSupport/CMakeLists.txt eigen3/Eigen/src/PardisoSupport/PardisoSupport.h eigen3/Eigen/src/PaStiXSupport/CMakeLists.txt eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h eigen3/Eigen/src/plugins/BlockMethods.h eigen3/Eigen/src/plugins/CMakeLists.txt eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h eigen3/Eigen/src/QR/CMakeLists.txt eigen3/Eigen/src/QR/ColPivHouseholderQR.h eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h eigen3/Eigen/src/QR/FullPivHouseholderQR.h eigen3/Eigen/src/QR/HouseholderQR.h eigen3/Eigen/src/QR/HouseholderQR_MKL.h eigen3/Eigen/src/SparseCholesky/CMakeLists.txt eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h eigen3/Eigen/src/SparseCore/AmbiVector.h eigen3/Eigen/src/SparseCore/CMakeLists.txt eigen3/Eigen/src/SparseCore/CompressedStorage.h eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h eigen3/Eigen/src/SparseCore/SparseBlock.h eigen3/Eigen/src/SparseCore/SparseColEtree.h eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h eigen3/Eigen/src/SparseCore/SparseDenseProduct.h eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h eigen3/Eigen/src/SparseCore/SparseDot.h eigen3/Eigen/src/SparseCore/SparseFuzzy.h eigen3/Eigen/src/SparseCore/SparseMatrix.h eigen3/Eigen/src/SparseCore/SparseMatrixBase.h eigen3/Eigen/src/SparseCore/SparsePermutation.h eigen3/Eigen/src/SparseCore/SparseProduct.h eigen3/Eigen/src/SparseCore/SparseRedux.h eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h eigen3/Eigen/src/SparseCore/SparseTranspose.h eigen3/Eigen/src/SparseCore/SparseTriangularView.h eigen3/Eigen/src/SparseCore/SparseUtil.h eigen3/Eigen/src/SparseCore/SparseVector.h eigen3/Eigen/src/SparseCore/SparseView.h eigen3/Eigen/src/SparseCore/TriangularSolver.h eigen3/Eigen/src/SparseLU/CMakeLists.txt eigen3/Eigen/src/SparseLU/SparseLU.h eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h eigen3/Eigen/src/SparseLU/SparseLU_Memory.h eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h eigen3/Eigen/src/SparseLU/SparseLU_Structs.h eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h eigen3/Eigen/src/SparseLU/SparseLU_Utils.h eigen3/Eigen/src/SparseLU/SparseLUImpl.h eigen3/Eigen/src/SparseQR/CMakeLists.txt eigen3/Eigen/src/SparseQR/SparseQR.h eigen3/Eigen/src/SPQRSupport/CMakeLists.txt eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h eigen3/Eigen/src/StlSupport/CMakeLists.txt eigen3/Eigen/src/StlSupport/details.h eigen3/Eigen/src/StlSupport/StdDeque.h eigen3/Eigen/src/StlSupport/StdList.h eigen3/Eigen/src/StlSupport/StdVector.h eigen3/Eigen/src/SuperLUSupport/CMakeLists.txt eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h eigen3/Eigen/src/SVD/CMakeLists.txt eigen3/Eigen/src/SVD/JacobiSVD.h eigen3/Eigen/src/SVD/JacobiSVD_MKL.h eigen3/Eigen/src/SVD/UpperBidiagonalization.h eigen3/Eigen/src/UmfPackSupport/CMakeLists.txt eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h eigen3/Eigen/StdDeque eigen3/Eigen/StdList eigen3/Eigen/StdVector eigen3/Eigen/SuperLUSupport eigen3/Eigen/SVD eigen3/Eigen/UmfPackSupport source-repository head type: git location: git://github.com/osidorkin/haskell-eigen.git library exposed-modules: Data.Eigen.LA Data.Eigen.SparseLA Data.Eigen.Matrix Data.Eigen.Matrix.Mutable Data.Eigen.SparseMatrix Data.Eigen.SparseMatrix.Mutable Data.Eigen.Parallel Data.Eigen.Internal ghc-options: -Wall -fno-warn-name-shadowing build-depends: base >= 3 && < 5, vector >= 0.5 && < 0.13, primitive >= 0.1 && < 0.7, binary, bytestring, transformers >= 0.3 include-dirs: eigen3, cbits c-sources: cbits/eigen-runtime.cpp cbits/eigen-dense.cpp cbits/eigen-sparse.cpp cbits/eigen-la.cpp cbits/eigen-sparse-la.cpp extra-libraries: stdc++ Test-Suite test-solve type: exitcode-stdio-1.0 main-is: test/solve.hs build-depends: base, primitive, vector, bytestring, transformers, binary, eigen Test-Suite test-solve-sparse type: exitcode-stdio-1.0 main-is: test/solve-sparse.hs build-depends: base, primitive, vector, bytestring, transformers, mtl, binary, eigen Test-Suite test-rank type: exitcode-stdio-1.0 main-is: test/rank.hs build-depends: base, primitive, vector, bytestring, transformers, binary, eigen Test-Suite test-regression type: exitcode-stdio-1.0 main-is: test/regression.hs build-depends: base, primitive, vector, bytestring, transformers, binary, eigen