Common block inputs and parameters
The inputs listed below are the names of common input ports that are shown on the left side of a block.
Value input
Most calculation blocks have one main input which is called Value. This is the value on which the block performs its main calculation.
Value 1 and
Value 2 inputs
Blocks may have a number of similar inputs, which may be labelled
Value 1,
Value 2, and so on. You can find such inputs with the
Difference block (see also the example in
Value types) or with the
AND and
OR logic blocks. Typically, there is nothing significant as to which input is used.
Reset input
Blocks that maintain some internal state may also have a
Reset input, which is typically a
pulse type. This does not have to be connected, but can be used to explicitly control on which range of readings a block should perform a calculation. For example, a model that monitors vehicle journeys may reset on the engine starting, which signifies the beginning of a journey. See also
Value types for an example that illustrates the
Reset input.
Sample input and
Output Threshold parameter
Blocks typically re-calculate their output when a new input is received. Some blocks may also generate output at some point after receiving an input, either because of time delay parameters set (for example, with the Missing Data or Time Delay blocks), or because their output may change over time even if the input value is constant. For example, the Integral block with a positive input generates an ever-increasing output until its window is full (or indefinitely if no duration has been set, when the block is calculating the integral over an unbounded window).
As with real-world sensors, it is not practical to create a continuously changing output. As well as generating an output if their input value changes, such blocks may also have a Sample input which triggers the block to re-evaluate and generate a new output, even if the input has not received any new value and the output has not changed by a significant amount. This is useful if there is a specific point in time when the output of the block should be calculated, as its output is going to be used at a later point in the model.
Alternatively, such blocks may have an Output Threshold parameter, which is used to control how frequently the output is re-calculated. When set, the block determines when its output will change by the output threshold, and when that occurs, even if it is not as a result of any new input value, the block generates an output value.
The Output Threshold should be set taking into account what error margins will exist on the input value (real-world physical sensors have some limited precision and accuracy in the property they are measuring), and what precision is required in the output.
Take care to avoid
Output Threshold values that are too large or too small. If the values are too large, the block does not generate a new output when needed (unless the
Sample input is used). If the values are too small, the block limits how frequently it generates output; you can configure this by editing the
Configuration.mon file and modifying the value set for the
MINIMUM_WAIT_TIME_SECS constant (see also
Configuring model timeouts). The scale of appropriate values varies depending on what the magnitude of the input value is. If
Output Threshold is not set, then the block only generates new outputs if it receives an input (this may be appropriate if it is receiving frequent inputs on the value, or if the
Sample input is being used).