packages feed

easytensor-2.1.0.0: easytensor.cabal

cabal-version: 1.24

-- This file has been generated from package.yaml by hpack version 0.31.1.
--
-- see: https://github.com/sol/hpack
--
-- hash: 75fa5546720cb775f5ce9a26382fcd60253bba851441e469156242ee52655f97

name:           easytensor
version:        2.1.0.0
synopsis:       Pure, type-indexed haskell vector, matrix, and tensor library.
description:    Pure, type-indexed haskell vector, matrix, and tensor library. Features dimensionality type-checking for all operations. Generic n-dimensional versions are implemented using low-level prim ops. Allows ad-hoc replacement with fixed low-dimensionality vectors and matrices without changing user interface. Please see the README on GitHub at <https://github.com/achirkin/easytensor#readme>
category:       math, geometry
homepage:       https://github.com/achirkin/easytensor#readme
bug-reports:    https://github.com/achirkin/easytensor/issues
author:         Artem Chirkin
maintainer:     achirkin@users.noreply.github.com
copyright:      Copyright: (c) 2019 Artem Chirkin
license:        BSD3
license-file:   LICENSE
build-type:     Custom

source-repository head
  type: git
  location: https://github.com/achirkin/easytensor
  subdir: easytensor

custom-setup
  setup-depends:
      Cabal
    , base

flag unsafeindices
  description: Disable bound checks when accessing elements of a tensor, matrix, or vector.
  manual: True
  default: False

library
  exposed-modules:
      Numeric.Basics
      Numeric.DataFrame
      Numeric.DataFrame.Contraction
      Numeric.DataFrame.Internal.Backend
      Numeric.DataFrame.Internal.Mutable
      Numeric.DataFrame.Internal.PrimArray
      Numeric.DataFrame.IO
      Numeric.DataFrame.ST
      Numeric.DataFrame.SubSpace
      Numeric.DataFrame.Type
      Numeric.Matrix
      Numeric.Matrix.Bidiagonal
      Numeric.Matrix.LU
      Numeric.Matrix.QR
      Numeric.Matrix.SVD
      Numeric.PrimBytes
      Numeric.ProductOrd
      Numeric.ProductOrd.NonTransitive
      Numeric.ProductOrd.Partial
      Numeric.Quaternion
      Numeric.Scalar
      Numeric.Subroutine.Householder
      Numeric.Subroutine.SolveTriangular
      Numeric.Subroutine.Sort
      Numeric.Vector
  other-modules:
      Numeric.Matrix.Internal
      Numeric.Matrix.Internal.Double
      Numeric.Matrix.Internal.Float
      Numeric.Scalar.Internal
      Numeric.Vector.Internal
      Numeric.Quaternion.Internal
      Numeric.Quaternion.Internal.QDouble
      Numeric.Quaternion.Internal.QFloat
      Numeric.DataFrame.Internal.Backend.Family
      Numeric.DataFrame.Internal.Backend.Family.ArrayBase
      Numeric.DataFrame.Internal.Backend.Family.DoubleX2
      Numeric.DataFrame.Internal.Backend.Family.DoubleX3
      Numeric.DataFrame.Internal.Backend.Family.DoubleX4
      Numeric.DataFrame.Internal.Backend.Family.FloatX2
      Numeric.DataFrame.Internal.Backend.Family.FloatX3
      Numeric.DataFrame.Internal.Backend.Family.FloatX4
      Numeric.DataFrame.Internal.Backend.Family.ScalarBase
      Numeric.DataFrame.Internal.BackendI
  hs-source-dirs:
      src
      src-base
  ghc-options: -Wall -Wcompat -Wtabs -Wmonomorphism-restriction -Wmissing-local-signatures -Wmissing-home-modules -Widentities -Wredundant-constraints
  build-depends:
      base >=4.11 && <5
    , constraints-deriving >=1.1.1.0 && <2
    , dimensions >=2 && <3
  if flag(unsafeindices)
    cpp-options: -DUNSAFE_INDICES
  default-language: Haskell2010

test-suite et-test
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  other-modules:
      Numeric.Arbitraries
      Numeric.DataFrame.BasicTest
      Numeric.DataFrame.SubSpaceTest
      Numeric.Matrix.BidiagonalTest
      Numeric.Matrix.LUTest
      Numeric.Matrix.QRTest
      Numeric.Matrix.SVDTest
      Numeric.MatrixDoubleTest
      Numeric.MatrixFloatTest
      Numeric.PrimBytesTest
      Numeric.QuaterDoubleTest
      Numeric.QuaterFloatTest
      Numeric.Subroutine.SolveTriangularTest
      Spec.Util
      Paths_easytensor
  hs-source-dirs:
      test
  ghc-options: -Wall -Wcompat -Wtabs -Wmonomorphism-restriction -Wmissing-local-signatures -Wmissing-home-modules -Widentities -Wredundant-constraints
  build-depends:
      Cabal
    , QuickCheck
    , base >=4.11 && <5
    , constraints-deriving >=1.1.1.0 && <2
    , dimensions >=2 && <3
    , easytensor
    , template-haskell
  default-language: Haskell2010

benchmark et-bench-misc
  type: exitcode-stdio-1.0
  main-is: misc.hs
  other-modules:
      Paths_easytensor
  hs-source-dirs:
      bench
  ghc-options: -Wall -Wcompat -Wtabs -Wmonomorphism-restriction -Wmissing-local-signatures -Wmissing-home-modules -Widentities -Wredundant-constraints
  build-depends:
      base >=4.11 && <5
    , constraints-deriving >=1.1.1.0 && <2
    , dimensions >=2 && <3
    , easytensor
  default-language: Haskell2010

benchmark et-bench-spfolds
  type: exitcode-stdio-1.0
  main-is: subspacefolds.hs
  other-modules:
      Paths_easytensor
  hs-source-dirs:
      bench
  ghc-options: -Wall -Wcompat -Wtabs -Wmonomorphism-restriction -Wmissing-local-signatures -Wmissing-home-modules -Widentities -Wredundant-constraints
  build-depends:
      base >=4.11 && <5
    , constraints-deriving >=1.1.1.0 && <2
    , dimensions >=2 && <3
    , easytensor
    , time
  default-language: Haskell2010