aivika-5.7: A multi-method simulation library

CopyrightCopyright (c) 2009-2017 David Sorokin <david.sorokin@gmail.com>
LicenseBSD3
MaintainerDavid Sorokin <david.sorokin@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Simulation.Aivika.Specs

Contents

Description

Tested with: GHC 8.0.1

It defines the simulation specs and functions for this data type.

Synopsis

Simulation Specs

data Specs Source #

It defines the simulation specs.

Constructors

Specs 

Fields

data Method Source #

It defines the integration method.

Constructors

Euler

Euler's method

RungeKutta2

the 2nd order Runge-Kutta method

RungeKutta4

the 4th order Runge-Kutta method

RungeKutta4b

the 4th order Runge-Kutta 3/8-method

Auxiliary Functions

basicTime :: Specs -> Int -> Int -> Double Source #

Returns a simulation time for the integration point specified by the specs, iteration and phase.

integIterationBnds :: Specs -> (Int, Int) Source #

Returns the first and last integration iterations.

integIterationHiBnd :: Specs -> Int Source #

Returns the last integration iteration.

integIterationLoBnd :: Specs -> Int Source #

Returns the first integration iteration, i.e. zero.

integPhaseBnds :: Specs -> (Int, Int) Source #

Returns the first and last integration phases.

integPhaseHiBnd :: Specs -> Int Source #

Returns the last integration phase, 0 for Euler's method, 1 for RK2 and 3 for RK4.

integPhaseLoBnd :: Specs -> Int Source #

Returns the first integration phase, i.e. zero.

integTimes :: Specs -> [Double] Source #

Return the integration time values.

timeGrid :: Specs -> Int -> [(Int, Double)] Source #

Return the indexed time values in the grid by specified size.