Generation of system equations
In this section the method of generation of system equations is discussed. From
an augmented bond graph, using a step by step procedure, system equations may
be generated. We take the model of a simple single degree of freedom mass-spring-damper
system as the starting point.
The differential equations describing the dynamics of the system are written in terms of the states of the
system. All storage elements (I and C) correspond to stored state variables (P for momentum and Q for displacement, respectively) and
equations are written for their time derivatives (i.e. effort and flow).
These equations are derived in four steps as described below.
Observe what the elements (sources, I's, C's, and R's) are giving to the system and write down their equations looking at the causalities and using variables for strong bonds.
Write down equations for the junctions and the two-port elements for the variables for the strong bonds.
Replace the variables, which are expressed in terms of states in other equations. Continue sorting and replacement till the right side of the entire set of equations are expressed in terms of states and system parameters only.
If some equations are still not completely reduced, there is the existence of some kind of a loop (algebraic loop, causal loop or differential causality, as shall be discussed later). Try solving those as a set of linear equations either through substitution or matrix inversion.
And finally, erase all trivial equations other than those for derivatives of state variables and write them in terms of state variables.
Thus using the following steps, the equations for the above system would be
Step 1 :
e1=SE1
f3=P3/M3
e2=K2*Q2
e4=R4*f4=R4*f3 (by junction rule, f4=f3 and strong bond number is 3)
Step 2 :
e1-e2-e3-e4=0 or e3=e1-e2-e4
Step 3 :
e1=SE1
f3=P3/M3
e2=K2*Q2
e4=R4*P3/M3
e3=SE1-K2*Q2-R4*P3/M3
Step 4 :
DQ2=f2=f3
DP3=e3
where prefix 'D' stand for time derivative d/dt leads to
DQ2=P3/M3
DP3=SE1-K2*Q2-R4*P3/M3
The difference between equations derived from bond graphs and otherwise
are that there will be `N' sets of first order differential equations, where `N'
is the number of states. The term, number of states means the number of lumped parameter
storage elements I and C with integral causality present in a system.
The equation of motion for the system discussed above by traditional method is :
m d2x/dt2 + r * dx/dt + k*x = F(t).
The two state equations derived from a bond graph model (dropping suffixes) are
dP/dt = -r/m * P - k*Q + SE,
dQ/dt = 1/m*P,
where, P is momentum of m*dx/dt, Q is displacement or x and SE is F(t)).
From the second equation, P=m*dQ/dt, which when replaced in the first leads to
m*d2Q/dt2 = -r*dQ/dt - k*Q + F(t).
This equation corresponds to that derived through traditional method after
rearrangement.
However, manual derivation of equations for larger systems is not all
that simple.
For instance, derivation of system differential equations for the animated bond graph
model discussed in the causality section after proper causalling would lead to
formation of the so called algebraic loops.
Similarly, complexities and errors of various types, like Causal loops,
Power loops, and Differential Causalities may exist in the model of a system.
The method for derivation of their equations is described in corresponding sections.
Example -2
Here we take another example of a system with two-ports, whose model is shown below.

