packages feed

LPFP-1.1.4: LPFP.cabal

name:           LPFP
version:        1.1.4
synopsis:       Code for the book Learn Physics with Functional Programming
description:    Haskell code to help the user learn mechanics of one particle,
                mechanics of multiple interacting particles, and electromagnetic theory.
homepage:       https://lpfp.io
author:         Scott N. Walck
maintainer:     walck@lvc.edu
copyright:      2024 Scott N. Walck
license:        BSD3
license-file:   LICENSE
build-type:     Simple
category:       Physics
cabal-version: 1.12

library
  exposed-modules:
      LPFP
      LPFP.SimpleVec
      LPFP.Newton2
      LPFP.Mechanics1D
      LPFP.Mechanics3D
      LPFP.MultipleObjects
      LPFP.MOExamples
      LPFP.Electricity
      LPFP.CoordinateSystems
      LPFP.Geometry
      LPFP.Integrals
      LPFP.Charge
      LPFP.ElectricField
      LPFP.Current
      LPFP.MagneticField
      LPFP.Lorentz
      LPFP.Maxwell
  hs-source-dirs: src
  build-depends:
      base >= 4.7 && < 5,
      containers >= 0.6.7 && < 0.7,
      Vis >= 1.0.0 && < 1.1,
      diagrams-cairo >= 1.4.2 && < 1.5,
      diagrams-lib >= 1.4.6 && < 1.5,
      gloss >= 1.13.2 && < 1.14,
      gnuplot >= 0.5.7 && < 0.6,
      linear >= 1.22 && < 1.24
  default-language: Haskell2010

executable LPFP-hello
  main-is: hello.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >= 4.7 && < 5
  default-language: Haskell2010

executable LPFP-MakeTrajectoryGraph
  main-is: MakeTrajectoryGraph.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >= 4.7 && < 5
    , gnuplot >= 0.5.7 && < 0.6
  default-language: Haskell2010

executable LPFP-GlossDisplay
  main-is: GlossDisplay.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GlossDisplay2
  main-is: GlossDisplay2.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GlossAnimate
  main-is: GlossAnimate.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GlossSimulate
  main-is: GlossSimulate.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GlossSimulate2
  main-is: GlossSimulate2.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-VisDisplay
  main-is: VisDisplay.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
  default-language: Haskell2010

executable LPFP-VisDisplay2
  main-is: VisDisplay2.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
    , linear >= 1.22 && < 1.24
  default-language: Haskell2010

executable LPFP-VisDisplay3
  main-is: VisDisplay3.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
    , linear >= 1.22 && < 1.24
  default-language: Haskell2010

executable LPFP-VisAnimate
  main-is: VisAnimate.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
  default-language: Haskell2010

executable LPFP-VisSimulate
  main-is: VisSimulate.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
  default-language: Haskell2010

executable LPFP-GlossHalley
  main-is: GlossHalley.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GlossProjectile
  main-is: GlossProjectile.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-VisProjectile
  main-is: VisProjectile.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
  default-language: Haskell2010

executable LPFP-Mech3Proton
  main-is: Mech3Proton.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GlossProton
  main-is: GlossProton.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-VisTwoSprings
  main-is: VisTwoSprings.hs
  hs-source-dirs: app
  build-depends: LPFP, base >=4.7 && <5, Vis >= 1.0.0 && < 1.1
  default-language: Haskell2010

executable LPFP-GlossBilliard
  main-is: GlossBilliard.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GlossWave
  main-is: GlossWave.hs
  hs-source-dirs: app
  build-depends: LPFP, base >=4.7 && <5, gloss >= 1.13.2 && < 1.14
  default-language: Haskell2010

executable LPFP-GnuplotWave
  main-is: GnuplotWave.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , gnuplot >= 0.5.7 && < 0.6
  default-language: Haskell2010

executable LPFP-GlossBilliardAnimate
  main-is: GlossBilliardAnimate.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
  default-language: Haskell2010

executable LPFP-ProtonEB
  main-is: ProtonEB.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
  default-language: Haskell2010

executable LPFP-Hydrogen
  main-is: Hydrogen.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , Vis >= 1.0.0 && < 1.1
  default-language: Haskell2010

executable LPFP-ElectricWave
  main-is: ElectricWave.hs
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      LPFP
    , base >=4.7 && <5
    , diagrams-cairo, diagrams-lib
  default-language: Haskell2010