aivika 4.3 → 4.3.1
raw patch · 7 files changed
+84/−16 lines, 7 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Simulation.Aivika.Agent: instance Eq Agent
- Simulation.Aivika.Agent: instance Eq AgentState
- Simulation.Aivika.Arrival: arrivalDelay :: Arrival a -> Maybe Double
- Simulation.Aivika.Arrival: arrivalTime :: Arrival a -> Double
- Simulation.Aivika.Arrival: arrivalValue :: Arrival a -> a
- Simulation.Aivika.Circuit: instance Arrow Circuit
- Simulation.Aivika.Circuit: instance ArrowChoice Circuit
- Simulation.Aivika.Circuit: instance ArrowLoop Circuit
- Simulation.Aivika.Circuit: instance Category Circuit
- Simulation.Aivika.Circuit: runCircuit :: Circuit a b -> a -> Event (b, Circuit a b)
- Simulation.Aivika.Event: disposeEvent :: DisposableEvent -> Event ()
- Simulation.Aivika.Generator: generateBeta :: Generator -> Double -> Double -> IO Double
- Simulation.Aivika.Generator: generateBinomial :: Generator -> Double -> Int -> IO Int
- Simulation.Aivika.Generator: generateDiscrete :: Generator -> forall a. DiscretePDF a -> IO a
- Simulation.Aivika.Generator: generateErlang :: Generator -> Double -> Int -> IO Double
- Simulation.Aivika.Generator: generateExponential :: Generator -> Double -> IO Double
- Simulation.Aivika.Generator: generateGamma :: Generator -> Double -> Double -> IO Double
- Simulation.Aivika.Generator: generateLogNormal :: Generator -> Double -> Double -> IO Double
- Simulation.Aivika.Generator: generateNormal :: Generator -> Double -> Double -> IO Double
- Simulation.Aivika.Generator: generatePoisson :: Generator -> Double -> IO Int
- Simulation.Aivika.Generator: generateTriangular :: Generator -> Double -> Double -> Double -> IO Double
- Simulation.Aivika.Generator: generateUniform :: Generator -> Double -> Double -> IO Double
- Simulation.Aivika.Generator: generateUniformInt :: Generator -> Int -> Int -> IO Int
- Simulation.Aivika.Generator: generateWeibull :: Generator -> Double -> Double -> IO Double
- Simulation.Aivika.Net: instance Arrow Net
- Simulation.Aivika.Net: instance ArrowChoice Net
- Simulation.Aivika.Net: instance Category Net
- Simulation.Aivika.Net: runNet :: Net a b -> a -> Process (b, Net a b)
- Simulation.Aivika.Processor: instance Arrow Processor
- Simulation.Aivika.Processor: instance ArrowChoice Processor
- Simulation.Aivika.Processor: instance ArrowPlus Processor
- Simulation.Aivika.Processor: instance ArrowZero Processor
- Simulation.Aivika.Processor: instance Category Processor
- Simulation.Aivika.Processor: runProcessor :: Processor a b -> Stream a -> Stream b
- Simulation.Aivika.QueueStrategy: instance DeletingQueueStrategy FCFS
- Simulation.Aivika.QueueStrategy: instance DeletingQueueStrategy LCFS
- Simulation.Aivika.QueueStrategy: instance DeletingQueueStrategy SIRO
- Simulation.Aivika.QueueStrategy: instance DeletingQueueStrategy StaticPriorities
- Simulation.Aivika.QueueStrategy: instance DequeueStrategy FCFS
- Simulation.Aivika.QueueStrategy: instance DequeueStrategy LCFS
- Simulation.Aivika.QueueStrategy: instance DequeueStrategy SIRO
- Simulation.Aivika.QueueStrategy: instance DequeueStrategy StaticPriorities
- Simulation.Aivika.QueueStrategy: instance EnqueueStrategy FCFS
- Simulation.Aivika.QueueStrategy: instance EnqueueStrategy LCFS
- Simulation.Aivika.QueueStrategy: instance EnqueueStrategy SIRO
- Simulation.Aivika.QueueStrategy: instance Eq FCFS
- Simulation.Aivika.QueueStrategy: instance Eq LCFS
- Simulation.Aivika.QueueStrategy: instance Eq SIRO
- Simulation.Aivika.QueueStrategy: instance Eq StaticPriorities
- Simulation.Aivika.QueueStrategy: instance Ord FCFS
- Simulation.Aivika.QueueStrategy: instance Ord LCFS
- Simulation.Aivika.QueueStrategy: instance Ord SIRO
- Simulation.Aivika.QueueStrategy: instance Ord StaticPriorities
- Simulation.Aivika.QueueStrategy: instance PriorityQueueStrategy StaticPriorities Double
- Simulation.Aivika.QueueStrategy: instance QueueStrategy FCFS
- Simulation.Aivika.QueueStrategy: instance QueueStrategy LCFS
- Simulation.Aivika.QueueStrategy: instance QueueStrategy SIRO
- Simulation.Aivika.QueueStrategy: instance QueueStrategy StaticPriorities
- Simulation.Aivika.QueueStrategy: instance Show FCFS
- Simulation.Aivika.QueueStrategy: instance Show LCFS
- Simulation.Aivika.QueueStrategy: instance Show SIRO
- Simulation.Aivika.QueueStrategy: instance Show StaticPriorities
- Simulation.Aivika.Resource: instance Eq (Resource s)
- Simulation.Aivika.Resource.Base: instance Eq (Resource s)
- Simulation.Aivika.Resource.Preemption: instance Eq Resource
- Simulation.Aivika.Resource.Preemption: instance Eq ResourceActingItem
- Simulation.Aivika.Resource.Preemption.Base: instance Eq Resource
- Simulation.Aivika.Resource.Preemption.Base: instance Eq ResourceActingItem
- Simulation.Aivika.Results: instance (Ix i, Show i, ResultComputing m) => ResultProvider (m (Array i Double))
- Simulation.Aivika.Results: instance (Ix i, Show i, ResultComputing m) => ResultProvider (m (Array i Int))
- Simulation.Aivika.Results: instance (Show i, Ix i, ResultProvider p) => ResultProvider (Array i p)
- Simulation.Aivika.Results: instance (Show i, Ix i, ResultProvider p) => ResultProvider (ResultArrayWithSubscript i p)
- Simulation.Aivika.Results: instance (Show s, ResultItemable (ResultValue s)) => ResultProvider (Activity s a b)
- Simulation.Aivika.Results: instance (Show s, ResultItemable (ResultValue s)) => ResultProvider (Resource s)
- Simulation.Aivika.Results: instance (Show s, ResultItemable (ResultValue s)) => ResultProvider (Server s a b)
- Simulation.Aivika.Results: instance (Show si, Show sm, Show so, ResultItemable (ResultValue si), ResultItemable (ResultValue sm), ResultItemable (ResultValue so)) => ResultProvider (Queue si sm so a)
- Simulation.Aivika.Results: instance (Show sm, Show so, ResultItemable (ResultValue sm), ResultItemable (ResultValue so)) => ResultProvider (Queue sm so a)
- Simulation.Aivika.Results: instance Functor ResultContainer
- Simulation.Aivika.Results: instance Functor ResultValue
- Simulation.Aivika.Results: instance Monoid ResultSignal
- Simulation.Aivika.Results: instance Monoid Results
- Simulation.Aivika.Results: instance ResultComputing Dynamics
- Simulation.Aivika.Results: instance ResultComputing Event
- Simulation.Aivika.Results: instance ResultComputing Parameter
- Simulation.Aivika.Results: instance ResultComputing Ref
- Simulation.Aivika.Results: instance ResultComputing ResultComputation
- Simulation.Aivika.Results: instance ResultComputing Signalable
- Simulation.Aivika.Results: instance ResultComputing Simulation
- Simulation.Aivika.Results: instance ResultComputing Var
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (SamplingCounter Double))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (SamplingCounter Int))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (SamplingStats Double))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (SamplingStats Int))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (TimingCounter Double))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (TimingCounter Int))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (TimingStats Double))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (TimingStats Int))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (Vector Double))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m (Vector Int))
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m Double)
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m Int)
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m String)
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m [Double])
- Simulation.Aivika.Results: instance ResultComputing m => ResultProvider (m [Int])
- Simulation.Aivika.Results: instance ResultItemable (ResultValue ())
- Simulation.Aivika.Results: instance ResultItemable (ResultValue (SamplingStats Double))
- Simulation.Aivika.Results: instance ResultItemable (ResultValue (SamplingStats Int))
- Simulation.Aivika.Results: instance ResultItemable (ResultValue (TimingStats Double))
- Simulation.Aivika.Results: instance ResultItemable (ResultValue (TimingStats Int))
- Simulation.Aivika.Results: instance ResultItemable (ResultValue Bool)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue Double)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue FCFS)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue Int)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue LCFS)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue SIRO)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue StaticPriorities)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue String)
- Simulation.Aivika.Results: instance ResultItemable (ResultValue [Double])
- Simulation.Aivika.Results: instance ResultItemable (ResultValue [Int])
- Simulation.Aivika.Results: instance ResultProvider (Operation a b)
- Simulation.Aivika.Results: instance ResultProvider ArrivalTimer
- Simulation.Aivika.Results: instance ResultProvider Resource
- Simulation.Aivika.Results: instance ResultProvider p => ResultProvider (ResultListWithSubscript p)
- Simulation.Aivika.Results: instance ResultProvider p => ResultProvider (ResultVectorWithSubscript p)
- Simulation.Aivika.Results: instance ResultProvider p => ResultProvider (Vector p)
- Simulation.Aivika.Results: instance ResultProvider p => ResultProvider [p]
- Simulation.Aivika.Results: resultComputationData :: ResultComputation a -> ResultData a
- Simulation.Aivika.Results: resultComputationSignal :: ResultComputation a -> ResultSignal
- Simulation.Aivika.Results: resultContainerData :: ResultContainer e -> e
- Simulation.Aivika.Results: resultContainerId :: ResultContainer e -> ResultId
- Simulation.Aivika.Results: resultContainerName :: ResultContainer e -> ResultName
- Simulation.Aivika.Results: resultContainerSignal :: ResultContainer e -> ResultSignal
- Simulation.Aivika.Results: resultObjectId :: ResultObject -> ResultId
- Simulation.Aivika.Results: resultObjectName :: ResultObject -> ResultName
- Simulation.Aivika.Results: resultObjectProperties :: ResultObject -> [ResultProperty]
- Simulation.Aivika.Results: resultObjectSignal :: ResultObject -> ResultSignal
- Simulation.Aivika.Results: resultObjectSummary :: ResultObject -> ResultSource
- Simulation.Aivika.Results: resultObjectTypeId :: ResultObject -> ResultId
- Simulation.Aivika.Results: resultPropertyId :: ResultProperty -> ResultId
- Simulation.Aivika.Results: resultPropertyLabel :: ResultProperty -> ResultName
- Simulation.Aivika.Results: resultPropertySource :: ResultProperty -> ResultSource
- Simulation.Aivika.Results: resultSeparatorText :: ResultSeparator -> String
- Simulation.Aivika.Results: resultSignalInIntegTimes :: ResultPredefinedSignals -> Signal Double
- Simulation.Aivika.Results: resultSignalInStartTime :: ResultPredefinedSignals -> Signal Double
- Simulation.Aivika.Results: resultSignalInStopTime :: ResultPredefinedSignals -> Signal Double
- Simulation.Aivika.Results: resultValueData :: ResultValue e -> ResultData e
- Simulation.Aivika.Results: resultValueId :: ResultValue e -> ResultId
- Simulation.Aivika.Results: resultValueName :: ResultValue e -> ResultName
- Simulation.Aivika.Results: resultValueSignal :: ResultValue e -> ResultSignal
- Simulation.Aivika.Results: resultVectorId :: ResultVector -> ResultId
- Simulation.Aivika.Results: resultVectorItems :: ResultVector -> Array Int ResultSource
- Simulation.Aivika.Results: resultVectorName :: ResultVector -> ResultName
- Simulation.Aivika.Results: resultVectorSignal :: ResultVector -> ResultSignal
- Simulation.Aivika.Results: resultVectorSubscript :: ResultVector -> Array Int ResultName
- Simulation.Aivika.Results: resultVectorSummary :: ResultVector -> ResultSource
- Simulation.Aivika.Results.Locale: instance Eq ResultId
- Simulation.Aivika.Results.Locale: instance Ord ResultId
- Simulation.Aivika.Results.Locale: instance Show ResultId
- Simulation.Aivika.Results.Transform: instance ResultTransformer Activity
- Simulation.Aivika.Results.Transform: instance ResultTransformer ArrivalTimer
- Simulation.Aivika.Results.Transform: instance ResultTransformer Operation
- Simulation.Aivika.Results.Transform: instance ResultTransformer Queue
- Simulation.Aivika.Results.Transform: instance ResultTransformer Resource
- Simulation.Aivika.Results.Transform: instance ResultTransformer ResultTransform
- Simulation.Aivika.Results.Transform: instance ResultTransformer SamplingCounter
- Simulation.Aivika.Results.Transform: instance ResultTransformer SamplingStats
- Simulation.Aivika.Results.Transform: instance ResultTransformer Server
- Simulation.Aivika.Results.Transform: instance ResultTransformer TimingCounter
- Simulation.Aivika.Results.Transform: instance ResultTransformer TimingStats
- Simulation.Aivika.Signal: handleSignal :: Signal a -> (a -> Event ()) -> Event DisposableEvent
- Simulation.Aivika.Signal: instance Eq (SignalHandler a)
- Simulation.Aivika.Signal: instance Functor Signal
- Simulation.Aivika.Signal: instance Functor Signalable
- Simulation.Aivika.Signal: instance Monoid (Signal a)
- Simulation.Aivika.Signal: instance Monoid a => Monoid (Signalable a)
- Simulation.Aivika.Signal: readSignalable :: Signalable a -> Event a
- Simulation.Aivika.Signal: signalableChanged_ :: Signalable a -> Signal ()
- Simulation.Aivika.Specs: spcDT :: Specs -> Double
- Simulation.Aivika.Specs: spcGeneratorType :: Specs -> GeneratorType
- Simulation.Aivika.Specs: spcMethod :: Specs -> Method
- Simulation.Aivika.Specs: spcStartTime :: Specs -> Double
- Simulation.Aivika.Specs: spcStopTime :: Specs -> Double
- Simulation.Aivika.Statistics: instance (Show a, TimingData a) => Show (TimingCounter a)
- Simulation.Aivika.Statistics: instance (Show a, TimingData a) => Show (TimingStats a)
- Simulation.Aivika.Statistics: instance ConvertableToDouble Double
- Simulation.Aivika.Statistics: instance ConvertableToDouble Int
- Simulation.Aivika.Statistics: instance Eq a => Eq (SamplingCounter a)
- Simulation.Aivika.Statistics: instance Eq a => Eq (SamplingStats a)
- Simulation.Aivika.Statistics: instance Eq a => Eq (TimingCounter a)
- Simulation.Aivika.Statistics: instance Eq a => Eq (TimingStats a)
- Simulation.Aivika.Statistics: instance Ord a => Ord (SamplingCounter a)
- Simulation.Aivika.Statistics: instance Ord a => Ord (SamplingStats a)
- Simulation.Aivika.Statistics: instance Ord a => Ord (TimingCounter a)
- Simulation.Aivika.Statistics: instance Ord a => Ord (TimingStats a)
- Simulation.Aivika.Statistics: instance SamplingData Double
- Simulation.Aivika.Statistics: instance SamplingData Int
- Simulation.Aivika.Statistics: instance SamplingData a => Monoid (SamplingStats a)
- Simulation.Aivika.Statistics: instance Show a => Show (SamplingCounter a)
- Simulation.Aivika.Statistics: instance Show a => Show (SamplingStats a)
- Simulation.Aivika.Statistics: instance TimingData Double
- Simulation.Aivika.Statistics: instance TimingData Int
- Simulation.Aivika.Statistics: samplingCounterStats :: SamplingCounter a -> SamplingStats a
- Simulation.Aivika.Statistics: samplingCounterValue :: SamplingCounter a -> a
- Simulation.Aivika.Statistics: samplingStatsCount :: SamplingStats a -> !Int
- Simulation.Aivika.Statistics: samplingStatsMax :: SamplingStats a -> !a
- Simulation.Aivika.Statistics: samplingStatsMean :: SamplingStats a -> !Double
- Simulation.Aivika.Statistics: samplingStatsMean2 :: SamplingStats a -> !Double
- Simulation.Aivika.Statistics: samplingStatsMin :: SamplingStats a -> !a
- Simulation.Aivika.Statistics: timingCounterStats :: TimingCounter a -> TimingStats a
- Simulation.Aivika.Statistics: timingCounterValue :: TimingCounter a -> a
- Simulation.Aivika.Statistics: timingStatsCount :: TimingStats a -> !Int
- Simulation.Aivika.Statistics: timingStatsLast :: TimingStats a -> !a
- Simulation.Aivika.Statistics: timingStatsLastTime :: TimingStats a -> !Double
- Simulation.Aivika.Statistics: timingStatsMax :: TimingStats a -> !a
- Simulation.Aivika.Statistics: timingStatsMaxTime :: TimingStats a -> !Double
- Simulation.Aivika.Statistics: timingStatsMin :: TimingStats a -> !a
- Simulation.Aivika.Statistics: timingStatsMinTime :: TimingStats a -> !Double
- Simulation.Aivika.Statistics: timingStatsStartTime :: TimingStats a -> !Double
- Simulation.Aivika.Statistics: timingStatsSum :: TimingStats a -> !Double
- Simulation.Aivika.Statistics: timingStatsSum2 :: TimingStats a -> !Double
- Simulation.Aivika.Stream: instance Alternative Stream
- Simulation.Aivika.Stream: instance Applicative Stream
- Simulation.Aivika.Stream: instance Functor Stream
- Simulation.Aivika.Stream: instance Monoid (Stream a)
- Simulation.Aivika.Stream: runStream :: Stream a -> Process (a, Stream a)
- Simulation.Aivika.Transform: instance Arrow Transform
- Simulation.Aivika.Transform: instance ArrowLoop Transform
- Simulation.Aivika.Transform: instance Category Transform
- Simulation.Aivika.Transform: runTransform :: Transform a b -> Dynamics a -> Simulation (Dynamics b)
- Simulation.Aivika.Unboxed: instance Unboxed Bool
- Simulation.Aivika.Unboxed: instance Unboxed Char
- Simulation.Aivika.Unboxed: instance Unboxed Double
- Simulation.Aivika.Unboxed: instance Unboxed Float
- Simulation.Aivika.Unboxed: instance Unboxed Int
- Simulation.Aivika.Unboxed: instance Unboxed Int16
- Simulation.Aivika.Unboxed: instance Unboxed Int32
- Simulation.Aivika.Unboxed: instance Unboxed Int64
- Simulation.Aivika.Unboxed: instance Unboxed Int8
- Simulation.Aivika.Unboxed: instance Unboxed Word
- Simulation.Aivika.Unboxed: instance Unboxed Word16
- Simulation.Aivika.Unboxed: instance Unboxed Word32
- Simulation.Aivika.Unboxed: instance Unboxed Word64
- Simulation.Aivika.Unboxed: instance Unboxed Word8
+ Simulation.Aivika.Agent: instance GHC.Classes.Eq Simulation.Aivika.Agent.Agent
+ Simulation.Aivika.Agent: instance GHC.Classes.Eq Simulation.Aivika.Agent.AgentState
+ Simulation.Aivika.Arrival: [arrivalDelay] :: Arrival a -> Maybe Double
+ Simulation.Aivika.Arrival: [arrivalTime] :: Arrival a -> Double
+ Simulation.Aivika.Arrival: [arrivalValue] :: Arrival a -> a
+ Simulation.Aivika.Circuit: [runCircuit] :: Circuit a b -> a -> Event (b, Circuit a b)
+ Simulation.Aivika.Circuit: instance Control.Arrow.Arrow Simulation.Aivika.Circuit.Circuit
+ Simulation.Aivika.Circuit: instance Control.Arrow.ArrowChoice Simulation.Aivika.Circuit.Circuit
+ Simulation.Aivika.Circuit: instance Control.Arrow.ArrowLoop Simulation.Aivika.Circuit.Circuit
+ Simulation.Aivika.Circuit: instance Control.Category.Category Simulation.Aivika.Circuit.Circuit
+ Simulation.Aivika.Event: [disposeEvent] :: DisposableEvent -> Event ()
+ Simulation.Aivika.Generator: [generateBeta] :: Generator -> Double -> Double -> IO Double
+ Simulation.Aivika.Generator: [generateBinomial] :: Generator -> Double -> Int -> IO Int
+ Simulation.Aivika.Generator: [generateDiscrete] :: Generator -> forall a. DiscretePDF a -> IO a
+ Simulation.Aivika.Generator: [generateErlang] :: Generator -> Double -> Int -> IO Double
+ Simulation.Aivika.Generator: [generateExponential] :: Generator -> Double -> IO Double
+ Simulation.Aivika.Generator: [generateGamma] :: Generator -> Double -> Double -> IO Double
+ Simulation.Aivika.Generator: [generateLogNormal] :: Generator -> Double -> Double -> IO Double
+ Simulation.Aivika.Generator: [generateNormal] :: Generator -> Double -> Double -> IO Double
+ Simulation.Aivika.Generator: [generatePoisson] :: Generator -> Double -> IO Int
+ Simulation.Aivika.Generator: [generateTriangular] :: Generator -> Double -> Double -> Double -> IO Double
+ Simulation.Aivika.Generator: [generateUniformInt] :: Generator -> Int -> Int -> IO Int
+ Simulation.Aivika.Generator: [generateUniform] :: Generator -> Double -> Double -> IO Double
+ Simulation.Aivika.Generator: [generateWeibull] :: Generator -> Double -> Double -> IO Double
+ Simulation.Aivika.Net: [runNet] :: Net a b -> a -> Process (b, Net a b)
+ Simulation.Aivika.Net: instance Control.Arrow.Arrow Simulation.Aivika.Net.Net
+ Simulation.Aivika.Net: instance Control.Arrow.ArrowChoice Simulation.Aivika.Net.Net
+ Simulation.Aivika.Net: instance Control.Category.Category Simulation.Aivika.Net.Net
+ Simulation.Aivika.Processor: [runProcessor] :: Processor a b -> Stream a -> Stream b
+ Simulation.Aivika.Processor: instance Control.Arrow.Arrow Simulation.Aivika.Processor.Processor
+ Simulation.Aivika.Processor: instance Control.Arrow.ArrowChoice Simulation.Aivika.Processor.Processor
+ Simulation.Aivika.Processor: instance Control.Arrow.ArrowPlus Simulation.Aivika.Processor.Processor
+ Simulation.Aivika.Processor: instance Control.Arrow.ArrowZero Simulation.Aivika.Processor.Processor
+ Simulation.Aivika.Processor: instance Control.Category.Category Simulation.Aivika.Processor.Processor
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Eq Simulation.Aivika.QueueStrategy.FCFS
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Eq Simulation.Aivika.QueueStrategy.LCFS
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Eq Simulation.Aivika.QueueStrategy.SIRO
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Eq Simulation.Aivika.QueueStrategy.StaticPriorities
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Ord Simulation.Aivika.QueueStrategy.FCFS
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Ord Simulation.Aivika.QueueStrategy.LCFS
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Ord Simulation.Aivika.QueueStrategy.SIRO
+ Simulation.Aivika.QueueStrategy: instance GHC.Classes.Ord Simulation.Aivika.QueueStrategy.StaticPriorities
+ Simulation.Aivika.QueueStrategy: instance GHC.Show.Show Simulation.Aivika.QueueStrategy.FCFS
+ Simulation.Aivika.QueueStrategy: instance GHC.Show.Show Simulation.Aivika.QueueStrategy.LCFS
+ Simulation.Aivika.QueueStrategy: instance GHC.Show.Show Simulation.Aivika.QueueStrategy.SIRO
+ Simulation.Aivika.QueueStrategy: instance GHC.Show.Show Simulation.Aivika.QueueStrategy.StaticPriorities
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DeletingQueueStrategy Simulation.Aivika.QueueStrategy.FCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DeletingQueueStrategy Simulation.Aivika.QueueStrategy.LCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DeletingQueueStrategy Simulation.Aivika.QueueStrategy.SIRO
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DeletingQueueStrategy Simulation.Aivika.QueueStrategy.StaticPriorities
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DequeueStrategy Simulation.Aivika.QueueStrategy.FCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DequeueStrategy Simulation.Aivika.QueueStrategy.LCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DequeueStrategy Simulation.Aivika.QueueStrategy.SIRO
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.DequeueStrategy Simulation.Aivika.QueueStrategy.StaticPriorities
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.EnqueueStrategy Simulation.Aivika.QueueStrategy.FCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.EnqueueStrategy Simulation.Aivika.QueueStrategy.LCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.EnqueueStrategy Simulation.Aivika.QueueStrategy.SIRO
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.PriorityQueueStrategy Simulation.Aivika.QueueStrategy.StaticPriorities GHC.Types.Double
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.QueueStrategy Simulation.Aivika.QueueStrategy.FCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.QueueStrategy Simulation.Aivika.QueueStrategy.LCFS
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.QueueStrategy Simulation.Aivika.QueueStrategy.SIRO
+ Simulation.Aivika.QueueStrategy: instance Simulation.Aivika.QueueStrategy.QueueStrategy Simulation.Aivika.QueueStrategy.StaticPriorities
+ Simulation.Aivika.Resource: instance GHC.Classes.Eq (Simulation.Aivika.Resource.Resource s)
+ Simulation.Aivika.Resource.Base: instance GHC.Classes.Eq (Simulation.Aivika.Resource.Base.Resource s)
+ Simulation.Aivika.Resource.Preemption: instance GHC.Classes.Eq Simulation.Aivika.Resource.Preemption.Resource
+ Simulation.Aivika.Resource.Preemption: instance GHC.Classes.Eq Simulation.Aivika.Resource.Preemption.ResourceActingItem
+ Simulation.Aivika.Resource.Preemption.Base: instance GHC.Classes.Eq Simulation.Aivika.Resource.Preemption.Base.Resource
+ Simulation.Aivika.Resource.Preemption.Base: instance GHC.Classes.Eq Simulation.Aivika.Resource.Preemption.Base.ResourceActingItem
+ Simulation.Aivika.Results: [resultComputationData] :: ResultComputation a -> ResultData a
+ Simulation.Aivika.Results: [resultComputationSignal] :: ResultComputation a -> ResultSignal
+ Simulation.Aivika.Results: [resultContainerData] :: ResultContainer e -> e
+ Simulation.Aivika.Results: [resultContainerId] :: ResultContainer e -> ResultId
+ Simulation.Aivika.Results: [resultContainerName] :: ResultContainer e -> ResultName
+ Simulation.Aivika.Results: [resultContainerSignal] :: ResultContainer e -> ResultSignal
+ Simulation.Aivika.Results: [resultObjectId] :: ResultObject -> ResultId
+ Simulation.Aivika.Results: [resultObjectName] :: ResultObject -> ResultName
+ Simulation.Aivika.Results: [resultObjectProperties] :: ResultObject -> [ResultProperty]
+ Simulation.Aivika.Results: [resultObjectSignal] :: ResultObject -> ResultSignal
+ Simulation.Aivika.Results: [resultObjectSummary] :: ResultObject -> ResultSource
+ Simulation.Aivika.Results: [resultObjectTypeId] :: ResultObject -> ResultId
+ Simulation.Aivika.Results: [resultPropertyId] :: ResultProperty -> ResultId
+ Simulation.Aivika.Results: [resultPropertyLabel] :: ResultProperty -> ResultName
+ Simulation.Aivika.Results: [resultPropertySource] :: ResultProperty -> ResultSource
+ Simulation.Aivika.Results: [resultSeparatorText] :: ResultSeparator -> String
+ Simulation.Aivika.Results: [resultSignalInIntegTimes] :: ResultPredefinedSignals -> Signal Double
+ Simulation.Aivika.Results: [resultSignalInStartTime] :: ResultPredefinedSignals -> Signal Double
+ Simulation.Aivika.Results: [resultSignalInStopTime] :: ResultPredefinedSignals -> Signal Double
+ Simulation.Aivika.Results: [resultValueData] :: ResultValue e -> ResultData e
+ Simulation.Aivika.Results: [resultValueId] :: ResultValue e -> ResultId
+ Simulation.Aivika.Results: [resultValueName] :: ResultValue e -> ResultName
+ Simulation.Aivika.Results: [resultValueSignal] :: ResultValue e -> ResultSignal
+ Simulation.Aivika.Results: [resultVectorId] :: ResultVector -> ResultId
+ Simulation.Aivika.Results: [resultVectorItems] :: ResultVector -> Array Int ResultSource
+ Simulation.Aivika.Results: [resultVectorName] :: ResultVector -> ResultName
+ Simulation.Aivika.Results: [resultVectorSignal] :: ResultVector -> ResultSignal
+ Simulation.Aivika.Results: [resultVectorSubscript] :: ResultVector -> Array Int ResultName
+ Simulation.Aivika.Results: [resultVectorSummary] :: ResultVector -> ResultSource
+ Simulation.Aivika.Results: instance (GHC.Arr.Ix i, GHC.Show.Show i, Simulation.Aivika.Results.ResultComputing m) => Simulation.Aivika.Results.ResultProvider (m (GHC.Arr.Array i GHC.Types.Double))
+ Simulation.Aivika.Results: instance (GHC.Arr.Ix i, GHC.Show.Show i, Simulation.Aivika.Results.ResultComputing m) => Simulation.Aivika.Results.ResultProvider (m (GHC.Arr.Array i GHC.Types.Int))
+ Simulation.Aivika.Results: instance (GHC.Show.Show i, GHC.Arr.Ix i, Simulation.Aivika.Results.ResultProvider p) => Simulation.Aivika.Results.ResultProvider (GHC.Arr.Array i p)
+ Simulation.Aivika.Results: instance (GHC.Show.Show i, GHC.Arr.Ix i, Simulation.Aivika.Results.ResultProvider p) => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Results.ResultArrayWithSubscript i p)
+ Simulation.Aivika.Results: instance (GHC.Show.Show s, Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue s)) => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Activity.Activity s a b)
+ Simulation.Aivika.Results: instance (GHC.Show.Show s, Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue s)) => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Resource.Resource s)
+ Simulation.Aivika.Results: instance (GHC.Show.Show s, Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue s)) => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Server.Server s a b)
+ Simulation.Aivika.Results: instance (GHC.Show.Show si, GHC.Show.Show sm, GHC.Show.Show so, Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue si), Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue sm), Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue so)) => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Queue.Queue si sm so a)
+ Simulation.Aivika.Results: instance (GHC.Show.Show sm, GHC.Show.Show so, Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue sm), Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue so)) => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Queue.Infinite.Queue sm so a)
+ Simulation.Aivika.Results: instance GHC.Base.Functor Simulation.Aivika.Results.ResultContainer
+ Simulation.Aivika.Results: instance GHC.Base.Functor Simulation.Aivika.Results.ResultValue
+ Simulation.Aivika.Results: instance GHC.Base.Monoid Simulation.Aivika.Results.ResultSignal
+ Simulation.Aivika.Results: instance GHC.Base.Monoid Simulation.Aivika.Results.Results
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Internal.Dynamics.Dynamics
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Internal.Event.Event
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Internal.Parameter.Parameter
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Internal.Simulation.Simulation
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Ref.Base.Ref
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Ref.Ref
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Results.ResultComputation
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Signal.Signalable
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing Simulation.Aivika.Var.Var
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Data.Vector.Vector GHC.Types.Double))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Data.Vector.Vector GHC.Types.Int))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.SamplingCounter GHC.Types.Double))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.SamplingCounter GHC.Types.Int))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.SamplingStats GHC.Types.Double))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.SamplingStats GHC.Types.Int))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.TimingCounter GHC.Types.Double))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.TimingCounter GHC.Types.Int))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.TimingStats GHC.Types.Double))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m (Simulation.Aivika.Statistics.TimingStats GHC.Types.Int))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m GHC.Base.String)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m GHC.Types.Double)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m GHC.Types.Int)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m [GHC.Types.Double])
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultComputing m => Simulation.Aivika.Results.ResultProvider (m [GHC.Types.Int])
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue ())
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue (Simulation.Aivika.Statistics.SamplingStats GHC.Types.Double))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue (Simulation.Aivika.Statistics.SamplingStats GHC.Types.Int))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue (Simulation.Aivika.Statistics.TimingStats GHC.Types.Double))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue (Simulation.Aivika.Statistics.TimingStats GHC.Types.Int))
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue GHC.Base.String)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue GHC.Types.Bool)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue GHC.Types.Double)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue GHC.Types.Int)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue Simulation.Aivika.QueueStrategy.FCFS)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue Simulation.Aivika.QueueStrategy.LCFS)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue Simulation.Aivika.QueueStrategy.SIRO)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue Simulation.Aivika.QueueStrategy.StaticPriorities)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue [GHC.Types.Double])
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultItemable (Simulation.Aivika.Results.ResultValue [GHC.Types.Int])
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Operation.Operation a b)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultProvider Simulation.Aivika.Arrival.ArrivalTimer
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultProvider Simulation.Aivika.Resource.Preemption.Resource
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultProvider p => Simulation.Aivika.Results.ResultProvider (Data.Vector.Vector p)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultProvider p => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Results.ResultListWithSubscript p)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultProvider p => Simulation.Aivika.Results.ResultProvider (Simulation.Aivika.Results.ResultVectorWithSubscript p)
+ Simulation.Aivika.Results: instance Simulation.Aivika.Results.ResultProvider p => Simulation.Aivika.Results.ResultProvider [p]
+ Simulation.Aivika.Results.Locale: instance GHC.Classes.Eq Simulation.Aivika.Results.Locale.ResultId
+ Simulation.Aivika.Results.Locale: instance GHC.Classes.Ord Simulation.Aivika.Results.Locale.ResultId
+ Simulation.Aivika.Results.Locale: instance GHC.Show.Show Simulation.Aivika.Results.Locale.ResultId
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.ResultTransform
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.Activity
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.ArrivalTimer
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.Operation
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.Queue
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.Resource
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.SamplingCounter
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.SamplingStats
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.Server
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.TimingCounter
+ Simulation.Aivika.Results.Transform: instance Simulation.Aivika.Results.Transform.ResultTransformer Simulation.Aivika.Results.Transform.TimingStats
+ Simulation.Aivika.Signal: [handleSignal] :: Signal a -> (a -> Event ()) -> Event DisposableEvent
+ Simulation.Aivika.Signal: [readSignalable] :: Signalable a -> Event a
+ Simulation.Aivika.Signal: [signalableChanged_] :: Signalable a -> Signal ()
+ Simulation.Aivika.Signal: delaySignal :: Double -> Signal a -> Signal a
+ Simulation.Aivika.Signal: delaySignalM :: Event Double -> Signal a -> Signal a
+ Simulation.Aivika.Signal: instance GHC.Base.Functor Simulation.Aivika.Signal.Signal
+ Simulation.Aivika.Signal: instance GHC.Base.Functor Simulation.Aivika.Signal.Signalable
+ Simulation.Aivika.Signal: instance GHC.Base.Monoid (Simulation.Aivika.Signal.Signal a)
+ Simulation.Aivika.Signal: instance GHC.Base.Monoid a => GHC.Base.Monoid (Simulation.Aivika.Signal.Signalable a)
+ Simulation.Aivika.Signal: instance GHC.Classes.Eq (Simulation.Aivika.Signal.SignalHandler a)
+ Simulation.Aivika.Simulation: runSimulationByIndex :: Simulation a -> Specs -> Int -> Int -> IO a
+ Simulation.Aivika.Specs: [spcDT] :: Specs -> Double
+ Simulation.Aivika.Specs: [spcGeneratorType] :: Specs -> GeneratorType
+ Simulation.Aivika.Specs: [spcMethod] :: Specs -> Method
+ Simulation.Aivika.Specs: [spcStartTime] :: Specs -> Double
+ Simulation.Aivika.Specs: [spcStopTime] :: Specs -> Double
+ Simulation.Aivika.Statistics: [samplingCounterStats] :: SamplingCounter a -> SamplingStats a
+ Simulation.Aivika.Statistics: [samplingCounterValue] :: SamplingCounter a -> a
+ Simulation.Aivika.Statistics: [samplingStatsCount] :: SamplingStats a -> !Int
+ Simulation.Aivika.Statistics: [samplingStatsMax] :: SamplingStats a -> !a
+ Simulation.Aivika.Statistics: [samplingStatsMean2] :: SamplingStats a -> !Double
+ Simulation.Aivika.Statistics: [samplingStatsMean] :: SamplingStats a -> !Double
+ Simulation.Aivika.Statistics: [samplingStatsMin] :: SamplingStats a -> !a
+ Simulation.Aivika.Statistics: [timingCounterStats] :: TimingCounter a -> TimingStats a
+ Simulation.Aivika.Statistics: [timingCounterValue] :: TimingCounter a -> a
+ Simulation.Aivika.Statistics: [timingStatsCount] :: TimingStats a -> !Int
+ Simulation.Aivika.Statistics: [timingStatsLastTime] :: TimingStats a -> !Double
+ Simulation.Aivika.Statistics: [timingStatsLast] :: TimingStats a -> !a
+ Simulation.Aivika.Statistics: [timingStatsMaxTime] :: TimingStats a -> !Double
+ Simulation.Aivika.Statistics: [timingStatsMax] :: TimingStats a -> !a
+ Simulation.Aivika.Statistics: [timingStatsMinTime] :: TimingStats a -> !Double
+ Simulation.Aivika.Statistics: [timingStatsMin] :: TimingStats a -> !a
+ Simulation.Aivika.Statistics: [timingStatsStartTime] :: TimingStats a -> !Double
+ Simulation.Aivika.Statistics: [timingStatsSum2] :: TimingStats a -> !Double
+ Simulation.Aivika.Statistics: [timingStatsSum] :: TimingStats a -> !Double
+ Simulation.Aivika.Statistics: instance (GHC.Show.Show a, Simulation.Aivika.Statistics.TimingData a) => GHC.Show.Show (Simulation.Aivika.Statistics.TimingCounter a)
+ Simulation.Aivika.Statistics: instance (GHC.Show.Show a, Simulation.Aivika.Statistics.TimingData a) => GHC.Show.Show (Simulation.Aivika.Statistics.TimingStats a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Eq a => GHC.Classes.Eq (Simulation.Aivika.Statistics.SamplingCounter a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Eq a => GHC.Classes.Eq (Simulation.Aivika.Statistics.SamplingStats a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Eq a => GHC.Classes.Eq (Simulation.Aivika.Statistics.TimingCounter a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Eq a => GHC.Classes.Eq (Simulation.Aivika.Statistics.TimingStats a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Ord a => GHC.Classes.Ord (Simulation.Aivika.Statistics.SamplingCounter a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Ord a => GHC.Classes.Ord (Simulation.Aivika.Statistics.SamplingStats a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Ord a => GHC.Classes.Ord (Simulation.Aivika.Statistics.TimingCounter a)
+ Simulation.Aivika.Statistics: instance GHC.Classes.Ord a => GHC.Classes.Ord (Simulation.Aivika.Statistics.TimingStats a)
+ Simulation.Aivika.Statistics: instance GHC.Show.Show a => GHC.Show.Show (Simulation.Aivika.Statistics.SamplingCounter a)
+ Simulation.Aivika.Statistics: instance GHC.Show.Show a => GHC.Show.Show (Simulation.Aivika.Statistics.SamplingStats a)
+ Simulation.Aivika.Statistics: instance Simulation.Aivika.Statistics.ConvertableToDouble GHC.Types.Double
+ Simulation.Aivika.Statistics: instance Simulation.Aivika.Statistics.ConvertableToDouble GHC.Types.Int
+ Simulation.Aivika.Statistics: instance Simulation.Aivika.Statistics.SamplingData GHC.Types.Double
+ Simulation.Aivika.Statistics: instance Simulation.Aivika.Statistics.SamplingData GHC.Types.Int
+ Simulation.Aivika.Statistics: instance Simulation.Aivika.Statistics.SamplingData a => GHC.Base.Monoid (Simulation.Aivika.Statistics.SamplingStats a)
+ Simulation.Aivika.Statistics: instance Simulation.Aivika.Statistics.TimingData GHC.Types.Double
+ Simulation.Aivika.Statistics: instance Simulation.Aivika.Statistics.TimingData GHC.Types.Int
+ Simulation.Aivika.Stream: [runStream] :: Stream a -> Process (a, Stream a)
+ Simulation.Aivika.Stream: instance GHC.Base.Alternative Simulation.Aivika.Stream.Stream
+ Simulation.Aivika.Stream: instance GHC.Base.Applicative Simulation.Aivika.Stream.Stream
+ Simulation.Aivika.Stream: instance GHC.Base.Functor Simulation.Aivika.Stream.Stream
+ Simulation.Aivika.Stream: instance GHC.Base.Monoid (Simulation.Aivika.Stream.Stream a)
+ Simulation.Aivika.Transform: [runTransform] :: Transform a b -> Dynamics a -> Simulation (Dynamics b)
+ Simulation.Aivika.Transform: instance Control.Arrow.Arrow Simulation.Aivika.Transform.Transform
+ Simulation.Aivika.Transform: instance Control.Arrow.ArrowLoop Simulation.Aivika.Transform.Transform
+ Simulation.Aivika.Transform: instance Control.Category.Category Simulation.Aivika.Transform.Transform
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Int.Int16
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Int.Int32
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Int.Int64
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Int.Int8
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Types.Bool
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Types.Char
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Types.Double
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Types.Float
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Types.Int
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Types.Word
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Word.Word16
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Word.Word32
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Word.Word64
+ Simulation.Aivika.Unboxed: instance Simulation.Aivika.Unboxed.Unboxed GHC.Word.Word8
- Simulation.Aivika.Statistics: samplingStatsSummary :: Show a => SamplingStats a -> Int -> ShowS
+ Simulation.Aivika.Statistics: samplingStatsSummary :: (Show a) => SamplingStats a -> Int -> ShowS
- Simulation.Aivika.SystemDynamics: (./=.) :: Eq a => Dynamics a -> Dynamics a -> Dynamics Bool
+ Simulation.Aivika.SystemDynamics: (./=.) :: (Eq a) => Dynamics a -> Dynamics a -> Dynamics Bool
- Simulation.Aivika.SystemDynamics: (.<.) :: Ord a => Dynamics a -> Dynamics a -> Dynamics Bool
+ Simulation.Aivika.SystemDynamics: (.<.) :: (Ord a) => Dynamics a -> Dynamics a -> Dynamics Bool
- Simulation.Aivika.SystemDynamics: (.<=.) :: Ord a => Dynamics a -> Dynamics a -> Dynamics Bool
+ Simulation.Aivika.SystemDynamics: (.<=.) :: (Ord a) => Dynamics a -> Dynamics a -> Dynamics Bool
- Simulation.Aivika.SystemDynamics: (.==.) :: Eq a => Dynamics a -> Dynamics a -> Dynamics Bool
+ Simulation.Aivika.SystemDynamics: (.==.) :: (Eq a) => Dynamics a -> Dynamics a -> Dynamics Bool
- Simulation.Aivika.SystemDynamics: (.>.) :: Ord a => Dynamics a -> Dynamics a -> Dynamics Bool
+ Simulation.Aivika.SystemDynamics: (.>.) :: (Ord a) => Dynamics a -> Dynamics a -> Dynamics Bool
- Simulation.Aivika.SystemDynamics: (.>=.) :: Ord a => Dynamics a -> Dynamics a -> Dynamics Bool
+ Simulation.Aivika.SystemDynamics: (.>=.) :: (Ord a) => Dynamics a -> Dynamics a -> Dynamics Bool
- Simulation.Aivika.SystemDynamics: maxDynamics :: Ord a => Dynamics a -> Dynamics a -> Dynamics a
+ Simulation.Aivika.SystemDynamics: maxDynamics :: (Ord a) => Dynamics a -> Dynamics a -> Dynamics a
- Simulation.Aivika.SystemDynamics: minDynamics :: Ord a => Dynamics a -> Dynamics a -> Dynamics a
+ Simulation.Aivika.SystemDynamics: minDynamics :: (Ord a) => Dynamics a -> Dynamics a -> Dynamics a
Files
- CHANGELOG.md +10/−0
- Simulation/Aivika/Internal/Process.hs +5/−5
- Simulation/Aivika/Internal/Simulation.hs +20/−0
- Simulation/Aivika/Signal.hs +36/−0
- Simulation/Aivika/Simulation.hs +1/−0
- Simulation/Aivika/Task.hs +8/−8
- aivika.cabal +4/−3
CHANGELOG.md view
@@ -1,3 +1,13 @@+Version 4.3.1+-----++* Improved the timeoutProcessUsingId function: no need in additional cancellation signal.+ Thanks to Gabriel Garcia who pointed to this issue and suggested a possible solution.++* Added functions delaySignal and delaySignalM to delay a signal in time through + the event queue.++* Added function runSimulationByIndex to run the simulation with an arbitrary run index. Version 4.3 -----
Simulation/Aivika/Internal/Process.hs view
@@ -673,10 +673,9 @@ do s <- liftSimulation newSignalSource timeoutPid <- liftSimulation newProcessId spawnProcessUsingIdWith CancelChildAfterParent timeoutPid $- finallyProcess- (holdProcess timeout)- (liftEvent $- cancelProcessWithId pid)+ do holdProcess timeout+ liftEvent $+ cancelProcessWithId pid spawnProcessUsingIdWith CancelChildAfterParent pid $ do r <- liftIO $ newIORef Nothing finallyProcess@@ -686,7 +685,8 @@ (\e -> liftIO $ writeIORef r $ Just (Left e))) (liftEvent $- do x <- liftIO $ readIORef r+ do cancelProcessWithId timeoutPid+ x <- liftIO $ readIORef r triggerSignal s x) x <- processAwait $ publishSignal s case x of
Simulation/Aivika/Internal/Simulation.hs view
@@ -21,6 +21,7 @@ invokeSimulation, runSimulation, runSimulations,+ runSimulationByIndex, -- * Error Handling catchSimulation, finallySimulation,@@ -74,6 +75,25 @@ m Run { runSpecs = sc, runIndex = 1, runCount = 1,+ runEventQueue = q,+ runGenerator = g }++-- | Run the simulation by the specified specs and run index in series.+runSimulationByIndex :: Simulation a+ -- ^ the simulation model+ -> Specs+ -- ^ the simulation specs+ -> Int+ -- ^ the number of runs in series+ -> Int+ -- ^ the index of the current run (started from 1)+ -> IO a+runSimulationByIndex (Simulation m) sc runs index =+ do q <- newEventQueue sc+ g <- newGenerator $ spcGeneratorType sc+ m Run { runSpecs = sc,+ runIndex = index,+ runCount = runs, runEventQueue = q, runGenerator = g }
Simulation/Aivika/Signal.hs view
@@ -40,6 +40,9 @@ newSignalInIntegTimes, newSignalInStartTime, newSignalInStopTime,+ -- * Delaying Signal+ delaySignal,+ delaySignalM, -- * Signal History SignalHistory, signalHistorySignal,@@ -397,6 +400,39 @@ case t0 of Nothing -> Nothing Just t0 -> Just (t - t0) }+ }++-- | Delay the signal values for the specified time interval.+delaySignal :: Double -> Signal a -> Signal a+delaySignal delta m =+ Signal { handleSignal = \h ->+ do r <- liftIO $ newIORef False+ h <- handleSignal m $ \a ->+ Event $ \p ->+ invokeEvent p $+ enqueueEvent (pointTime p + delta) $ + do x <- liftIO $ readIORef r+ unless x $ h a+ return $ DisposableEvent $+ disposeEvent h >>+ (liftIO $ writeIORef r True)+ }++-- | Delay the signal values for time intervals recalculated for each value.+delaySignalM :: Event Double -> Signal a -> Signal a+delaySignalM delta m =+ Signal { handleSignal = \h ->+ do r <- liftIO $ newIORef False+ h <- handleSignal m $ \a ->+ Event $ \p ->+ do delta' <- invokeEvent p delta+ invokeEvent p $+ enqueueEvent (pointTime p + delta') $ + do x <- liftIO $ readIORef r+ unless x $ h a+ return $ DisposableEvent $+ disposeEvent h >>+ (liftIO $ writeIORef r True) } -- | Show the debug message with the current simulation time.
Simulation/Aivika/Simulation.hs view
@@ -16,6 +16,7 @@ SimulationLift(..), runSimulation, runSimulations,+ runSimulationByIndex, -- * Error Handling catchSimulation, finallySimulation,
Simulation/Aivika/Task.hs view
@@ -120,21 +120,21 @@ return (t, m) -- | Run the process with the specified identifier in background and--- return the corresponded task immediately.+-- return the corresponding task immediately. runTaskUsingId :: ProcessId -> Process a -> Event (Task a) runTaskUsingId pid p = do (t, m) <- newTaskUsingId pid p runProcessUsingId pid m return t --- | Run the process in background and return the corresponded task immediately.+-- | Run the process in background and return the corresponding task immediately. runTask :: Process a -> Event (Task a) runTask p = do pid <- liftSimulation newProcessId runTaskUsingId pid p -- | Enqueue the process that will be started at the specified time with the given--- identifier from the event queue. It returns the corresponded task immediately.+-- identifier from the event queue. It returns the corresponding task immediately. enqueueTaskUsingId :: Double -> ProcessId -> Process a -> Event (Task a) enqueueTaskUsingId time pid p = do (t, m) <- newTaskUsingId pid p@@ -142,30 +142,30 @@ return t -- | Enqueue the process that will be started at the specified time from the event queue.--- It returns the corresponded task immediately.+-- It returns the corresponding task immediately. enqueueTask :: Double -> Process a -> Event (Task a) enqueueTask time p = do pid <- liftSimulation newProcessId enqueueTaskUsingId time pid p -- | Run using the specified identifier a child process in background and return--- immediately the corresponded task.+-- immediately the corresponding task. spawnTaskUsingId :: ProcessId -> Process a -> Process (Task a) spawnTaskUsingId = spawnTaskUsingIdWith CancelTogether --- | Run a child process in background and return immediately the corresponded task.+-- | Run a child process in background and return immediately the corresponding task. spawnTask :: Process a -> Process (Task a) spawnTask = spawnTaskWith CancelTogether -- | Run using the specified identifier a child process in background and return--- immediately the corresponded task.+-- immediately the corresponding task. spawnTaskUsingIdWith :: ContCancellation -> ProcessId -> Process a -> Process (Task a) spawnTaskUsingIdWith cancellation pid p = do (t, m) <- liftEvent $ newTaskUsingId pid p spawnProcessUsingIdWith cancellation pid m return t --- | Run a child process in background and return immediately the corresponded task.+-- | Run a child process in background and return immediately the corresponding task. spawnTaskWith :: ContCancellation -> Process a -> Process (Task a) spawnTaskWith cancellation p = do pid <- liftSimulation newProcessId
aivika.cabal view
@@ -1,5 +1,5 @@ name: aivika-version: 4.3+version: 4.3.1 synopsis: A multi-paradigm simulation library description: Aivika is a multi-paradigm simulation library with a strong emphasis@@ -73,7 +73,8 @@ . All libraries were tested on Linux, Windows and OS X. .- The PDF documentation is available on the Aivika Wiki [5] website.+ The PDF documentation and installation instructions are + available on the Aivika Wiki [5] website. . \[1] <http://hackage.haskell.org/package/aivika-experiment> .@@ -93,7 +94,7 @@ copyright: (c) 2009-2015. David Sorokin <david.sorokin@gmail.com> author: David Sorokin maintainer: David Sorokin <david.sorokin@gmail.com>-homepage: http://github.com/dsorokin/aivika+homepage: http://www.aivikasoft.com/en/products/aivika.html cabal-version: >= 1.10 build-type: Simple tested-with: GHC == 7.10.1