Category Archives: Loop Impact

Force and Impact

In mechanics, force produces acceleration in an object. The same concept can be used in system dynamics to describe how any time-varying signal can cause acceleration in a stock – a dynamic variable. That signal may be exogenous or come from another stock. In the Newtonian Interpretive Framework, the effect of the force is measured by impact, the ratio of the acceleration of the stock to its rate of change – net flow; the equivalent of velocity. If x is a stock, the impact of all forces on the stock gives:

Impact Equation (1)

Thus, force and impact have different sign conventions depending on the net flow dx/dt.

To compare these differences, imagine you are sitting at the origin where there is a positive force on nearby objects – repelling force. If the object is at rest, the force accelerates it, causing it to move away. If the object is already moving away, the force still accelerates it, moving it away faster. The positive force produces positive acceleration. From the impact equation (1), the impact of the force on the stock is positive as both numerator and denominator are positive.

But if an object is moving toward you, the positive force tries to slow the object in order to stop it and send it away again. Thus, the object decelerates. A positive force now has a negative effect on the object. From equation (1) the impact of the force on the object is negative as the denominator dx/dt is negative for an object move toward the origin.

Therefore, a positive force may have a positive impact, or a negative impact, depending on whether the object is moving away, or moving towards, the origin. Impact picks up the effect of the force on the object.

The same comparison between force and impact applies in system dynamics. Consider a stock y exerting a positive force on stock x, figure1. A positive force has g > 0. Stock x is also subject to a negative force, the balancing feedback loop B, a resistive force.

Figure 1

The flow g is set to a constant, g = 1, so that y increases uniformly, starting from zero. Thus, the force of y on x is constant and positive, equal to one. With x starting at 100, the force from the balancing loop is much larger than that of y; thus, x declines, figure 2. Thus, dx/dt < 0 and the impact of y on x is negative, the dashed line in figure 2. A positive force, but a negative impact. The impact of loop B is also negative as the loop is balancing, dotted line figure 2.

Figure 2. Stock x, left axis. The impacts of y and loop B on x. Positive force, g = 1.

Initially, loop B exerts the strongest force on x, indicated by its impact having greater magnitude that that from y. At time 4.5, the impact of y exceeds the balancing loop. It is this exogenous force that is responsible for bringing the stock to rest, a momentary equilibrium, at time 8.0 [1].

After this minimum point, the stock x starts to increase again, driven by the force from y now acting as an accelerator. A positive force with a positive impact, indicated in figure 2 by the dashed line jumping from negative to positive. Impact from y on x is momentarily infinite at x‘s minimum, as dx/dt = 0.

From time = 8 onward, the balancing loop B is resisting the positive force from y, but it remains smaller. As time tends to infinity, the impact of y on x tends to the absolute value of the impact of B, with x tending to uniform increase.

The situation is reversed if the force is negative – an attracting force. In the model of figure 1, a negative force occurs if g < 0 [2]. Let g = -1 with y starting at 50. Stock x increases to a maximum, then declines, figure 3.

Figure 3. Stock x, left axis. The impacts of y and loop B on x. Positive force, g = -1.

Figure 3 shows the impact of y on x is the same as that for the positive force, figure 2. Up to the maximum point, the negative force has a negative impact, slowing the growth of x. After the maximum, the negative force has a positive impact, accelerating the decline of x.

An advantage of measuring the force by impact is that the sign of the impact matches the type of behaviour, plus mean acceleration, minus meaning deceleration. It follows that impact is related to the curvature in the graph of the stock. A further advantage of impact is that if the force comes from a first-order loop, impact is positive, with a negative sign for balancing loops. Thus, impact is a natural way of measuring force in system dynamics.

For more information read Hayward J. & Roach P.A. (2017). Newton’s Laws as an Interpretive Framework in System Dynamics. System Dynamics Review, 33(3-4), 183-218.  DOI: 10.1002/sdr.1586.


[1] Although a first-order balancing loop can bring a stock to rest (equilibrium), it only does so in the limit as time tends to infinity. It requires an exogenous effect, or a higher-order loop, to bring a stock to rest in a finite time.

[2] The force from y to x can also be made negative by altering the connection between y and the flow into x such that a rising y gives falling flow, e.g. f1 = 1/y.

Balancing Loops: Growth and Decline

Early on in a system dynamics (SD) course, it is usual for a learner to be introduced to two types of first-order balancing loops: one where the stock grows, and one where the stock declines.

Death Process

Take the decline situation first. If there are no births or migration, a population will decline over time through deaths, figure 1:

Figure 1: Model of Death Process

The population declines exponentially, figure 2. I have sometimes heard it said that the stock declines because of the balancing loop. But this is not true. The role of the balancing loop is to SLOW the decline. The stock declines because deaths are an outflow subtracting people from the stock! If there were no loop, the decline would be straight. By the way, there are issues with this model, which I will return to at the end.

Figure 2: Graph of the Death Process – Negative Exponential Decline

