packages feed

aivika-0.3: aivika.cabal

name:            aivika
version:         0.3
synopsis:        A multi-paradigm simulation library
description:
    Aivika is a small simulation library that covers many paradigms. 
    It allows integrating a system of ordinary differential equations. 
    Also it can be applied to the Discrete Event Simulation. It supports 
    the event-oriented, process-oriented and activity-oriented paradigms. 
    Aivika also supports the Agent-based Modeling. Finally, it can be applied 
    to System Dynamics. 
    .
    It is possible due to using a very general approach when the basic 
    modeling entity is just a function of simulation time. The paradigms
    are mainly distinguished by sets of the functions that are used to 
    model the activities. These sets are small and do not pretend
    to be comprehensive. Aivika is mostly a proof-of-concept project
    rather than a big library that knows everything.
    .
    The library widely uses monads. The dynamic system is represented as 
    a computation in the Dynamics monad. There is also the Process
    monad to represent the discontinuous processes which can suspend
    at any time and then resume later. There is also the Simulation monad
    that represents a simulation run, in which scope the previous 
    two monads exist. Almost everything is expressed through these monads, 
    including the event handlers, agent handlers and even integrals 
    except for the parameters and statistics that already use the IO monad.
    .
    The PDF documentation is available at 
    <https://github.com/dsorokin/aivika/blob/master/doc/aivika.pdf>.
    Please note that the documentation is obsolete and it corresponds to 
    the previous version but it can still be helpful.
    .
category:        Simulation
license:         BSD3
license-file:    LICENSE
copyright:       (c) 2009-2012. David Sorokin <david.sorokin@gmail.com>
author:          David Sorokin
maintainer:      David Sorokin <david.sorokin@gmail.com>
homepage:        http://github.com/dsorokin/aivika
cabal-version:   >= 1.2.0
build-type:      Simple
tested-with:     GHC == 7.0.4

extra-source-files:  examples/BassDiffusion.hs
                     examples/ChemicalReaction.hs
                     examples/FishBank.hs
                     examples/MachRep1.hs
                     examples/MachRep1EventDriven.hs
                     examples/MachRep1TimeDriven.hs
                     examples/MachRep2.hs
                     examples/MachRep3.hs
                     examples/Furnace.hs

data-files:          doc/aivika.pdf

library

    exposed-modules: Simulation.Aivika.Dynamics
                     Simulation.Aivika.Dynamics.Agent
                     Simulation.Aivika.Dynamics.Base
                     Simulation.Aivika.Dynamics.Cont
                     Simulation.Aivika.Dynamics.EventQueue
                     Simulation.Aivika.Dynamics.Parameter
                     Simulation.Aivika.Dynamics.Process
                     Simulation.Aivika.Dynamics.Random
                     Simulation.Aivika.Dynamics.Ref
                     Simulation.Aivika.Dynamics.Resource
                     Simulation.Aivika.Dynamics.Simulation
                     Simulation.Aivika.Dynamics.SystemDynamics
                     Simulation.Aivika.Dynamics.UVar
                     Simulation.Aivika.Dynamics.Var
                     Simulation.Aivika.Statistics
                     Simulation.Aivika.PriorityQueue
                     Simulation.Aivika.Queue

    other-modules:   Simulation.Aivika.Dynamics.Internal.Dynamics
                     Simulation.Aivika.Dynamics.Internal.Simulation
                     Simulation.Aivika.Dynamics.Internal.Cont
                     Simulation.Aivika.Dynamics.Internal.Process
                     Simulation.Aivika.Dynamics.Internal.Time
                     Simulation.Aivika.Dynamics.Internal.Memo
                     Simulation.Aivika.Dynamics.Internal.Interpolate
                     Simulation.Aivika.Dynamics.Internal.Fold
                     Simulation.Aivika.Vector
                     Simulation.Aivika.UVector
                     
    build-depends:   base >= 3 && < 6,
                     mtl >= 1.1.0.2,
                     array >= 0.3.0.0,
                     containers >= 0.4.0.0,
                     random >= 1.0.0.3

    extensions:      FlexibleContexts,
                     BangPatterns
                     
    ghc-options:     -O2