Then we follow the normal equation derivation steps.
Step 1 :
e1 = SE1
f2 = P2/M2
e3 = R3*f3=R3*f2=R3*P2/M2
f6 = P6/M6
e11 = K11*Q11
e12 = R12*f12 = R12*f9
f13 = P13/M13
Step 2 :
f1 = f2 = f4 = f3 = P3/M3
e2 = e1 - e3 - e4 = SE1 - R3*P2/M2 - e4
e4 = MU*f5 = MU*f6 = MU*P6/M6
e5 = MU*f4 = MU*f2 = MU*P2/M2
f5 = f7 = f6 = P6/M6
e6 = e5 - e7
f8 = r*f7 = r*P6/M6
e7 = r*e8 = r*e9
e8 = e10 = e9
f9 = f8 - f10 = r*P6/M6 - f13 = r*P6/M6 - P13/M13
f10 = f14 = f13 = P13/M13
e13 = e10 + e14 = e9 + SE14
f11 = f12 = f9
e9 = e11 + e12 = K11*Q11 + R12*f9
Step 3 :
e1 = SE1
f2 = P2/M2
e3 = R3*f3=R3*f2=R3*P2/M2
f6 = P6/M6
e11 = K11*Q11
e12 = R12*f9 = R12*(r*P6/M6 - P13/M13)
f13 = P13/M13
f1 = f2 = f4 = f3 = P3/M3
e2 = SE1 - R3*P2/M2 - e4 = SE1 - R3*P2/M2 - MU*P6/M6
e4 = MU*f5 = MU*f6 = MU*P6/M6
e5 = MU*f4 = MU*f2 = MU*P2/M2
f5 = f7 = f6 = P6/M6
e6 = e5 - e7 = MU*P2/M2 - r*(e11 + e12)
= MU*P2/M2 - r*(K11*Q11 + R12*(r*P6/M6 - P13/M13))
f8 = r*f7 = r*P6/M6
e7 = r*e8 = r*e9 = r*(e11+e12) = r*(K11*Q11 + R12*(r*P6/M6 - P13/M13))
e8 = e10 = e9 = e11+e12 = K11*Q11 + R12*(r*P6/M6 - P13/M13)
f9 = f8 - f10 = r*P6/M6 - f13 = r*P6/M6 - P13/M13
f10 = f14 = f13 = P13/M13
e13 = e10 + e14 = e9 + SE14 = K11*Q11 + R12*(r*P6/M6 - P13/M13) + SE14
f11 = f12 = f9 = r*P6/M6 - P13/M13
e9 = e11 + e12 = K11*Q11 + R12*f9 = K11*Q11 + R12*(r*P6/M6 - P13/M13)
Step 4 :
DP2 = SE1 - R3*P2/M2 - MU*P6/M6
DP6 = MU*P2/M2 - r*(K11*Q11 + R12*(r*P6/M6 - P13/M13))
DP13 = K11*Q11 + R12*(r*P6/M6 - P13/M13) + SE14
DQ11 = r*P6/M6 - P13/M13
In matrix form, these equations may be written as
d{Y}/dt = [A]{Y} + [B]{u},
where, {Y} is a vector of states (P2,P6,P13 and Q11), [A] is square matrix, {u} is the array of
sources (SE1 and SE14} and [B] is a matrix of dimension N x M; N being the number of states and M being
the number of sources. The matrices [A] and [B] are;
Activation
Some bonds in a bond graph may be only information carriers. These bonds are not
power bonds. Such bonds, where one of the factors of the power is masked
are called Activated bonds. As an example, let the system shown in
the figure below be considered.
Here the velocity pick-up only carries the information of velocity to the amplifier
through which an electro-magnetic exciter applies force proportional to velocity
on the mass and the exciter does not carry the information of velocity and impose
it back on the mass as an reactive force. So on the bond representing the velocity
pick-up the information of force must be masked and on the bond representing the exciter
the information of the flow must be masked. A full arrow somewhere on the bonds shows
that some information is masked and what information is masked may be written near that full
arrow. According to this convention the bond graph of the system is shown to the right of the
system drawn above.
The bond number 4 in the figure is the pick-up bond where information of effort is
masked and in bond number 5, which is the exciter bond, the flow is activated.
The concept of activation is very significant to depict feedback control systems.
The term activation initially seems a misnomer. However, Paynter's idea was
based on the fact that though the information of a factor of power is masked on one end,
an activated bond on the other end can impart infinite power which is derived from a tank
circuit used for both the measurement or actuation device (for instance, the pick-up, the amplifier
and the exciter, all have external power sources).
In the system shown above, a D.C. motor with externally energized field is driving an elastic shaft with two disks and with a fluctuating resistive load. The speed, picked up by a tachometer is fed-back to control the speed of the motor by adjusting the armature current (increasing voltage alternatively). The bond graph for this system is drawn as shown below.
Observers
Additional states can be added for measurement of any factor of power on a
bond graph model using the Observer storage elements. An effort activated C-element would
observe the time integral of flow (and consequently flow), whereas a flow activated I-element would
observe the generalized momentum (and consequently effot). Activated elements are percieved conceptual
instrumentations on a model. They don’t interfere in the dynamics of the system (i.e. their corresponding
states never appear on the right-hand side of any state equation. A system with N states, M sources and L observers
would have the state equations of the form
d/dt{Y} = [A]{Y} + [B]{u} ,
d/dy{Z} = [C]{Y} + [D] {u} ,
whre {Y} is a vector of true states, {Z} is the vector of observed states, {u} is a vector of sources,
[A] is MxM matrix, [B] is MxN matrix, [C] is ZxM matrix and [D] is ZxN matrix.
Here is an example of a single-degree-of-freedom system with instrumentations, whose model with
observer elements is shown below.

The conceptual instrumentations shown here, assumes a spring of zero stiffness (thus measuring displacement
and not generating any reactive effort) and an inductive coil within which the segments of the damper move
to induce emf (a measurement of force) without any reaction on the damper segment. The equations for this model
can be derived as shown below.
Step 1 :
f1 = SF1
e3 = K3*Q3
e5 = R5*f5
f6 = 0
e9 = SE9
e8 = 0
e10 = 0
f12 = P12/M12
e11 = MU*f10 = MU*f12 = MU*P12/M12
Step 2 :
e12 = e7 + e9 - e8 + e11 - e10 = e2 + SE9 + MU*P12/M12
f2 = f1 - f7 = SF1 - P12/M12
f5 = f4 - f6 = f4 = f2 = SF1 - P12/M12
e2 = e3 + e4 = e3 + e5 = K3*Q3 + R5*f5 = K3*Q3 + SF1 - P12/M12
Step 3 :
e12 = K3*Q3 + R5*(SF1-P12/M12) + SE9 + MU*P12/M12
e5 = R5*(SF1 - P12/M12)
Step 4 :
The State equations are
DP12 = e12 = K3*Q3 + R5*(SF1-P12/M12) + SE9 + MU*P12/M12
DQ3 = f3 = f2 = SF1 - P12/M12
and the observer equations are
DP6 = e6 = e5 = R5*(SF1 - P12/M12)
DQ8 = f8 = f12 = P12/M12
Bond graph modeling
A simple mechanical system shown in the figure below is considered
here for explaining the modeling procedure.
The output from the pump would be flow and pressure, while
the input would be torque and angular velocity applied to the
pump shaft. The input power is provided by an electric motor. The
power flow diagram is shown in the figure below.
Two transformations are identified. First from electric power
to mechanical power through the electric motor; followed by the
mechanical power to the fluid power through the pump. In the next
step to construct the model, the components are to be looked into
more details. In this simple analysis of the pump it has its own
moving parts (inertia); oil flow has got its own compressibility (capacitance)
because of which it can store energy;
pump has leakage due to its geometric tolerance and friction between the moving
parts (resistance) through which it can dissipate energy.
The bond graph of the system with power directions and causality is
shown below.
A two degrees of freedom mechanical system and its corresponding
Bond graph model shown below can be explained in the following manner.

The bottom mass velocity is same as the rate of stretching of the
spring and damper connected to the ground. So, these are modeled
as being connected to the 1-junction. The middle spring and damper
experience components of force, say F1 and F2, respectively such that
F=F1+F2, i.e., the force felt by the bottom mass, the spring and damper
in combination and the top mass is equal. Alternatively, the distortion
of the spring and the damper is dependent on relative motion of the
masses. Hence, one can easily smell the presence of a force pass or
flow summation junction, in other words the 0-junction here. Further,
this 0 junction has three branches corresponding to three components
of distribution of effort.
Another 1-junction appears in the right,
that signifies the equal relative velocity (i.e., rate of compression
here considering the power directions) felt by the middle spring and the
damper. The 1-junction at the top depicts the coherent motion of the
forcing device with the top mass.
For the above system, alternative methods can be applied to arrive at a
bond graph model, that may apparently look different. However, the final
equations derived from different models lead to the same set. It may be
noted that bond graphs for mechanical systems may be drawn using the
method of flow balance (kinematics) or force transmission, or a combination
of the both. Since the basic external elements used are the same and only the
energy conserving junction structure may vary, considering one factor of
power automatically takes care of the effect of the other factor. This is
perhaps the greatest contribution of the bondgraph theory.
Art of Creating Models
Representing systems in form of models is an art. Neat and good-looking models are arrived at following certain established practices and reduction methods. However, ultimately the model author deserves the credit for putting pieces together to create good visual effect. Some reduction schemes, which may be used to compress or uncompress bond graphs, are presented here. This work out in the reverse in helping to understand the bond graphs drawn by others. In this section the philosophy of model building and reduction is presented. Most of the matter presented here are extracts from "Lecture notes on sytem modeling" by Prof. A. Mukherjee and Prof. R.Karmakar of the Indian Institute of Technology, Kharagpur.
Model reduction steps
A junction with only two bonds attached to it may be replaced by a single bond provided this does not lead to attaching any two external elements (I, C, R, SE, SF, GY or TF) to each other without a junction. These reductions are summarized in the table below. In this table J stands for any junction (1 or 0) and E for an external element. Reader may verify these reductions by simply writing the junction laws for such junction.
Two neighboring identical junctions may be merged, the internal bond between two such junction is dropped in this process (see section E and F in table).
Any 1-junction to which a source of flow is attached which has constant zero value and no external element is attached may be removed from the bond graph with all bonds attached to it (see section G in table).
Any 0-junction to which a source of effort with constant zero value is attached and no external element is attached may be removed from the bond graph with all bonds attached to it (see section H in table).
| Junction Structure | Reduced Form | |
| A | ![]() | ![]() |
| B | ![]() |
|
| C | ![]() | ![]() |
| D | ![]() |
|
| E | ![]() | ![]() |
| F | ![]() | ![]() |
| G | ![]() | ![]() |
| H | ![]() |
The reductions (3) and (4) must be done after the bond graph is already reduced due to (1) and (2). In a sense there is a hierarchy in the reduction process. Some more elementary equivalent forms shown in the table below. These equivalent forms may be established by writing junction laws and accounting for the fact that a source of flow (SF) can meet any demand of effort by the system and a source of effort (SE) can meet any demand of flow. Thus the following rules hold.
A zero source of flow may be removed from a 0 junction.
A zero source of effort may be removed from an 1 junction.
1-junction is a distributor of SF.
0 junction is a distributor of SE.
| Junction Structure | Reduced Form | |
| A | ![]() | ![]() |
| B | ![]() | ![]() |
| C | ![]() | ![]() |
| D | ![]() | ![]() |
Two more reductions widely used in bond graph modeling are shown below.
| Junction Structure | Reduced Form | |
| E | ![]() | ![]() |
| F | ![]() | ![]() |
Bondgraphs for mechanical systems
To create a bond graph for a mechanical system it is
advisable that a good schematic sketch of the system
or a word bond graph be made. A good word
bond graph is a great aid when one deals with systems in multi energy domain.
The following three methods are most often used effectively to create bond graphs
for mechanical systems :
Method of Flow Map
Method of Effort Map
Method of Mixed Map
- Method of flow map
The method of flow map is based on the fact that the single port mechanical C or R element may be attached to a 1-junction where the relative velocity of ends of these elements are available. Single port I elements may be attached to 1-junctions, where absolute velocities of generalized inertias are available. Following steps may be followed to create system bond graph by Method of Flow Map.
Create 1-junctions depicting the components of velocities of inertial points.
Create 1-junctions depicting the motions of end points of C and R elements.
Relate and connect these junctions by transformer (TF)elements if a lever relations exist between them. Gyroscopic relations and feedbacks may be incorporated using gyrator (GY) elements.
Create the relative velocities between the end points of C and R elements. 0-junction may be used for adding or subtracting the velocities.
Attach C and R elements to 1-junctions where relative velocities of their end points are created.
Reduce the bond graph using reduction process discussed earlier.
Often it may be of great advantage if superscripts
or subscripts are shown at 1 junctions depicting the points of the system
and components of motion. However, these superscripts or subscripts
are purely for book-keeping and are ignored during subsequent processing.
Example 1 : Let us consider a system shown in the figure below.
Two 1-junctions are created depicting velocities at mass-point and ground excitation.
Difference of these two velocities are taken using a 0-junction
and relative velocity is established at the 1-junction shown as
1mv. The velocity depicted at 1mv is
d(xm)/dt - d(xv)/dt. Next, one attaches the external elements.
An alternative bond graph may be created by making two
1mv junctions and then attaching C to one and R to
the other. This bond graph may then be reduced to the earlier one.
![]() | ![]() |
| (a) | (b) |
![]() | ![]() |
| (c) | (d) |
| Creating bond graph of a spring-mass-damper system. | |
![]() | ![]() |
| (e) | (f) |
| Alternative bond graph for the spring-mass-damper system. | |
In case V(t)=0, i.e., the end of the spring is attached to the inertial frame of observation, the final bond graph forms given above (in figs (d) and (f)) may be reduced to a very simple form. This reduction is shown below.
![]() | ![]() | |
| (a) | (b) | |
![]() | ![]() | ![]() |
| (c) | (d) | (e) |
| Bond graph of a spring-mass-damper system anchored to the ground. | ||
![]() | ![]() | ![]() |
| (a) | (b) | (c) |
| Alternative bond graph for the ground anchored spring-mass-damper system. | ||
Example 2 : An idealized car model with rigid body and flexible suspensions with excitations from the road is shown in the figure below. It's bond graph is created by Method of Flow Map as shown below the schematic diagram of the system.
Two dimensional model of a car
(a)
(b)
(a) bond graph model of the car, (b) reduced bond graph
- Method of effort map
When a generalized force applied on an inertial point is such that the positive values of the force accelerates the inertial point in a positive sense, then the power directions on the bonds attached to the 1-junction will be as shown in the figure below. To its right, the case of a force is shown which when positive produces acceleration in the negative coordinate direction of motion.
![]() | ![]() |
The method of effort map may be completed by the following steps.
If necessary create a 0-junction for sources of effort. Such junctions may be treated as distributors of efforts.
Decide whether the tensile force in C is to be taken as positive or it is the compressive force which is to be taken positive. In linear springs such a choice may be arbitrary.
For R elements, decide what kind of relative velocity (compressive or stretching) is to be taken as positive. In linear systems this choice may be arbitrary.
Addition of forces may be done using 1-junction.
Linear forces may be converted to couples using transformer (TF) elements. Similarly, angular velocities may be converted to gyroscopic forces using gyrator (GY) elements.
Reduce the bond graph using the rules discussed earlier.
Example 3 : The system of shown below in figure (a) is modeled in steps as shown in figures (b) and (c).
![]() |
![]() |
| (a) | (b) |
![]() | |
| (c) | |
In this bond graph tensile force in the spring and tractile force on the damper is taken as positive. C and R elements are directly put on 0-junctions depicting the forces in them. An alternative bond graph is drawn for this system in the figure below. In this bond graph the forces due to the spring and damper are added and then distributed using a 0-junction. The graph is then reduced to a form shown to the right.
![]() |
![]() |
Example 4 : The car model discussed in the method of flow map is drawn using Method of effort map in the figure below. Here the compressive forces in suspension are taken to be positive. An alternative bond graph is shown in the next figure and is then reduced to a simpler form.
(a) Model for vertical dynamics of a car
(b) Alternative model for vertical dynamics of a car
(c) Reduced model
- Method of mixed map
The 1-junctions on which the forces accelerating generalized
inertial points are added correspond to velocities of these
inertial point in Method of Effort Map. Now if a part of a system is modeled by
Method of Effort Map, then the 1-junctions depicting these velocities may
be used to create the bond graph for the rest of the system
following Method of Flow Map.
The following example illustrates this process.
Example 5 :For the system shown below, the bond graph of the car
is completed by Method of Effort Map. The idealized passenger placed on this car
represented as mass spring system as shown in the figure is then modeled
by Method of Flow Map.
(a) Schematic diagram of car with a passenger
(b) Bond graph of car with a passenger
Bond graphs of electrical circuits
Following three methods are found suitable while drawing bond graphs for electrical circuits. They can also be extended to other circuit-morphic systems in the field of hydraulics and electronics.
Method of Gradual Uncover,
Point Potential Method,
Mixed Network Method.
- Method of gradual uncover
In this method one may cover (conceptually) comparatively complex
parts of circuit and then treat them as macro impedances. Make the
bond graph putting such impedances at proper places. Then uncover
them and put the details on the bond graph. However one may have
sub-covers covering complex parts of macro impedances which may then
be gradually uncovered. The following example illustrates this process.
Example 6 : An electrical circuit is shown in the figure below and to its right
a covering scheme is shown. Then in 5 steps (c to g in figure)
the bond graph is created by gradual uncovering.
![]() |
![]() |
| (a) | (b) |
![]() |
![]() |
| (c) | (d) |
![]() |
|
| (e) | |
![]() |
|
| (f) | |
![]() |
|
| (g) | |
- Point Potential Method
Method of Gradual Uncover fails in many cases. In bridge circuits, for example, a satisfactory scheme of creating covers becomes impossible. The alternative Point Potential method is guaranteed to work in every case. Following are the steps of Point Potential Method.
Each point of circuit where ends of various elements or sub-circuits are tagged may be made into a 0-junction.
Any element or impedance through which current flows may be attached to a 1-junction between the 0-junctions.
A suitable tag point may be grounded. This is achieved by attaching a zero source of effort to a 0-junction. Unless grounded, the circuit remains floating. Each individual circuit must be separately grounded, for example circuits on primary and secondary sides of a electrical transformer are treated as two separate circuits and must be grounded on both sides.
Reduce the bond graph.
The following example illustrates this approach.
Example 7 : Let a bridge circuit shown in the figure below
be considered. Point Potential Method produces the bond graph shown to the right.
The reduced bond graph and rearranged graph are shown next.
![]() |
![]() |
| (a) | (b) |
![]() |
|
| (c) | |
![]() |
|
| (d) | |
- Mixed Network method
The method of point potential and gradual uncover may be
often mixed to a great advantage. The complex impedances
may be covered in the first go. Once the overall structure
is produced by Point Potential Method, the uncovering may be taken up.
The ultimate bond graph may then be reduced. The following example
illustrates this method.
Example 8 : Bond graph for the bridge circuit shown earlier
is developed this way. The figure given below
shows the scheme of covering. The bond graph is then developed in
stages (b) to (d) shown in the figure.
![]() |
![]() |
| (a) | (b) | ![]() |
![]() |
| (c) | (d) |
Hydraulic circuits are drawn more or less in the same manner as electrical circuits. Before concluding, here are two important warnings to the reader.
Odd power loops should be avoided: If there is a loop of junctions then two important points should be observed.
There should be even number of bonds forming the loop.
Bonds power directed clockwise or counter clockwise must be even in number.
Causal loops should be avoided. In a junction loop, not all junctions should have their causalities determined by internal bonds (i.e. bonds which are part of the loop).
Proceed to the previous topic page
Proceed to the next topic page




























































