Safe Haskell | None |
---|---|
Language | Haskell2010 |
- newtype RHS state = RHS {
- _state :: (state, HistorySnapshot state, InputSnapshot) -> state
- newtype HistorySnapshot state = Hist {
- _histsnap :: state
- newtype Input = Input {}
- newtype InputSnapshot = Inp {}
- type Stepper = forall state. (Functor state, VectorSpace (state Double), Num (Scalar (state Double))) => Scalar (state Double) -> RHS (state Double) -> state Double -> (HistorySnapshot (state Double), HistorySnapshot (state Double)) -> (Double, Double) -> state Double
Documentation
DDE right-hand side.
Parameter state
is and abstraction of a dynamical system's state,
i.e. it can be a vector of any length (x(t), y(t), ...).
RHS | |
|
newtype HistorySnapshot state Source #
Contains only the required snapshot of history to make steppers (e.g. Heun) work. There could be several delay variables
type Stepper = forall state. (Functor state, VectorSpace (state Double), Num (Scalar (state Double))) => Scalar (state Double) -> RHS (state Double) -> state Double -> (HistorySnapshot (state Double), HistorySnapshot (state Double)) -> (Double, Double) -> state Double Source #
DDE stepper (all delays are equal).
Stepper is a function of the following arguments:
- Integration step
- DDE right-hand side
- Current state vector
(x(t), y(t), ...)
- Two subsequent history snapshots
- Two subsequent inputs
The result (step) is a new state vector.