In figure 1 note that loop B has one positive polarity and one negative polarity. The plus is a same way link, and the minus is a subtract from link because it is attached to a stock. It is the subtract from link that ensures the stock declines. You could read this as: the fewer in the population, the fewer deaths, thus fewer are subtracted from the population. The “fewer subtracted” is the control that slows the decline. Do not say: the more population, the more deaths, thus the less population! Firstly, in this case, there cannot be “more population” as there is only an outflow. Secondly, even if there were an inflow that could allow more population, the last part should then read: “the more is subtracted from the stock.” It is then clear the action of the loop is opposing the initial intention, thus is giving control.

Goal-Seeking Process

The other example of a balancing loop SD learners usually see is the goal-seeking process. Employees are recruited with the rate of recruitment proportional to the vacancies. There is a target number of employees. Thus, the vacancies are the target minus the shortfall, figure 3.

Figure 3: Goal-Seeking Model

The population grows as new employees are recruited, but the growth slows down as the vacancies are reduced, figure 4. The more employees, the fewer vacancies, thus less recruitment, therefore the fewer employees added. As in the death process, the role of the balancing loop is to slow the changes, but this time it slows the growth of the stock. If there were no loop, then growth would be linear. The curve is negative exponential, but it approaches the limit from below, unlike figure 2, where it is approached from above.

Figure 4: Graph of the Goal Seeking Process – Negative Exponential from Below

The negative polarity in figure 3 is an opposite way link. The plus on the connector into the recruitment flow is a same way link. However, the plus on the flow into the stock is an add to link. Thus positive polarities are interpreted differently if the plus is on a connector or a flow, same way, add to. Likewise with negative polarities: opposite way for a connector, subtract from for a flow.

First-order balancing loops are decelerating forces. They oppose uniform changes in a stock. Contrast this with first-order reinforcing loops which are accelerating forces, which enhance the changes in the stock. Put another way, first-order balancing loops are dissipation forces whereas first-order reinforcing loops are generative forces, a bit like a heat source. This is the sociomechanics interpretation.


I said earlier there were some issues with the death model of figure 1. I set a death rate of 10%, which gives a typical lifetime of 10 years (or thereabouts as there are logs involved.) Yet there are still many individuals left after 10 years. Indeed there are still some after 40 years! Why? The type of SD used here has continuous time. The stock is an aggregation of individuals, and it is assumed the individuals are homogeneously mixed in all their properties – including age – at all times. But if deaths are the only process, then this assumption will be broken, because as time passes, the remaining individuals get older. In fact, the stock would decline as a straight line as the death rate would increase as the average age of the stock goes up. This type of SD is not meant to capture this type of situation – instead, it needs incremental time and conveyors. In most models, births accompany the deaths so that the stock stays reasonably mixed in age structure. In these cases, the death model works fine.

Reinforcing Loops and Growth

I have often seen the following causal loop used in system dynamics presentations to explain a reinforcing loop:

Figure 1: Causal Loop Diagram of Simple Birth Process

The argument then runs: the more population, the more births, hence more in the population; thus the population grows. Fortunately, I never hear people reverse the argument: the fewer in the population, the fewer births, hence fewer in the population! Clearly not true. If the only process on the population is births, it must grow. In fact, the population will grow even if births stay constant.

The problem with a causal loop diagram is that it does not give any information about which variables are stocks, and thus accumulate. Every causal loop must have at least one stock; otherwise, time does not advance, and there is a circular definition. In the above, Population is a stock, and births are a flow. Thus, the argument should read: the more population, the more births, thus the more are added to the population.

The + sign on the link to births means “same way” that is the births change the same way as the population. If the population goes up, then so do births; if the population goes down so do the births.

However, the + sign on Population means “add to”. If the births go up, more are added to the population; however, if births go down, less are added to the population. But the population still increases because it is being added to.

The stock-flow diagram gives more information about the system:

Figure 2: Stock-Flow Diagram of Simple Birth Process

Now it is clear that the stock Population is being added to. The reinforcing loop describes a process where the births being added to the population is increasing. Thus the population growth accelerates:

Figure 3: Accelerating Growth for 1-Stock Reinforcing Loop (per capita rate of growth 0.2 per unit time)

The reinforcing loop gives accelerating growth. Acceleration is the characteristic behaviour of a reinforcing loop containing only one stock. Acceleration is portrayed as a curve becoming more vertical, figure 3. If, however, the reinforcing loop is broken:

Figure 4: Stock-Flow diagram of Constant Growth

then the resulting growth has no acceleration and appears as a straight line:

Figure 5: Uniform Growth of a Stock with a Constant Flow (births = 1 person per year)

The absence of the loop does not mean the absence of growth, but the absence of acceleration. If there is growth, then it is uniform.

In this way a reinforcing loop (figure 2) can be pictured as a force on a stock, producing acceleration (figure 3) – the equivalent of Newton’s second law of motion. The absence of a loop (figure 4) is like the absence of a force – Newton’s first law of motion – producing uniform growth (figure 5). This analogy is an example of the Newtonian Interpretative Framework which lies at the heart of Sociomechanics, which seeks to explain social behaviour using ideas from mechanics.