stopping-definition
to stop at a given bucket.
`stopping-definition` to stop at a given bucket.
stopping-definition
to stop at a given iteration.
`stopping-definition` to stop at a given iteration.
stopping-definition
to stop right now.
`stopping-definition` to stop right now.
Stopping registry contains all stopping-definition
.
Stopping registry contains all `stopping-definition`. ![Entities](archi/simulation_engine/stopping_registry.png)
A reason why the scheduler
stops. A stopping-cause
contains:
context
data describing the context of the stopping-criteria
, note its schema is defined freely by each stopping-definition
.current-event
the event that is about to be executed now. It could be null, if future-event is nil and no first event found.stopping-criteria
telling the intent of the user to stop.A reason why the `scheduler` stops. A `stopping-cause` contains: * `context` data describing the context of the `stopping-criteria`, note its schema is defined freely by each `stopping-definition`. * `current-event` the event that is about to be executed now. It could be null, if future-event is nil and no first event found. * `stopping-criteria` telling the intent of the user to stop. ![Entities](archi/simulation_engine/stopping_cause.png)
Declares a stopping-criteria
to instantiate stopping-definition
s, it precises the params
necessary for stopping-evaluation
.
The data are:
model-end?
is set to true
if the stopping-criteria is one possible end of the model. Note that more than one is possible for the same model. Note that these model stopping-criteria
are not supposed to be linked with anything else than the business model itself (not the rendering, not the control/computation, ...)params
is a map of parameters, which content is defined by the stopping-definition
.stopping-definition
is the stopping-definition
as found in the stopping-registry
.![entities][archi/simulation_engine/stopping_stopping-criteria.png]
Declares a `stopping-criteria` to instantiate `stopping-definition`s, it precises the `params` necessary for `stopping-evaluation`. The data are: * `model-end?` is set to `true` if the stopping-criteria is one possible end of the model. Note that more than one is possible for the same model. Note that these model `stopping-criteria` are not supposed to be linked with anything else than the business model itself (not the rendering, not the control/computation, ...) * `params` is a map of parameters, which content is defined by the `stopping-definition`. * `stopping-definition` is the `stopping-definition` as found in the `stopping-registry`. ![entities][archi/simulation_engine/stopping_stopping-criteria.png]
A stopping-definition
defines what could cause the scheduler to stop.
doc
describes the definition.id
name of the stopping-definition
next-possible?
tells if the next call of the scheduler
will raise the same error.stopping-evaluation
is the function to be called to evalute the criteria and decides if stops is true or not.Note that only stopping-definition
with stopping-evaluation
properly set are callable by users. Others are built-in stopping-definition
triggering stopping-cause
in the simulation-engine
bounded context.
A `stopping-definition` defines what could cause the scheduler to stop. * `doc` describes the definition. * `id` name of the `stopping-definition` * `next-possible?` tells if the next call of the `scheduler` will raise the same error. * `stopping-evaluation` is the function to be called to evalute the criteria and decides if stops is true or not. Note that only `stopping-definition` with `stopping-evaluation` properly set are callable by users. Others are built-in `stopping-definition` triggering `stopping-cause` in the `simulation-engine` bounded context. ![Entities](archi/simulation_engine/stopping_definition.png)
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close