Module type Cimula.Experiment2


module type Experiment2 = functor (Auto : Types.Rule) -> Types.Experiment
Parameters:
Auto : Types.Rule

val do_next_step : unit -> unit
Called once per time step.
val at_first_measurement : unit -> unit
Called only once.
val at_last_measurement : unit -> unit
val do_measurement : time:int -> (int -> unit) * (int -> unit)
Does the measurement defined by the experiment and returns two output functions (printing and drawing). These functions take the time as argument. Note that the three arguments time are different, the time given to the drawing_function doesn't take time_transient into account.

This is used to let the user watch the output of the previous measurement while computing the current one, and thus reduce the time before displaying the result of the current measurement when he presses a key.