Pulse Block
Generates a pulse (impulse) of a specified volume at a given time, optionally repeating at regular intervals.
Open Pulse in BlockWerk →Description
The Pulse block generates a discrete injection or "impulse" of a specific quantity at a given time. In System Dynamics, this is typically used to represent a one-time event (like a sudden investment or a shock to the system) or a periodic event (like a monthly paycheck).
Mathematical Model
Output = Volume/DT (at first_pulse + n*interval)
The Pulse block produces a spike such that the integral of the spike over one time step equals the specified volume.
$$Output = \begin{cases} \frac{Volume}{\Delta t} & \text{if } t = StartTime + n \cdot Interval \\ 0 & \text{otherwise} \end{cases}$$
Parameters
volume
The total amount to be injected by the pulse. When connected to a Stock via a Flow, the Stock will increase by exactly this volume.
- Default: 1
- Tooltip: Total amount added by the pulse
startTime
The simulation time at which the first pulse occurs.
- Default: 1
- Tooltip: Time of the first pulse
interval
The time period between subsequent pulses. If set to 0, only one pulse occurs.
- Default: 0
- Tooltip: Time between repeat pulses (0 for one-time)
Ports
out (Output)
The pulse signal.
See Also
- Stock: Pulses are often used as inflows to Stocks.
- SignalGenerator: For continuous periodic waveforms (sine, square, etc.).
- Step: For a permanent change in a signal level.