VOOZH about

URL: https://en.wikipedia.org/wiki/Bond_graph

⇱ Bond graph - Wikipedia


Jump to content
From Wikipedia, the free encyclopedia
Graphical representation of energy flows in physical systems
This article's lead section may be too short to adequately summarize the key points. Please consider expanding the lead to provide an accessible overview of all important aspects of the article. (March 2026)
πŸ‘ Image
A simple bond graph with analogous electrical and mechanical systems.

A bond graph is a graphical representation of the energy flows though and between physical dynamical systems including those in the electrical, mechanical, hydraulic, thermal and chemical domains. It is used to model and analyse systems relevant to engineering and to systems biology.

Because the concept of energy is common to all physical domains, the bond graph provides a unified description of all of these energy domains and can be thought of as a systematic use of the physical analogies introduced by the 19th century scientists James Clerk-Maxwell and Lord Kelvin. The mechanical–electrical analogy is one example of a physical analogy.

Bond graphs use the concept of analogous power conjugate variables whose product is energy flow, or power; these variable pairs are called effort and flow and, for example, correspond to voltage and current in the electrical domain and force and velocity in the mechanical domain. These power conjugate variables are transmitted by bonds which connect bond graph components.

Bond graph components are also based on analogies and, using the electrical and mechanical domains as examples, include the C-component to represent both mechanical spring and electrical capacitor, the I-component to represent both a mechanical inertia and an electrical inductor and the R-component to represent both mechanical damper and electrical resistor.

The electrical circuit notions of parallel and series connections are abstracted as 0-junctions and 1-junctions in bond graph terminology and again used as connection analogues for each physical domain.

The bond graph transformer (TF) and gyrator (GY) components represent energy transformation within and between domains; thus an ideal gearbox in the rotational mechanical domain is represented by the TF component and an ideal DC motor transforming electrical into mechanical energy is represented by a GY component. Non-ideal transducers with flexibility, inertia and friction are modelled by including C, I and R components.

The concept of causality in the context of bond graphs is used not only to generate system equations in a number of forms including ordinary differential equation (ode), state-space and differential-algebraic equations (dae) form suitable for simulation purposes but also to investigate dynamical system properties such as invertibility and zero dynamics. Causality can also be used to guide and correct modelling choices.

The bond graph use of energy flows leads to the systematic construction of hierarchical models of large multi-domain systems; thus the bond graph method provides a basis for constructing large computer models, or digital twins, of multi domain physical systems including systems relevant not only to engineering but also to systems biology and the life sciences.

The bond graph approach is related to the behavioral modelling approach of Jan C Willems, and the port-Hamiltonian approach of Arjan van der Schaft and B. M. Maschke.

The bond graph method was originally proposed by Henry Paynter who applied the approach to engineering systems; the use of bond graphs to model biophysical systems was introduced by Aharon Katchalsky, George Oster, and Alan Perelson in the early 1970s.

Analogies

[edit]

The importance of analogies between physical domains was noted by Lord Kelvin and James Clerk-Maxwell.[1][2] The bond graph can be thought of as a systematic approach to analogies.[3] This section emphasises key features of bond graph analogies; more detail appears in a number of textbooks and tutorial papers.[4][5][6][3]

As an introduction to the key features of bond graphs, the figure shows the bond graph of two analogous systems: one electrical and one mechanical. A brief description is given here and expanded in the following sections.

  • The bond graph C-component represents either the electrical capacitor C or the mechanical spring K.
  • The bond graph I-component represents either the electrical inductor L or the mechanical mass M.
  • The bond graph R-component represents either the electrical resistor R or the mechanical damper D.
  • The harpoon symbol is a bond transferring energy; the harpoon direction corresponds to positive energy flow and is a sign convention. The conjugate variables are displayed on each bond for the purposes of illustration.
  • The 1-junction represents the series connection of the electrical circuit where the same current i flows in each component and the connection of the three components in the mechanical system which share a common velocity. Thus the bond graph components share the same flow f, but the efforts are different, corresponding to the voltages and forces of the electrical and mechanical components respectively. Energy is conserved at the junction by requiring that the three efforts add to zero.

The bond graph uses three classes of analogy: analogies between variables, analogies between components and analogies between component connections; these are discussed in the following sections.

Analogies between variables

[edit]
Domain Effort (units) Flow (units)
Electrical Voltage (V) Current (A)
Translational Force (N) Velocity (m/s)
Rotational Torque (Nm) Angular velocity (rad/s)
Hydraulic Pressure (Pa) Volumetric flow (m^3/s)
Thermal Temperature (K) Entropy flow ( (J/K)/s)
Chemical Chemical potential (J/mol) Molar flow (mol/s)

The bond graph use energy flow, or power, as the basis for abstracting analogies between different physical domains[4]. Power conjugate variables are a pair of variables whose product is power and a list of these appears in the table for various physical domains. As indicated in the table, the bond graph uses the effort/flow analogy to categorise each of the two conjugate variables; the across/through analogy is also possible but not commonly used.[7][8] The conventional bond graph symbol for effort is e, and that for flow is f.[4]

As well as the two conjugate power variables e and f, the bond graph uses two integrated variables p and q where:

πŸ‘ {\displaystyle p=\int ^{t}e(\tau )d\tau ~~~{\text{and}}~~~q=\int ^{t}f(\tau )d\tau }

equivalently:

πŸ‘ {\displaystyle {\dot {p}}={\frac {dp}{dt}}=e~~~{\text{and}}~~~{\dot {q}}={\frac {dq}{dt}}=f}

The harpoon symbol shown in the figure represents a power bond, or bond, transferring energy; the harpoon direction corresponds to positive energy flow and corresponds to a sign convention. The conjugate variables are displayed on each bond for the purposes of illustration.

Analogies between components

[edit]
πŸ‘ Image
The relation between bond graph power conjugate variables e and f and integrated variables p and q.

The definitions relating p to e and q to f are indicated diagrammatically. Physical properties are encapsulated in constitutive equations relating the energy and power variables. In the diagram, C represents the constitutive equation relating q and e, I represents the constitutive equation relating p and f and R represents the constitutive equation relating e and f. Instead of placing e, f, p and q on the four corners of a square as in the diagram, they can alternatively be placed at the four vertices of a tetrahedron; such a diagram is called the tetrahedron of state.[4]

These three constitutive equations πŸ‘ {\displaystyle \Phi _{C},\Phi _{I}~{\text{and}}~\Phi _{R}}
correspond to three components each relating e and f: two dynamic components, C and I, incorporating an integrator and the R-component.[4] The C- and I- components store, but do not dissipate energy, R dissipates, but does not store energy. It is also possible to define a memristor component linking p and q, but this component is not commonly used.[9]

πŸ‘ {\displaystyle \Phi _{C},\Phi _{I}~{\text{and}}~\Phi _{R}}
may be linear or nonlinear functions relating the variables as:

πŸ‘ {\displaystyle q=\Phi _{C}(e),~~p=\Phi _{I}(f)~~{\text{and}}~~e=\Phi _{R}(f)}

in the linear case:

πŸ‘ {\displaystyle q=Ce,~~p=If,~~e=Rf}

where πŸ‘ {\displaystyle C,~I,~{\text{and}}~R}
are scalar constants representing generalised capacitance, inertia and resistance respectively.

Because e and f are conjugate variables, they are carried on a single bond and therefore the three components C, I and R are connected to a single bond and thus have a single energy port though which energy flows. The components, and impinging bond are shown in the figure. By convention, bonds point into these three components.

Notation

[edit]

The colon (:) notation is sometimes used to refer to the components; thus, for example I:M, C:K and R:D could be used in the bond graph of the mass-spring-damper system to emphasise the link between the bond graph components and their physical analogues.

Analogies between connections

[edit]

Electrical circuit diagrams have two sorts of connection: parallel and series or common voltage and common current; they distribute, but do not store or dissipate energy. The bond graph analogy of the common voltage and common current connections are the 0-junction (common effort) and 1-junction (common flow) respectively; they both distribute, but do not store or dissipate energy.[4]

All bonds impinging on a 0-junctions have the same effort. As energy is distributed, not dissipated, it follows that the sum of energy inflows (indicated by bonds pointing in) must equal the sum of energy outflows (indicated by bonds pointing out). Hence, if the common effort is e, the power flow constraint implies that the sum of the πŸ‘ {\displaystyle m}
inflows πŸ‘ {\displaystyle f_{i}^{in}}
must equal the sum of the πŸ‘ {\displaystyle n}
outflows πŸ‘ {\displaystyle f_{j}^{out}}
:

πŸ‘ {\displaystyle \sum _{i=1}^{m}f_{i}^{in}=\sum _{j=1}^{n}f_{j}^{out}}

Using the same argument, the efforts impinging on a 1-junction are constrained by:

πŸ‘ {\displaystyle \sum _{i=1}^{m}e_{i}^{in}=\sum _{j=1}^{n}e_{j}^{out}}

Analogies between external connections

[edit]
πŸ‘ Image
Bond Graph of Mass-Spring-Damper with applied force F and measured velocity v.

Systems such as that the simple electrical and mechanical systems in the figure have no connection to the environment. Such connections may include external voltages and external forces (that is efforts) and external currents and external velocities (that is flows). Similarly, external measurements of efforts and flows are also important. For the purposes of building hierarchical system, it is convenient to define energy ports though which energy can flow between systems. These five possibilities correspond to five bond graph components:[3][4]

For example, the mass-spring-damper system can be augmented with an force πŸ‘ {\displaystyle F}
applied to the mass and a measurement of the mass velocity πŸ‘ {\displaystyle v}
using a single SS components. The colon notation has been included; the SS:io refers to the fact that the force and velocity pair could be considered as system input and output.

Analogies between energy transducers

[edit]
πŸ‘ Image
Bond graph TF (transformer) and GY (gyrator) components.

The conjugate effort and flow variables have different units in each energy domain thus models in one domain cannot be directly be connected by bonds to a different energy domain. However, because power has the same units (J/s or W) in each domain, the two-port power transducing components TF and GY can be used to provide such connections.[4] As the two components transmit, but do not store or dissipate power, it follows that the power associated with the conjugate variables of the left-hand and right-hand bonds must be the same:

πŸ‘ {\displaystyle e_{2}f_{2}=e_{1}f_{1}}

Each component has a modulus πŸ‘ {\displaystyle m}
associated with it. In the case of the TF component:

πŸ‘ {\displaystyle e_{2}=me_{1}~~{\text{and}}~~f_{1}=mf_{2}}

In the case of the GY component:

πŸ‘ {\displaystyle e_{2}=mf_{1}~~{\text{and}}~~e_{1}=mf_{2}}

For example, a frictionless, massless piston of area πŸ‘ {\displaystyle A}
converts hydraulic power to mechanical power so that the hydraulic pressure πŸ‘ {\displaystyle P}
is related to mechanical force πŸ‘ {\displaystyle F}
by:

πŸ‘ {\displaystyle F=AP}

and hydraulic flow πŸ‘ {\displaystyle V}
to piston velocity πŸ‘ {\displaystyle v}
by:

πŸ‘ {\displaystyle V=Av}

Thus the bond graph analogy is the TF component with modulus πŸ‘ {\displaystyle m=A}
where πŸ‘ {\displaystyle e_{1}=P,~~f_{1}=V}
and πŸ‘ {\displaystyle e_{2}=F,~~f_{2}=v}
.

For example, an ideal DC motor converts electrical power into rotational mechanical power so that the mechanical torque πŸ‘ {\displaystyle T}
is related to the electrical current πŸ‘ {\displaystyle i}
by:

πŸ‘ {\displaystyle T=ki}

and back EMF (voltage) πŸ‘ {\displaystyle E}
to angular velocity πŸ‘ {\displaystyle \Omega }
by

πŸ‘ {\displaystyle E=k\Omega }

Thus the bond graph analogy is the GY component with modulus πŸ‘ {\displaystyle m=k}
where πŸ‘ {\displaystyle e_{1}=E,~~f_{1}=i}
and πŸ‘ {\displaystyle e_{2}=T,~~f_{2}=\Omega }
.

In both cases, non-ideal transduction behaviour can be modelled by including C ,I and R bond graph components in the model.

Bond graphs in systems biology

[edit]

Bond graphs have been used to model systems relevant to the life sciences, including physiology and biology.[10] In particular, the use of bond graphs to model biophysical systems was introduced by Aharon Katchalsky, George Oster, and Alan Perelson in the early 1970s.[11][12] More recently, these ideas were used in the context of Systems Biology to provide an energy-based approach to modelling the biochemical reaction systems of cellular biology[13][14][15] and to modelling the entire physiome.[16]

The bond graph approach has a number of features which make it a good basis for building large computational models of the physiome.

  • It is energy based, which implies that:
    • the models are physically-plausible[17]
    • detailed balance (Wegscheider's conditions) for reaction kinetics are automatically satisfied[18]
    • energy flow, usage and dissipation can be directly considered
  • It is modular: bond graph components can themselves be bond graphs[19][20]
  • Energy transduction between physical domains is simply represented[16] - see below
  • Symbolic code, which may be used for simulation, can be automatically generated[21]

Variables

[edit]

The bond graph variables for biochemical systems are:

Note that the product of effort and flow (ΞΌv) is, as always in the bond graph formulation, power (J/s).

Components

[edit]

As detailed below, the main features of the components used to model biochemical systems are: the R and C components are nonlinear, there is no I component required and the R component is replaced by a two-port Re component.[15]

Junction components

[edit]

The bond graph zero (0) and one (1) components are no different in this context.

C component

[edit]

The C component integrates the flow πŸ‘ {\displaystyle v}
to give the amount πŸ‘ {\displaystyle x}
of species:

πŸ‘ {\displaystyle x(t)=\int ^{t}v(\tau )d\tau }

The effort, chemical potential πŸ‘ {\displaystyle \mu }
, is given by the formula:[15][22]

πŸ‘ {\displaystyle \mu =\mu ^{0}+RT\ln {\frac {x}{x^{0}}}}

where πŸ‘ {\displaystyle \mu ^{0}}
is the chemical potential corresponding to πŸ‘ {\displaystyle x=x^{0}}
, πŸ‘ {\displaystyle R}
is the gas constant and πŸ‘ {\displaystyle T}
is the absolute temperature in degrees Kelvin.

The formula for πŸ‘ {\displaystyle \mu }
can be rewritten in a simplified form as:

πŸ‘ {\displaystyle \mu =RT\ln Kx}
where πŸ‘ {\displaystyle K={\frac {1}{x^{0}}}\exp {\frac {\mu ^{0}}{RT}}}

Because of the special form of this particular C component it is sometimes given a special name Ce analogously to the special Re component.

Re component

[edit]

The Re (reaction) component has two energy ports corresponding to the left (forward) and right (reverse) sides of a chemical reaction. The forward πŸ‘ {\displaystyle A^{f}}
and reverse πŸ‘ {\displaystyle A^{r}}
affinities are defined as the net chemical potential due to the species on the left and right sides of the reaction respectively. The Re component then gives the reaction flow πŸ‘ {\displaystyle v}
as:[15]

πŸ‘ {\displaystyle v=\kappa \left(\exp {\frac {A^{f}}{RT}}-\exp {\frac {A^{r}}{RT}}\right)}

where πŸ‘ {\displaystyle \kappa }
(mol/s) is a rate constant.

Note that it is not possible to use the usual R component with 1-junction formulation as the flow depends on both the forward πŸ‘ {\displaystyle A^{f}}
and reverse πŸ‘ {\displaystyle A^{r}}
affinities rather than the difference πŸ‘ {\displaystyle A^{f}-A^{r}}
.[13]

Modelling simple reactions

[edit]

Sources:[13][15]

πŸ‘ Image
The bond graph of the reaction πŸ‘ {\displaystyle {\mathrm {A} {}\mathrel {\longrightleftharpoons } {}\mathrm {B} }}
. C:A and C:B represent the species A and B, Re:r1 represents the reaction. The bonds and 0 junctions connect the three components. The effort and flow associated with each bond is marked.

The simple reaction πŸ‘ {\displaystyle {\mathrm {A} {}\mathrel {\longrightleftharpoons } {}\mathrm {B} }}
is represented by three components:

Using the above equations, the flow πŸ‘ {\displaystyle v}
is given by

πŸ‘ {\displaystyle v=\kappa \left(\exp {\frac {\mu _{A}}{RT}}-\exp {\frac {\mu _{B}}{RT}}\right)=\kappa \left(K_{A}x_{A}-K_{B}x_{B}\right)}

where the subscripts correspond to the species. This is the simple mass-action equation:

πŸ‘ {\displaystyle v=k^{+}x_{A}-k^{-}x_{B}}

where πŸ‘ {\displaystyle k^{+}=\kappa K_{A}{\text{ and }}k^{-}=\kappa K_{B}}
.

Enzyme-catalysed reaction

[edit]
πŸ‘ Image
An enzyme-catalysed reaction reversibly transforming species A to species B via enzyme E and enzyme complex C. The four C components represent the four species and the two Re components represent the two reactions r1 and r2. The bond graph shows the enzyme E being recycled from the reverse side of reaction r2 to the forward side of reaction r1.

As discussed in section 1.4 of Keener & Sneyd,[22] an enzyme-catalysed reaction reversibly transforming species πŸ‘ {\displaystyle {\mathrm {A} }}
to species πŸ‘ {\displaystyle {\mathrm {B} }}
via enzyme πŸ‘ {\displaystyle {\mathrm {E} }}
and enzyme complex πŸ‘ {\displaystyle {\mathrm {C} }}
can be written as the pair of reactions:

πŸ‘ {\displaystyle {\mathrm {A} {}+{}\mathrm {E} {}\mathrel {\longrightleftharpoons } {}\mathrm {C} {}\mathrel {\longrightleftharpoons } {}\mathrm {B} {}+{}\mathrm {E} }}

The enzyme complex πŸ‘ {\displaystyle {\mathrm {C} }}
is formed from πŸ‘ {\displaystyle {\mathrm {A} {}+{}\mathrm {E} }}
and decomposes into the species πŸ‘ {\displaystyle {\mathrm {B} }}
and releases enzyme πŸ‘ {\displaystyle {\mathrm {E} }}
. The bond graph shown in the figure shows how the enzyme is recycled.

The bond graph can be used to derive the properties of these reactions which are of generalised Michaelis-Menten form.[13]

Energy transduction

[edit]
πŸ‘ Image
Energy transduction in the life sciences. The bond graph TF component represents energy transduction either within or between energy domains. This diagram focuses on transduction between the chemical domain with effort πŸ‘ {\displaystyle \mu }
(J/mol) and flow πŸ‘ {\displaystyle v}
(mol/s) and a generic domain with effort πŸ‘ {\displaystyle e}
and flow πŸ‘ {\displaystyle f}
. The transformer has a modulus m.

The bond graph TF (transformer) component represents energy transduction either within or between energy domains.[4] (Note that the TF component has been called the TD (transduction) component[11][12] - TF is more widely used.[4]) This section focuses on transduction between the chemical domain with effort πŸ‘ {\displaystyle \mu }
(J/mol) and flow πŸ‘ {\displaystyle v}
(mol/s) and a generic domain with effort πŸ‘ {\displaystyle e}
and flow πŸ‘ {\displaystyle f}
.

The key feature of the TF component is that it transmits energy without dissipation;[4] hence, with reference to the figure:

πŸ‘ {\displaystyle ef=\mu v}

The transformer has a modulus m (with appropriate units) so that:

πŸ‘ {\displaystyle f=mv}

the energy formula then implies that:

πŸ‘ {\displaystyle \mu =me}

Stoichiometry

[edit]
πŸ‘ Image
The bond graph representing the chemical reaction πŸ‘ {\displaystyle {\mathrm {A} {}\mathrel {\longrightleftharpoons } {}m\,\mathrm {B} }}
(where m is a positive integer ) using the TF component.

The stoichiometry of a chemical reaction determines how many of each chemical species occurs. Thus, for example, the reaction πŸ‘ {\displaystyle {\mathrm {A} {}\mathrel {\longrightleftharpoons } {}m\,\mathrm {B} }}
converts one mol of species πŸ‘ {\displaystyle {\mathrm {A} }}
to m mol of species πŸ‘ {\displaystyle {\mathrm {B} }}
.

The case where πŸ‘ {\displaystyle m=1}
corresponds to the simple reaction of the first example above. Using the same approach for general πŸ‘ {\displaystyle m}
, the reaction flow is:[13][15]

πŸ‘ {\displaystyle v=\kappa \left(\exp {\frac {\mu _{A}}{RT}}-\exp {\frac {m\mu _{B}}{RT}}\right)=\kappa \left(K_{A}x_{A}-(K_{B}x_{B})^{m}\right)}

Chemoelectrical transduction

[edit]

This section looks at the case where the generic domain is the electrical domain so that effort is (electrical) voltage πŸ‘ {\displaystyle {\mathcal {V}}}
( πŸ‘ {\displaystyle e={\mathcal {V}}}
) and the flow is current (πŸ‘ {\displaystyle f=i}
). Consider the flow πŸ‘ {\displaystyle v}
of charged ions where the charge on the molecule is πŸ‘ {\displaystyle z\epsilon }
(Coulomb) where πŸ‘ {\displaystyle \epsilon }
is the charge on the electron measured in Coulomb; the charge associated with a mole of ions is thus πŸ‘ {\displaystyle z\epsilon N_{A}}
where πŸ‘ {\displaystyle N_{A}}
is the Avogadro constant. The equivalent current is then

πŸ‘ {\displaystyle i=z\epsilon N_{A}v=z{\mathcal {F}}v}
where πŸ‘ {\displaystyle {\mathcal {F}}=\epsilon N_{A}}
is the Faraday constant; thus the corresponding TF modulus is:

πŸ‘ {\displaystyle m=z{\mathcal {F}}}
(C/mol)

Again, it follows that

πŸ‘ {\displaystyle \mu =me=z{\mathcal {F}}{\mathcal {V}}}

In this context, the bond graph TF component can be used to model energy flows associated with action potential,[23] membrane transporters,[24] cardiac action potential,[25] and the mitochondrial electron transport chain.[26]

Chemomechanical transduction

[edit]

Consider a long rigid molecule such as actin where a sub unit of length πŸ‘ {\displaystyle \delta }
(m) is added at a rate of πŸ‘ {\displaystyle v}
(mol/sec). Then the tip velocity πŸ‘ {\displaystyle V}
is given by:[27]

πŸ‘ {\displaystyle V=\delta N_{A}v}
where πŸ‘ {\displaystyle N_{A}}
is the Avogadro constant.

Thus the modulus πŸ‘ {\displaystyle m=\delta N_{A}}
(m/mol) and

πŸ‘ {\displaystyle \mu =mF=\delta N_{A}F}
where πŸ‘ {\displaystyle F}
is the corresponding force at the tip.

These formulae have been used[27] to generate force/velocity curves for actin filaments. The approach provides a useful alternative to the Brownian Ratchet approach[28] as the bond graph TF component can be potentially used with modular bond graph models of cellular systems.[14]

Applications

[edit]

A number of systems relevant to systems biology have been modelled using bond graphs. These include:

  • Enterocyte homeostasis[29][30]
  • Glucose transport[31]
  • Cardiac Cellular Electrophysiological Modeling[32]
  • Cerebral Circulation[33]
  • Gene regulatory networks[34]
  • Actin filament polymerization[27]
  • Biochemical oscillators[35]
  • Photosynthesis[15]
  • Blood circulation[36]
  • Simplified E. coli[37]
  • Mitochondrial Electron Transport Chain[38][26]
  • Action potential[23][24][25]

Causality

[edit]
πŸ‘ Image
R causality

Causality is a word with many uses and connotations. In the context of bond graphs, however, it has a limited, precise but important meaning and allows the bond graph model of a system to be converted to various other forms including a (nonlinear) state-space representation.[4] The causality concept can also be used to examine structural properties, including inversion, of the system represented by a bond graph as well as to expose modelling errors.[6]

R, C and I components

[edit]
πŸ‘ Image
C causality

The concept of causality is visualised via the causal stroke notation.[4] This notation is introduced in the three figures where the R, C and I components are connected to a bond augmented by the causal stoke: a short line perpendicular to the bond and located at either (but not both) end of the bond. (For clarity, the figures correspond to linear components; in the nonlinear case, πŸ‘ {\displaystyle Rf}
is replaced by πŸ‘ {\displaystyle \Phi _{R}(f)}
and πŸ‘ {\displaystyle e/R}
by πŸ‘ {\displaystyle \Phi _{R}^{-1}(e)}
and similarly for the C and I components. Whereas an acausal (without strokes) bond graph represents a set of equations (where the left and right sides of an equation can be swapped without change of meaning), a causal (with strokes on each bond) represents a set of assignment statements whereby the value of the left-hand side of the assignment statement (represented here by :=) becomes the value of the expression on the right-hand side of the assignment statement. Thus, for example, the constitutive equation of a linear resistor can be written as πŸ‘ {\displaystyle e=Rf}
and πŸ‘ {\displaystyle f=e/R}
without changing the meaning; but in contrast, the two assignment statements e:=Rf and f := e/R are different. In particular, in the first case, f must be known to compute e and in the second case, e must be known to compute f.

The assignment statement representation can be graphically visualised as a block diagram where each assignment statement is represented as a block with input representing the right-hand of the assignment statement and output representing the left-hand side of the assignment statement.[3][4] The block diagrams for each causality are shown in the figures for each component. Note that each causality of a component leads to a different block diagram.

R component

[edit]
πŸ‘ Image
I causality

The figure shows the causality of the R component with linear constitutive equation. (a) Flow is imposed on R and R imposes effort; this corresponds to the assignment statement e := Rf and the block diagram. (b) Effort is imposed on R and R imposes flow; this corresponds to the assignment statement f := e/R and the corresponding block diagram.

C component

[edit]

The figure shows the causality of the C component with linear constitutive equation. (a) Flow is imposed on C and C imposes effort; this corresponds to the assignment statements πŸ‘ {\displaystyle e:=q/C~~{\text{and}}~~q:=\int ^{t}f(\tau )d\tau }
and the corresponding block diagram; this is called integral causality. (b) Effort is imposed on C and C imposes flow; this corresponds to the assignment statements πŸ‘ {\displaystyle q:=Ce~~{\text{and}}~~f:={\frac {dq}{dt}}}
and the corresponding block diagram. This is called derivative causality.

I component

[edit]

The figure shows the causality of the I component with linear constitutive equation. (a) Effort is imposed on I and I imposes flow ; this corresponds to the assignment statements πŸ‘ {\displaystyle f:=p/I~~{\text{and}}~~p:=\int ^{t}e(\tau )d\tau }
and the corresponding block diagram. This is called integral causality. (b) Flow is imposed on I and I imposes effort; this corresponds to the assignment statements πŸ‘ {\displaystyle p:=If~~{\text{and}}~~e:={\frac {dp}{dt}}}
and the corresponding block diagram. This is called derivative causality.

Source-sensor components

[edit]
πŸ‘ Image
SS causality

The SS (source sensor) component acts as an effort source (πŸ‘ {\displaystyle S_{e}}
), flow detector (πŸ‘ {\displaystyle D_{f}}
) combination when the causal stroke is distant from the SS component and vice versa. The figure shows the causality of the SS (source/sensor) component. (a) The SS acts as an effort source (πŸ‘ {\displaystyle S_{e}}
) flow detector (πŸ‘ {\displaystyle D_{f}}
) combination. (b) The SS acts as a flow source (πŸ‘ {\displaystyle S_{f}}
), effort detector (πŸ‘ {\displaystyle D_{e}}
) combination.

Junctions

[edit]

As, by definition, all efforts associated with bonds impinging on a 0-junction are the same, it follows that exactly one bond can impose effort causality. Similarly, all flows associated with bonds impinging on a 1-junction are the same, it follows that exactly one bond can impose flow causality. Thus if a bond imposes effort causality on a 0-junction, the junction imposes effort on the other bonds and if a bond imposes flow causality on a 1-junction, the junction imposes flow on the other bonds.

Causal propagation

[edit]
πŸ‘ Image
Causal bond graph.

When one-port components (sources, C, I and R) are connected by a junction structure consisting of 0-junctions, 1-junctions, TF and GY, the causality assigned to each one port component propagates though the junction structure because of the causal constraints imposed by the junction structure components. This propagation can be applied systematically using the sequential causal assignment procedure (SCAP):[4]

  1. Choose any source (SS, Se or Sf) and assign the required causality. Immediately extend the causal implications though the bond graph as far as possible using the constraints on the junction elements (0 and 1) and the TF and GY elements.
  2. Repeat step 1 for all of the source components.
  3. Choose any storage element (C or I) and assign the integral causality. Immediately extend the causal implications though the bond graph as far as possible using the constraints on the junction elements (0 and 1) and the TF and GY elements.
  4. Repeat step 3 until all C and I elements have been assigned causality.

The figure shows the result of this procedure on the simple example. In particular, the I component imposes flow causality onto the 1-junction thus the one junction imposes flow causality on to the other three components: SS, C and R. This means that the C, R and SS components impose effort causality onto the one junction; thus the C component is in integral causality and the R component corresponds to the assignment πŸ‘ {\displaystyle e_{R}:=Rf}
.

Although this procedure can be accomplished manually for small systems, a computer-based approach is more generally useful.

There are three possible results of this procedure.

  1. It completes with all C and I components in integral causality and all bond causalities assigned; the resultant system is a causal bond graph and can be converted into a state-space system.
  2. All bonds have causality assigned but one or more C or I component has derivative causality.
  3. All C and I components have integral causality, but some bond do not have causality assigned.

Whereas case 1 leads to ordinary differential equations (ode) in state-space form, case 2 gives rise to differential-algebraic equations (dae). Depending on the context, it may be better to reconsider the underlying physical system to avoid daes[4][5][6], or it may be possible to reduce the dae to an ode[6][39] or the daes can be solved using an appropriate dae solver.

Alternative causality.

[edit]

The sequential causal assignment procedure (SCAP) is designed to derive state-space equations, suitable for computation or control systems analysis. However, there are other forms of causal analysis designed to address other issues, including:

State-space equations

[edit]

A bond graph system representation contains the constitutive equations of each component, embedded in the structure of bond and junctions.

The question of how to manipulate a set of equations into a form suitable for analogue computation was posed, and partially answered by Lord Kelvin.[47] This approach underlies the conversion of a bond graph model to a state-space representation suitable for digital computation.[48]

The bond graph uses the notion of (bond graph) causality to provide a systematic and constructive way to investigate whether a state-space representation exists, and, if so, what is that representation; this causality approach is well suited to computational implementation and has an intuitive representation on the bond graph itself using the causal stroke notation.

A causal bond graph can be put into state-space form if[4]:

  • every bond has a causal stroke and
  • every component has allowed causality
  • all C and I components are in integral causality.

The sequential causal assignment procedure (SCAP) provides a graphical approach to determining whether a system represented by a bond graph has a state-space representation.[4][6]

The bond graph is analogous to an number of different systems; for clarity, the mechanical analogue is used as an example, but exactly the same method applied to electrical and other physical domains.

It is convenient to choose the system states as the integrated variables corresponding to the components in integral causality; in the case of the simple example, there are two states: πŸ‘ {\displaystyle p}
corresponding to the mass M and πŸ‘ {\displaystyle q}
corresponding to the spring. The system inputs and outputs correspond to the Se, Sf and SS components. In this case, there is one input and one output corresponding to the SS component: the effort (applied force πŸ‘ {\displaystyle F}
) and the measured flow (velocity πŸ‘ {\displaystyle v}
). Guided by the causal strokes, the state derivatives (effort applied to I components, flow applied to C components) can be written in terms of the states. Thus:

πŸ‘ {\displaystyle {\begin{aligned}{\dot {q}}&=f={\frac {p}{m}}\\{\dot {p}}&=F-e_{c}-e_{r}=F-kq-df=F-kq-d{\frac {p}{m}}\end{aligned}}}

This can be written in standard linear state space for as:

πŸ‘ {\displaystyle {\begin{aligned}{\dot {x}}&=Ax+Bu\\y&=Cx\end{aligned}}}

where the state πŸ‘ {\displaystyle x}
input πŸ‘ {\displaystyle u}
and output πŸ‘ {\displaystyle y}
are given by:

πŸ‘ {\displaystyle x={\begin{pmatrix}q\\p\end{pmatrix}},\;u=F{\text{ and }}y=v}

and the matrices πŸ‘ {\displaystyle A}
, πŸ‘ {\displaystyle B}
and πŸ‘ {\displaystyle C}
are given by:

πŸ‘ {\displaystyle A={\begin{pmatrix}0&{\frac {1}{m}}\\-k&-{\frac {d}{m}}\end{pmatrix}},\;B={\begin{pmatrix}0\\1\end{pmatrix}},\;C={\begin{pmatrix}0&{\frac {1}{m}}\end{pmatrix}}}

The state equation has three parameters: the mass πŸ‘ {\displaystyle m}
, the spring constant πŸ‘ {\displaystyle k}
and the damping constant πŸ‘ {\displaystyle d}
.

Using the usual Laplace transform notation of control systems theory, the system transfer function relating the input πŸ‘ {\displaystyle u}
to output πŸ‘ {\displaystyle y}
is:

πŸ‘ {\displaystyle {s \over {\left(k+ds+ms^{2}\right)}}}

Although it may be instructive to derive these formulae by hand, it is often convenient to make use of computer algebra to perform the same function.

System inversion

[edit]
πŸ‘ Image
Causal bond graph of inverse system.

The behavior of a linear system is not only determined by the denominator of the system transfer function but also by the numerator. In the nonlinear case, the concept of the transfer function numerator is replaced by the concept of zero dynamics. Having a physical interpretation of zero dynamics is helpful in designing, and redesigning a dynamical system. For this reason, a bond graph approach to system inversion has been developed.[49][50][51]

This procedure is illustrated using the simple mass-spring-damper system bond graph which, although linear, exemplifies the key ideas. In particular, system inversion is performed by reversing the causality on the source-sensor component; thus the role of input and output is reversed. In this particular case, reversing the causality of the SS component implies that the causality of the I component must also be reversed as only one component can impose flow onto the 1-junction. Thus only one component, the C component, remains in integral causality. Thus the zero dynamics are first order which, in this simple case, corresponds to the fact that the transfer function of the original system has a first order numerator.

Following the causal strokes, the remaining state πŸ‘ {\displaystyle q}
can be written as in terms of the input πŸ‘ {\displaystyle v}
of the inverse system

πŸ‘ {\displaystyle {\dot {q}}=v}

πŸ‘ {\displaystyle p}
is no longer a state, but can be written as:

πŸ‘ {\displaystyle p=mv}

the output πŸ‘ {\displaystyle F}
of the inverse system is:

πŸ‘ {\displaystyle F=kp+dv+{\dot {p}}=kp+dv+m{\dot {v}}}

This approach relies on the system input and output existing on the same SS component - the input and output are said to be colocated. If this is not so, the concept of bicausality must be used.

Bicausality

[edit]

Although (standard) causality provides a powerful tool to investigate the inverse of a dynamical system described by a bond graph, it is restricted to co-located source-sensor pairs where the input and output reside on a single SS component. To remove this restriction, the concept of bicausality was introduced[52] and applied to various inversion problems.[53][54][55] Bicausality has also been used in the context of fault detection[56][57], analysis of dynamical system structural properties[58][59], control system design[60][61][62][63][64] and nonlinear analysis[65].

Source sensor (SS) components

[edit]
πŸ‘ Image
SS (source-sensor) bicausality

The SS (source-sensor) component has two possible causal configurations corresponding to Se/Df (effort source, flow sensor) and De/Sf (effort sensor, flow source). As illustrated in the figure, the SS component has two bicausal configurations corresponding to Se/Sf (effort source, flow source) and De/Df (effort sensor, flow sensor). This is represented graphically using causal half-strokes where the half-stroke on the harpoon side of the bond corresponds to flow and the half-stroke on the other side of the bond corresponds to effort.

The rules for the bicausality of junctions are the same as those for causality: only one bond imposes an effort onto a 0-junction and only one bond imposes a flow onto a 1-junction. In the context of inversion, the bonds connected to I, C and components cannot be bicausal.

These ideas are illustrated using an example with non-collocated source and sensor.

Example: inversion of non-collocated source-sensor system

[edit]
πŸ‘ Image
Example with extra SS: causality.

The example is extended by adding a zero junction and a further SS component. In the mechanical case, this corresponds to inserting a force sensor and velocity source between the spring and the ground; in the electrical case it corresponds to adding a current source and voltage sensor in parallel to the capacitor. The example is simplified by setting the flow of the added flow source to zero as indicated on the bond graph.

As in the collocated example, the mechanical system is considered and system input is taken to be the force πŸ‘ {\displaystyle F}
acting on the mass M. However, the output is taken to be the force πŸ‘ {\displaystyle F_{s}}
of the spring which is not collocated with the applied force πŸ‘ {\displaystyle F}
.

πŸ‘ Image
Inverse example with extra SS: bicausality.

The corresponding state-space system is the same except that the output matrix C is given by:

πŸ‘ {\displaystyle C={\begin{pmatrix}k&0\end{pmatrix}}}

reflecting the change of the sensor. The transfer function relating input πŸ‘ {\displaystyle F}
to output πŸ‘ {\displaystyle F_{s}}
becomes:

πŸ‘ {\displaystyle {k \over {\left(k+ds+ms^{2}\right)}}}

The denominator remains unchanged, but the numerator is different reflecting the change of sensor.

The system is inverted by making the output πŸ‘ {\displaystyle F_{s}}
an input and the input πŸ‘ {\displaystyle F}
an output. Thus the left hand SS becomes both an effort and flow sensor and the right hand SS becomes both and effort and flow source with the corresponding causalities. As the I, C and R components must retain conventional causality, the bicausality propagates as shown. Both the I and C components are in derivative causality and thus the zero dynamics are zero order which, in this simple case, corresponds to the fact that the transfer function of the original system has a zero order numerator.

As in the collocated case, the transfer function of the inverse system is the reciprocal of the transfer function of the system; again, the bond graph causality method can also be used to examine the zero dynamics of nonlinear systems.[65][54]

Deriving the bond graph of mechanical, electrical and electromechanical systems

[edit]

Methods for deriving the bond graph of systems in various physical domains are explained in detail in the textbooks.[4][6][7] A detailed derivation of a laboratory electromechanical system is given in a tutorial paper.[3]

This section has methods and worked examples for some simple systems .

Electromagnetic

[edit]

The steps for solving an Electromagnetic problem as a bond graph are as follows:

  1. Place an 0-junction at each node
  2. Insert Sources, R, I, C, TR, and GY bonds with 1 junctions
  3. Ground (both sides if a transformer or gyrator is present)
  4. Assign power flow direction
  5. Simplify

These steps are shown more clearly in the examples below.

Linear mechanical

[edit]

The steps for solving a Linear Mechanical problem as a bond graph are as follows:

  1. Place 1-junctions for each distinct velocity (usually at a mass)
  2. Insert R and C bonds at their own 0-junctions between the 1 junctions where they act
  3. Insert Sources and I bonds on the 1 junctions where they act
  4. Assign power flow direction
  5. Simplify

These steps are shown more clearly in the examples below.

Simplifying

[edit]

The simplifying step is the same regardless if the system was electromagnetic or linear mechanical. The steps are:

  1. Remove Bond of zero power (due to ground or zero velocity)
  2. Remove 0 and 1 junctions with less than three bonds
  3. Simplify parallel power
  4. Combine 0 junctions in series
  5. Combine 1 junctions in series

These steps are shown more clearly in the examples below.

Parallel power

[edit]

Parallel power is when power runs in parallel in a bond graph. An example of parallel power is shown below.

πŸ‘ Image

Parallel power can be simplified, by recalling the relationship between effort and flow for 0 and 1-junctions. To solve parallel power, one will first want to write down all of the equations for the junctions. For the example provided, the equations can be seen below. (Please make note of the number bond the effort/flow variable represents). πŸ‘ {\displaystyle {\begin{matrix}f_{1}=f_{2}=f_{3}&&e_{2}=e_{4}=e_{7}\\e_{1}=e_{2}+e_{3}&&f_{2}=f_{4}+f_{7}\\&&\\e_{3}=e_{5}=e_{6}&&f_{7}=f_{6}=f_{8}\\f_{3}=f_{5}+f_{6}&&e_{7}+e_{6}=e_{8}\end{matrix}}}

By manipulating these equations one can arrange them such that one can find an equivalent set of 0- and 1-junctions to describe the parallel power.

For example, because πŸ‘ {\textstyle e_{3}=e_{6}}
and πŸ‘ {\textstyle e_{2}=e_{7}}
one can replace the variables in the equation πŸ‘ {\textstyle e_{1}=e_{2}+e_{3}}
resulting in πŸ‘ {\textstyle e_{1}=e_{6}+e_{7}}
and since πŸ‘ {\textstyle e_{6}+e_{7}=e_{8}}
, we now know that πŸ‘ {\displaystyle e_{1}=e_{8}}
. This relationship of two effort variables equaling can be explained by an 0-junction. Manipulating other equations one can find that πŸ‘ {\displaystyle f_{4}=f_{5}}
which describes the relationship of a 1-junction. Once the relationships have been determineds, one can redraw the parallel power section with the new junctions. The result for the example show is seen below.

πŸ‘ Image

Examples

[edit]

Simple electrical system

[edit]

A simple electrical circuit consisting of a voltage source, resistor, and capacitor in series.

πŸ‘ Image

The first step is to draw 0-junctions at all of the nodes: πŸ‘ {\displaystyle {\begin{matrix}&0&&0&\\&&&&\\&&&&\\&0&&0&\end{matrix}}}

The next step is to add all of the elements acting at their own 1-junction: πŸ‘ {\displaystyle {\begin{matrix}&&&&R&&&&\\&&&&|&&&&\\&&0&-&1&-&0&&\\&&|&&&&|&&\\S_{e}&-&1&&&&1&-&C\\&&|&&&&|&&\\&&{\underline {0}}&-&-&-&0&&\end{matrix}}}

The next step is to pick a ground. The ground is simply an 0-junction that is going to be assumed to have no voltage. For this case, the ground will be chosen to be the lower left 0-junction, that is underlined above. The next step is to draw all of the arrows for the bond graph. The arrows on junctions should point towards ground (following a similar path to current). For resistance, inertance, and compliance elements, the arrows always point towards the elements. The result of drawing the arrows can be seen below, with the 0-junction marked with a star as the ground.

πŸ‘ Image

Now that we have the Bond graph, we can start the process of simplifying it. The first step is to remove all the ground nodes. Both of the bottom 0-junctions can be removed, because they are both grounded. The result is shown below.

πŸ‘ Image

Next, the junctions with less than three bonds can be removed. This is because flow and effort pass through these junctions without being modified, so they can be removed to allow us to draw less. The result can be seen below.

πŸ‘ Image

The final step is to apply causality to the bond graph. Applying causality was explained above. The final bond graph is shown below.

πŸ‘ Image

Advanced electrical system

[edit]

A more advanced electrical system with a current source, resistors, capacitors, and a transformer

πŸ‘ Image

Following the steps with this circuit will result in the bond graph below, before it is simplified. The nodes marked with the star denote the ground.

πŸ‘ Image

Simplifying the bond graph will result in the image below.

πŸ‘ Image

Lastly, applying causality will result in the bond graph below. The bond with star denotes a causal conflict.

πŸ‘ Image

Simple linear mechanical

[edit]

A simple linear mechanical system, consisting of a mass on a spring that is attached to a wall. The mass has some force being applied to it. An image of the system is shown below.

πŸ‘ Image

For a mechanical system, the first step is to place a 1-junction at each distinct velocity, in this case there are two distinct velocities, the mass and the wall. It is usually helpful to label the 1-junctions for reference. The result is below. πŸ‘ {\displaystyle {\begin{matrix}&&\\&&\\1_{\text{mass}}&&\\&&\\&&\\&&\\1_{\text{wall}}&&\end{matrix}}}

The next step is to draw the R and C bonds at their own 0-junctions between the 1-junctions where they act. For this example there is only one of these bonds, the C bond for the spring. It acts between the 1-junction representing the mass and the 1-junction representing the wall. The result is below. πŸ‘ {\displaystyle {\begin{matrix}&&\\&&\\1_{\text{mass}}&&\\|&&\\0&-&C:{\frac {1}{k}}\\|&&\\1_{\text{wall}}&&\end{matrix}}}

Next one wants to add the sources and I bonds on the 1-junction where they act. There is one source, the source of effort (force) and one I bond, the mass of the mass both of which act on the 1-junction of the mass. The result is shown below. πŸ‘ {\displaystyle {\begin{matrix}S_{e}:F(t)&&\\|&&\\1_{\text{mass}}&-&I:m\\|&&\\0&-&C:{\frac {1}{k}}\\|&&\\1_{\text{wall}}&&\end{matrix}}}

Next power flow is to be assigned. Like the electrical examples, power should flow towards ground, in this case the 1-junction of the wall. Exceptions to this are R, C, or I bond, which always point towards the element. The resulting bond graph is below.

πŸ‘ Image

Now that the bond graph has been generated, it can be simplified. Because the wall is grounded (has zero velocity), one can remove that junction. As such the 0-junction the C bond is on, can also be removed because it will then have less than three bonds. The simplified bond graph can be seen below.

πŸ‘ Image

The last step is to apply causality, the final bond graph can be seen below.

πŸ‘ Image

Advanced linear mechanical

[edit]

A more advanced linear mechanical system can be seen below.

πŸ‘ Image

Just like the above example, the first step is to make 1-junctions at each of the distant velocities. In this example there are three distant velocity, Mass 1, Mass 2, and the wall. Then one connects all of the bonds and assign power flow. The bond can be seen below.

πŸ‘ Image

Next one starts the process of simplifying the bond graph, by removing the 1-junction of the wall, and removing junctions with less than three bonds. The bond graph can be seen below.

πŸ‘ Image

There is parallel power in the bond graph. Solving parallel power was explained above. The result of solving it can be seen below.

πŸ‘ Image

Lastly, apply causality, the final bond graph can be seen below.

πŸ‘ Image

State equations

[edit]

Once a bond graph is complete, it can be utilized to generate the state-space representation equations of the system. State-space representation is especially powerful as it allows complex multi-order differential system to be solved as a system of first-order equations instead. The general form of the state equation is πŸ‘ {\displaystyle {\dot {\mathbf {x} }}(t)=\mathbf {A} \mathbf {x} (t)+\mathbf {B} \mathbf {u} (t)}
where πŸ‘ {\textstyle \mathbf {x} (t)}
is a column matrix of the state variables, or the unknowns of the system. πŸ‘ {\textstyle {\dot {\mathbf {x} }}(t)}
is the time derivative of the state variables. πŸ‘ {\textstyle \mathbf {u} (t)}
is a column matrix of the inputs of the system. And πŸ‘ {\textstyle \mathbf {A} }
and πŸ‘ {\textstyle \mathbf {B} }
are matrices of constants based on the system. The state variables of a system are πŸ‘ {\textstyle q(t)}
and πŸ‘ {\textstyle p(t)}
values for each C and I bond without a causal conflict. Each I bond gets a πŸ‘ {\textstyle p(t)}
while each C bond gets a πŸ‘ {\textstyle q(t)}
.

For example, if one has the following bond graph

πŸ‘ Image

one would have the following πŸ‘ {\textstyle {\dot {\mathbf {x} }}(t)}
, πŸ‘ {\textstyle \mathbf {x} (t)}
, and πŸ‘ {\textstyle \mathbf {u} (t)}
matrices:

πŸ‘ {\displaystyle {\dot {\mathbf {x} }}(t)={\begin{bmatrix}{\dot {p}}_{3}(t)\\{\dot {q}}_{6}(t)\end{bmatrix}}\qquad {\text{and}}\qquad \mathbf {x} (t)={\begin{bmatrix}p_{3}(t)\\q_{6}(t)\end{bmatrix}}\qquad {\text{and}}\qquad \mathbf {u} (t)={\begin{bmatrix}e_{1}(t)\end{bmatrix}}}

The matrices of πŸ‘ {\textstyle \mathbf {A} }
and πŸ‘ {\textstyle \mathbf {B} }
are solved by determining the relationship of the state variables and their respective elements, as was described in the tetrahedron of state. The first step to solve the state equations is to list all of the governing equations for the bond graph. The table below shows the relationship between bonds and their governing equations.

Element type Bond Name Bond with causality Governing equation(s)
Single-port elements Source/ Sink, S πŸ‘ {\displaystyle S_{e}\;{\overset {\textstyle }{\underset {\textstyle }{-\!\!\!-\!\!\!-\!\!\!\rightharpoonup \!\!\!|}}}\;}
πŸ‘ {\displaystyle {\text{input}}=e(t)}
πŸ‘ {\displaystyle S_{f}\;{\overset {\textstyle }{\underset {\textstyle }{|\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\;}
πŸ‘ {\displaystyle {\text{input}}=f(t)}
Resistance, R:

Dissipated Energy

πŸ‘ {\displaystyle \;{\overset {\textstyle }{\underset {\textstyle }{-\!\!\!-\!\!\!-\!\!\!\rightharpoonup \!\!\!|}}}\ R}
πŸ‘ {\displaystyle f(t)={\frac {1}{R}}e(t)}
πŸ‘ {\displaystyle \;{\overset {\textstyle }{\underset {\textstyle }{|\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\ R}
πŸ‘ {\displaystyle e(t)=Rf(t)}
Inertance, I:

Kinetic Energy

β™¦πŸ‘ {\displaystyle \;{\overset {\textstyle }{\underset {\textstyle }{-\!\!\!-\!\!\!-\!\!\!\rightharpoonup \!\!\!|}}}\ I}
πŸ‘ {\displaystyle f(t)={\frac {1}{I}}\int e(t)\,dt}
πŸ‘ {\displaystyle \;{\overset {\textstyle }{\underset {\textstyle }{|\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\ I}
πŸ‘ {\displaystyle e(t)=I{\dot {f}}(t)}
Compliance, C:

Potential Energy

πŸ‘ {\displaystyle \;{\overset {\textstyle }{\underset {\textstyle }{-\!\!\!-\!\!\!-\!\!\!\rightharpoonup \!\!\!|}}}\ C}
πŸ‘ {\displaystyle f(t)=C{\dot {e}}(t)}
β™¦πŸ‘ {\displaystyle \;{\overset {\textstyle }{\underset {\textstyle }{|\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\ C}
πŸ‘ {\displaystyle e(t)={\frac {1}{C}}\int f(t)\,dt}
Double-port elements Transformer, TR πŸ‘ {\displaystyle {\begin{matrix}{\overset {\textstyle }{{\underset {\textstyle }{\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}|}}\ TR\ \ {\overset {\textstyle }{\underset {\textstyle }{\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}|\ \\^{r:1}\end{matrix}}}
πŸ‘ {\displaystyle f_{1}={\frac {1}{r}}f_{2}}

πŸ‘ {\displaystyle e_{2}={\frac {1}{r}}e_{1}}

πŸ‘ {\displaystyle {\begin{matrix}|\ {\overset {\textstyle }{\underset {\textstyle }{\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\ TR\ \ |\ {\overset {\textstyle }{\underset {\textstyle }{\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\ \\^{r:1}\end{matrix}}}
πŸ‘ {\displaystyle e_{1}=re_{2}}

πŸ‘ {\displaystyle f_{2}=rf_{1}}

Gyrator, GY πŸ‘ {\displaystyle {\begin{matrix}|\ {\overset {\textstyle }{\underset {\textstyle }{\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\ GY{\overset {\textstyle }{\underset {\textstyle }{\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}|\ \\^{g:1}\end{matrix}}}
πŸ‘ {\displaystyle e_{1}=gf_{2}}

πŸ‘ {\displaystyle e_{2}=gf_{1}}

πŸ‘ {\displaystyle {\begin{matrix}\ {\overset {\textstyle }{\underset {\textstyle }{\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}|\ GY{\overset {\textstyle }{\underset {\textstyle }{|\!\!\!-\!\!\!-\!\!\!-\!\!\!\rightharpoonup }}}\ \\^{g:1}\end{matrix}}}
πŸ‘ {\displaystyle f_{1}={\frac {1}{g}}e_{2}}

πŸ‘ {\displaystyle f_{2}={\frac {1}{g}}e_{1}}

Multi-port elements 0 junction One and only one

causal bar at the junction

πŸ‘ {\displaystyle {\text{all }}e(t)=}
πŸ‘ {\displaystyle \sum f(t)_{\text{in}}=\sum f(t)_{\text{out}}}
1 junction one and only one causal

bar away from the junction

πŸ‘ {\displaystyle \sum e(t)_{\text{in}}=\sum e(t)_{\text{out}}}
πŸ‘ {\displaystyle {\text{all }}f(t)=}

"♦" denotes preferred causality.

For the example provided,

πŸ‘ Image

the governing equations are the following.

  1. πŸ‘ {\textstyle e_{1}={\text{input}}}
  2. πŸ‘ {\textstyle e_{3}=e_{1}-e_{2}-e_{4}}
  3. πŸ‘ {\textstyle f_{1}=f_{2}=f_{4}=f_{3}}
  4. πŸ‘ {\textstyle e_{2}=R_{2}f_{2}}
  5. πŸ‘ {\textstyle f_{3}={\frac {1}{I_{3}}}\int e_{3}\,dt={\frac {1}{I_{3}}}p_{3}}
  6. πŸ‘ {\textstyle f_{5}=f_{4}\cdot r}
  7. πŸ‘ {\textstyle e_{4}=e_{5}\cdot r}
  8. πŸ‘ {\textstyle e_{5}=e_{7}=e_{6}}
  9. πŸ‘ {\textstyle f_{6}=f_{5}-f_{7}}
  10. πŸ‘ {\textstyle e_{6}={\frac {1}{C_{6}}}\int f_{6}\,dt={\frac {1}{C_{6}}}q_{6}}
  11. πŸ‘ {\textstyle f_{7}={\frac {1}{R_{7}}}e_{7}}

These equations can be manipulated to yield the state equations. For this example, one is trying to find equations that relate πŸ‘ {\textstyle {\dot {p}}_{3}(t)}
and πŸ‘ {\textstyle {\dot {q}}_{6}(t)}
in terms of πŸ‘ {\textstyle p_{3}(t)}
, πŸ‘ {\textstyle q_{6}(t)}
, and πŸ‘ {\textstyle e_{1}(t)}
.

To start, one should recall from the tetrahedron of state that πŸ‘ {\textstyle {\dot {p}}_{3}(t)=e_{3}(t)}
starting with equation 2, one can rearrange it so that πŸ‘ {\displaystyle e_{3}=e_{1}-e_{2}-e_{4}}
. πŸ‘ {\displaystyle e_{2}}
can be substituted for equation 4, while in equation 4, πŸ‘ {\displaystyle f_{2}}
can be replaced by πŸ‘ {\displaystyle f_{3}}
due to equation 3, which can then be replaced by equation 5. πŸ‘ {\displaystyle e_{4}}
can likewise be replaced using equation 7, in which πŸ‘ {\displaystyle e_{5}}
can be replaced with πŸ‘ {\displaystyle e_{6}}
which can then be replaced with equation 10. Following these substituted yields the first state equation which is shown below.

πŸ‘ {\displaystyle {\dot {p}}_{3}(t)=e_{3}(t)=e_{1}(t)-{\frac {R_{2}}{I_{3}}}p_{3}(t)-{\frac {r}{C_{6}}}q_{6}(t)}

The second state equation can likewise be solved, by recalling that πŸ‘ {\textstyle {\dot {q}}_{6}(t)=f_{6}(t)}
. The second state equation is shown below.

πŸ‘ {\displaystyle {\dot {q}}_{6}(t)=f_{6}(t)={\frac {r}{I_{3}}}p_{3}(t)-{\frac {1}{R_{7}\cdot C_{6}}}q_{6}(t)}

Both equations can further be rearranged into matrix form. The result of which is below.

πŸ‘ {\displaystyle {\begin{bmatrix}{\dot {p}}_{3}(t)\\{\dot {q}}_{6}(t)\end{bmatrix}}={\begin{bmatrix}-{\frac {R_{2}}{I_{3}}}&-{\frac {r}{C_{6}}}\\{\frac {r}{I_{3}}}&-{\frac {1}{R_{7}\cdot C_{6}}}\end{bmatrix}}{\begin{bmatrix}p_{3}(t)\\q_{6}(t)\end{bmatrix}}+{\begin{bmatrix}1\\0\end{bmatrix}}{\begin{bmatrix}e_{1}(t)\end{bmatrix}}}

At this point the equations can be treated as any other state-space representation problem.

International conferences on bond graph modeling (ECMS and ICBGM)

[edit]

A bibliography on bond graph modeling may be extracted from the following conferences :

See also

[edit]

Systems for bond graph

[edit]

Many systems can be expressed in terms used in bond graph. These terms are expressed in the table below.

Conventions for the table below:

Generalized flow Generalized displacement Generalized effort Generalized momentum Generalized power (in watts for power systems) Generalized energy (in joules for power systems)
Name πŸ‘ {\displaystyle {\vec {f}}(t)}
πŸ‘ {\displaystyle {\vec {q}}(t)}
πŸ‘ {\displaystyle {\vec {e}}(t)}
πŸ‘ {\displaystyle {\vec {p}}(t)}
πŸ‘ {\displaystyle P={\vec {f}}(t)^{\dagger }{\vec {e}}(t)}
πŸ‘ {\displaystyle E={\vec {q}}(t)^{\dagger }{\vec {e}}(t)}
Description Time derivative of displacement A quality related to static behaviour. The energy per unit of displacement Time integral of effort Transformation of energy from one to another form Conserved quantity in closed systems
Elements
Name Hyperance πŸ‘ {\displaystyle H}
,
hyperrigitance πŸ‘ {\displaystyle P=H^{-1}}
Compliance πŸ‘ {\displaystyle C}
,
rigitance πŸ‘ {\displaystyle K=C^{-1}}
Resistance πŸ‘ {\displaystyle R}
Inertance πŸ‘ {\displaystyle I}
(or πŸ‘ {\displaystyle L}
)
Abrahance πŸ‘ {\displaystyle A}
Magnance πŸ‘ {\displaystyle M}
Properties Power dissipative element Charge storage element

(State variable: displacement)

(Costate variable: effort)

Power dissipative element Momentum storage element

(State variable: momentum)

(Costate variable: flow)

Power dissipative element Power dissipative element
Quantitative behaviour For 1-dimension systems (linear): πŸ‘ {\displaystyle P=H\cdot \left(D_{t}^{0}q(t)\right)^{2}}

For 1-dimension systems: πŸ‘ {\displaystyle e(t)=P\gamma \left[D_{t}^{-1}q(t)\right]}

Impedance: πŸ‘ {\displaystyle Z(s)={\frac {1}{s^{2}H}}={\frac {1}{s^{2}}}P}

Potential energy for N-dimension systems: πŸ‘ {\displaystyle {\begin{array}{lcl}V&=&{\frac {1}{2}}{\vec {q}}(t)^{\dagger }{\vec {e}}(t)\\{\vec {q}}(t)&=&{\hat {C}}{\vec {e}}(t)\end{array}}}

Potential energy: πŸ‘ {\displaystyle V=\int _{0}^{q}e(q)\,dq}

Potential coenergy: πŸ‘ {\displaystyle {\overline {V}}=\int _{0}^{e}q(e)de}

For 1-dimension systems: πŸ‘ {\displaystyle f(t)=C\cdot {\frac {de}{dt}}+e{\frac {dC}{dt}}}

Impedance: πŸ‘ {\displaystyle Z(s)={\frac {1}{sC}}={\frac {1}{s}}k}

For 1-dimension systems (linear): πŸ‘ {\displaystyle P=R\cdot \left(D_{t}q(t)\right)^{2}}

Power for 1-dimension non-linear resistances (πŸ‘ {\displaystyle e(f)}
is the effort developed by the element): πŸ‘ {\displaystyle P=e(f)f}

Rayleigh power: πŸ‘ {\displaystyle {\mathfrak {R}}={\frac {1}{2}}R\cdot f(t)^{2}}

Rayleigh oower for non-linear resistances: πŸ‘ {\displaystyle {\mathfrak {R}}=\int _{0}^{f}e(f)\,df}

Rayleigh effort: πŸ‘ {\displaystyle e_{\mathfrak {R}}={\frac {d{\mathfrak {R}}}{df}}=e(f)}

For N-dimension systems: πŸ‘ {\displaystyle {\begin{array}{lcr}P&=&{\vec {f}}(t)^{\dagger }{\vec {e}}(t)\\{\vec {e}}(t)&=&{\hat {R}}{\vec {f}}(t)\end{array}}}

For 1-dimension systems: πŸ‘ {\displaystyle e(t)=R\cdot \gamma \left[D_{t}^{1}q(t)\right]}

Impedance: πŸ‘ {\displaystyle Z(s)=R}

Kinetic energy for N-dimension systems: πŸ‘ {\displaystyle {\begin{array}{lcl}T={\frac {1}{2}}{\vec {\rho }}(t)^{\dagger }{\vec {f}}(t)\\{\vec {\rho }}(t)={\hat {L}}{\vec {f}}(t)\end{array}}}

Kinetic energy: πŸ‘ {\displaystyle T=\int _{0}^{\rho }f(\rho )\,d\rho }

Kinetic coenergy: πŸ‘ {\displaystyle {\overline {T}}=\int _{0}^{f}\rho (f)\,df}

For 1-dimension systems: πŸ‘ {\displaystyle e(t)=L\cdot {\frac {df}{dt}}+f\cdot {\frac {dL}{dt}}}

Impedance: πŸ‘ {\displaystyle Z(s)=sL}

For 1-dimension systems (linear): πŸ‘ {\displaystyle P=A\cdot \left(D_{t}^{2}q(t)\right)^{2}}

For 1-dimension systems: πŸ‘ {\displaystyle e(t)=A\cdot \gamma \left[D_{t}^{3}q(t)\right]}

Impedance πŸ‘ {\displaystyle Z(s)=s^{2}A}

For 1-dimension systems (linear) πŸ‘ {\displaystyle P=A\cdot \left(D_{t}^{3}q(t)\right)^{2}}

For 1-dimension systems πŸ‘ {\displaystyle e(t)=M\cdot \gamma \left[D_{t}^{5}q(t)\right]}

Impedance πŸ‘ {\displaystyle Z(s)=s^{4}M}

Generalized behaviour Energy from active effort sources: πŸ‘ {\displaystyle W=\int _{0}^{q}{e_{\text{source}}}\,dq}

Lagrangian: πŸ‘ {\displaystyle {\mathfrak {L}}=T-(V-W)}

Hamiltonian: πŸ‘ {\displaystyle {\mathfrak {H}}=T+(V-W)}

Hamiltonian effort: πŸ‘ {\displaystyle e_{\mathfrak {H}}={\frac {d{\mathfrak {H}}}{dq}}}

Lagrangian effort: πŸ‘ {\displaystyle e_{\mathfrak {L}}={\frac {d{\mathfrak {L}}}{dq}}}

Passive effort: πŸ‘ {\displaystyle e_{\mathfrak {LH}}={\frac {d}{dt}}{\frac {d{\mathfrak {L}}}{df}}}

Power equation: πŸ‘ {\displaystyle {\frac {d{\mathfrak {L}}}{dt}}+{\frac {d{\mathfrak {H}}}{dt}}=0}

Effort equation: πŸ‘ {\displaystyle e_{\mathfrak {L}}+e_{\mathfrak {H}}=0}

Lagrangian equation: πŸ‘ {\displaystyle e_{\mathfrak {R}}+e_{\mathfrak {LH}}=e_{\mathfrak {L}}}

Hamiltonian equation: πŸ‘ {\displaystyle e_{\mathfrak {R}}+e_{\mathfrak {LH}}=-e_{\mathfrak {H}}}

If πŸ‘ {\displaystyle {\overline {W}}}
is the coenergy, πŸ‘ {\displaystyle W}
is the energy, πŸ‘ {\displaystyle S}
is the state variable and πŸ‘ {\displaystyle {\overline {S}}}
is the costate variable,

πŸ‘ {\displaystyle {\begin{aligned}{\overline {W}}+W=S\cdot {\overline {S}}\\{\overline {W}}=\int _{0}^{\overline {S}}S({\overline {S}})\,d{\overline {S}}\\W=\int _{0}^{S}{\overline {S}}(S)dS\end{aligned}}}

For linear elements: πŸ‘ {\displaystyle {\overline {W}}=W={\frac {1}{2}}S\cdot {\overline {S}}}

Longitudinal mechanical power system[66]
Flow-related variables πŸ‘ {\displaystyle D_{t}^{6}x}
: pounce / pop πŸ‘ {\displaystyle \mathrm {[m/s^{6}]} }
πŸ‘ {\displaystyle D_{t}^{5}x}
: flounce / crackle πŸ‘ {\displaystyle \mathrm {[m/s^{5}]} }
πŸ‘ {\displaystyle D_{t}^{4}x}
: jounce / snap πŸ‘ {\displaystyle \mathrm {[m/s^{4}]} }
πŸ‘ {\displaystyle D_{t}^{3}x}
: jerk πŸ‘ {\displaystyle \mathrm {[m/s^{3}]} }
πŸ‘ {\displaystyle D_{t}^{2}x}
: acceleration πŸ‘ {\displaystyle (x_{2t})\ \mathrm {[m/s^{2}]} }
πŸ‘ {\displaystyle D_{t}^{1}x}
: velocity πŸ‘ {\displaystyle (x_{t})\ \mathrm {[m/s]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{0}x}
: displacement πŸ‘ {\displaystyle (x)\ \mathrm {[m]} }
(displacement)
πŸ‘ {\displaystyle D_{t}^{-1}x}
: absement πŸ‘ {\displaystyle \mathrm {[m\cdot s]} }
πŸ‘ {\displaystyle D_{t}^{-2}x}
: absity πŸ‘ {\displaystyle \mathrm {[m\cdot s^{2}]} }
πŸ‘ {\displaystyle D_{t}^{-3}x}
: abseleration πŸ‘ {\displaystyle \mathrm {[m\cdot s^{3}]} }
πŸ‘ {\displaystyle D_{t}^{-4}x}
: abserk πŸ‘ {\displaystyle \mathrm {[m\cdot s^{4}]} }
Effort-related variables πŸ‘ {\displaystyle D_{t}^{1}F}
: yank πŸ‘ {\displaystyle \mathrm {[N/s]} }
πŸ‘ {\displaystyle D_{t}^{0}F}
: force πŸ‘ {\displaystyle (P_{x}^{t})\ \mathrm {[N]} }
(effort)
πŸ‘ {\displaystyle D_{t}^{-1}F}
: linear momentum πŸ‘ {\displaystyle (P_{x}^{2t})\ \mathrm {[kg\cdot m/s]} }
(momentum)
Passive elements
Compliance (C) Resistance (R) Inertance (I) Abrahance (A) Magnance (M)
Spring πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =k\langle x\rangle }
where πŸ‘ {\displaystyle k}
is the spring stiffness
Damper πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =b\langle x_{t}\rangle }
where πŸ‘ {\displaystyle b}
is the damper parameter
Mass πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =m\langle x_{2t}\rangle }
where πŸ‘ {\displaystyle m}
is the mass
Abraham–Lorentz force

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {\mu _{0}q^{2}}{6\pi c}}\langle x_{3t}\rangle }
where

Magnetic radiation reaction force

πŸ‘ {\displaystyle \langle P_{q}^{t}\rangle ={\frac {\mu _{0}q^{2}R}{24\pi c^{3}}}\langle x_{5t}\rangle }
where

Cantilever πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {3EI}{L^{3}}}\langle x\rangle }
Cyclotron radiation resistance

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {\sigma _{t}B^{2}}{c\mu _{0}}}\langle x_{t}\rangle }
where

Prismatic floater in a wide waterbody

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =\rho _{L}gA\langle x\rangle }
where

Viscous friction πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =b\langle x_{t}\rangle }
where πŸ‘ {\displaystyle b}
is the viscous friction parameter
Elastic rod πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {EA}{L}}\langle x\rangle }

where

Inverse of kinetic mobility πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {1}{\mu }}\langle x_{t}\rangle }
where πŸ‘ {\displaystyle \mu }
is the kinetic mobility
Newton's law of gravitation

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =GMm\langle x\rangle ^{-2}}
where

Geometry interacting with air (e.g. drag)

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {1}{2}}c\rho A\langle x_{t}\rangle ^{2}}
where

Coulomb's law

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {Qq}{4\pi \varepsilon _{0}}}\langle x\rangle ^{-2}}
where

Absquare[clarification needed] damper πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =B\langle x_{t}\rangle ^{2}}
where πŸ‘ {\displaystyle B}
is the Absquare damper parameter
Casimir force

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {A\hbar c\pi ^{2}}{240}}\langle x\rangle ^{-4}}
where

Dry friction

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle =\mu F_{n}\langle x_{t}\rangle ^{0}}
where

Biot–Savart law

πŸ‘ {\displaystyle \langle P_{x}^{t}\rangle ={\frac {\mu _{0}I_{1}I_{2}l}{2\pi }}\langle x\rangle ^{-1}}
where

Piston pressing fluid inside an adiabatic chamber

πŸ‘ {\displaystyle P_{x}^{t}=AP_{0}\left(1+{\frac {x}{x_{0}}}\right)^{-\gamma }}
where

Angular mechanical power system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{3}\theta }
: angular jerk πŸ‘ {\displaystyle \mathrm {[rad/s^{3}]} }
πŸ‘ {\displaystyle D_{t}^{2}\theta }
: angular acceleration πŸ‘ {\displaystyle (\theta _{2t})\ \mathrm {[rad/s^{2}]} }
πŸ‘ {\displaystyle D_{t}^{1}\theta }
: angular velocity πŸ‘ {\displaystyle (\theta _{t})\ \mathrm {[rad/s]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{0}\theta }
: angular displacement πŸ‘ {\displaystyle (\theta )\ \mathrm {[rad]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{1}\tau }
: rotatum πŸ‘ {\displaystyle \mathrm {[W/rad]} }
πŸ‘ {\displaystyle D_{t}^{0}\tau }
: rorque πŸ‘ {\displaystyle (P_{\theta }^{t})\ \mathrm {[J/rad]} }
(effort)
πŸ‘ {\displaystyle D_{t}^{-1}\tau }
: angular momentum πŸ‘ {\displaystyle (P_{\theta }^{2t})\ \mathrm {[J\cdot s/rad]} }
(momentum)
Passive elements
Compliance (C) Resistance (R) Inertance (I)
Inverse of the angular spring constant πŸ‘ {\displaystyle \langle P_{\theta }^{t}\rangle =k_{r}\langle \theta \rangle }
where πŸ‘ {\displaystyle k_{r}}
is the angular spring constant
Angular damping πŸ‘ {\displaystyle \langle P_{\theta }^{t}\rangle =R\langle \theta _{t}\rangle }
where πŸ‘ {\displaystyle R}
is the damping constant
Mass moment of inertia

Type πŸ‘ {\displaystyle \langle P_{\theta }^{t}\rangle =I\langle \theta _{2t}\rangle }

where πŸ‘ {\displaystyle I}
is the mass moment of inertia

Rod torsion

πŸ‘ {\displaystyle \langle P_{\theta }^{t}\rangle ={\frac {GJ}{L}}\langle \theta \rangle }
where

Governor (e.g. used in music boxes) πŸ‘ {\displaystyle \langle P_{\theta }^{t}\rangle =R\langle \theta _{t}\rangle ^{2}}
where πŸ‘ {\displaystyle R}
is the governor constant
Bending moment (cantilever)

πŸ‘ {\displaystyle \langle P_{\theta }^{t}\rangle ={\frac {EI}{L}}\langle \theta \rangle }
where

Parallel force field

πŸ‘ {\displaystyle \langle P_{\theta }^{t}\rangle =\langle P_{x}^{t}\rangle \sin \left(\alpha -\theta \right)}
where

Electric power system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{2}q}
: electric inertia πŸ‘ {\displaystyle \mathrm {[A/s]} }
πŸ‘ {\displaystyle D_{t}^{1}q}
: electric current πŸ‘ {\displaystyle (q_{t})\ \mathrm {[A]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{0}q}
: electric charge πŸ‘ {\displaystyle (q)\ \mathrm {[C]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{1}V}
: distension πŸ‘ {\displaystyle \mathrm {[V/s]} }
πŸ‘ {\displaystyle D_{t}^{0}V}
: voltage πŸ‘ {\displaystyle (P_{q}^{t})\ \mathrm {[V]} }
(effort)
πŸ‘ {\displaystyle D_{t}^{-1}V}
: flux linkage πŸ‘ {\displaystyle (P_{q}^{2t})\ \mathrm {[V\cdot s]} {\text{ or }}\mathrm {[Wb\cdot turn]} }
(momentum)
Elements
Hyperance (H) Compliance (C) Resistance (R) Inertance (I) Abrahance (A)
Frequency-dependent negative resistor (FDNR)

πŸ‘ {\displaystyle \langle P_{q}^{t}\rangle ={\frac {1}{H}}\langle q^{t}\rangle }

Linear capacitor

πŸ‘ {\displaystyle \langle P_{q}^{t}\rangle ={\frac {1}{\varepsilon }}\phi _{L}\langle q\rangle }
where

Linear resistor

πŸ‘ {\displaystyle \langle P_{q}^{t}\rangle =\rho \phi _{L}(1+\alpha (T-T_{0}))\langle q_{t}\rangle }
where

Linear inductor (solenoid)

πŸ‘ {\displaystyle \langle P_{q}^{t}\rangle ={\frac {\mu _{0}N^{2}A}{L}}\langle q_{2t}\rangle }
where

Frequency-dependent negative conductance (FDNC)

Type πŸ‘ {\displaystyle \gamma ^{1}\iff V=RD_{t}^{2}i\quad [H\cdot s]}

Diode

πŸ‘ {\displaystyle P_{q}^{t}=nV_{T}\ln \left(1+{\frac {q_{t}}{I_{s}}}\right)}
where

Toroid

πŸ‘ {\displaystyle \langle P_{q}^{t}\rangle ={\frac {\mu N^{2}A}{2\pi r}}\langle q_{2t}\rangle }
where

Intra-gyrator Inter-gyrator
Compliant gyrator Resistive gyrator Inertant gyrator
Hall effect device

πŸ‘ {\displaystyle {\begin{aligned}e_{x}=R_{H}{\frac {B_{z}}{t_{z}}}i_{y}\\e_{y}=R_{H}{\frac {B_{z}}{t_{z}}}i_{x}\end{aligned}}}
where

Induction motor

πŸ‘ {\displaystyle {\begin{aligned}e_{r}^{1}=M\cos(\theta )D_{t}f_{s}^{1}+f_{s}^{1}D_{t}\left[M\cos(\theta )\right]\\e_{s}^{1}=M\cos(\theta )D_{t}f_{r}^{1}+f_{r}^{1}D_{t}\left[M\cos(\theta )\right]\end{aligned}}}
where

DC motor

πŸ‘ {\displaystyle {\begin{aligned}\tau _{e}=k_{a}\phi _{a}(i_{e})i_{a}\\\omega _{e}={\frac {1}{k_{a}\phi _{a}(i_{e})}}e_{a}\end{aligned}}}
where

Faraday gyrator

πŸ‘ {\displaystyle {\begin{aligned}F&=Bli\\V&={\frac {1}{Bl}}v\end{aligned}}}
where

Faraday disk

πŸ‘ {\displaystyle {\begin{aligned}V&={\frac {1}{2}}Br^{2}\omega \\\tau &={\frac {1}{2}}Br^{2}i\end{aligned}}}
where

Intra-transformer Inter-transformer
Electrical transformer (only for AC signals)

πŸ‘ {\displaystyle {\begin{aligned}V_{2}&={\frac {N_{2}}{N_{1}}}V_{1}\\f_{2}&={\frac {N_{1}}{N_{2}}}f_{1}\end{aligned}}}

Hydraulic / pneumatic power system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{1}V}
: volumetric flow rate πŸ‘ {\displaystyle (V_{t})\ \mathrm {[m^{3}/s]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{0}V}
: volume πŸ‘ {\displaystyle (V)\ \mathrm {[m^{3}]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}P}
: pressure πŸ‘ {\displaystyle (P_{V}^{t})\ \mathrm {[Pa]} }
(effort)
πŸ‘ {\displaystyle D_{t}^{-1}P}
: fluid momentum πŸ‘ {\displaystyle (P_{V}^{2t})\ \mathrm {[Pa\cdot s]} }
(momentum)
Elements
Compliance (C) Resistance (R) Inertance (I)
Pipe elasticity

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =\left({\frac {t_{W}E}{2r_{0}V_{0}}}\right)\langle V\rangle }
where

Darcy sponge

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =\left({\frac {\mu }{k}}\phi _{L}\right)\langle V_{t}\rangle }
where

Fluid inertia in pipes

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =\left(\rho \phi _{L}\right)\langle V_{2t}\rangle }
where

Compressible fluid (approximation)

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =\left({\frac {B}{V_{0}}}\right)\langle V\rangle =\underbrace {\left({\frac {\rho _{0}c^{2}}{V_{0}}}\right)} _{\begin{array}{c}{\text{Acoustic}}\\{\text{Approximation}}\end{array}}\langle V\rangle }
where

Valve

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =\left({\frac {\rho }{2C_{d}^{2}A_{0}^{2}}}\right)\langle V_{t}\rangle ^{2}}

Tank with area πŸ‘ {\textstyle A{\frac {1}{[m]^{n-1}}}\left(h+h_{0}\right)^{n-1}}
:

πŸ‘ {\displaystyle P_{V}^{t}=\rho gh_{0}\left[\left(1+{\frac {nV}{A{\frac {1}{[m]^{n-1}}}h_{0}^{n}}}\right)^{1/n}-1\right]}
where

Poiseuille resistance for cylinders

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =\left({\frac {8\mu L}{\pi R^{4}}}\right)\langle V_{t}\rangle }
where

Isothermal chamber

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =k\langle V_{t}\rangle ^{-1}}
where πŸ‘ {\displaystyle k}
is chamber's constant

Turbulence resistance

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle =a_{t}\langle V_{t}\rangle ^{\frac {7}{4}}}
where πŸ‘ {\displaystyle a_{t}}
is an empirical parameter

Compressible fluid

πŸ‘ {\displaystyle P_{V}^{t}=-B\ln V}
where πŸ‘ {\displaystyle B}
is the bulk modulus

Nozzle

πŸ‘ {\displaystyle \langle P_{V}^{t}\rangle ={\frac {\rho }{2\left(A_{\text{out}}^{2}\parallel -A_{\text{in}}^{2}\right)}}\langle V_{t}\rangle ^{2}}
where

Adiabatic bladder

πŸ‘ {\displaystyle P_{V}^{t}=P_{V,0}^{t}\left(1-{\frac {V}{V_{0}}}\right)^{-\gamma }}
where

Check valve

πŸ‘ {\displaystyle P_{V}^{t}=k\ln \left(1+{\frac {V_{t}}{V_{t,0}}}\right)}
where

Gyrator–capacitor power system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{0}\varphi }
: magnetic flux πŸ‘ {\displaystyle (\varphi )\ \mathrm {[Wb]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}{\mathcal {F}}}
: magnetomotive force πŸ‘ {\displaystyle ({\mathcal {F}})\ \mathrm {[A\cdot turn]} }
(momentum)
Elements
Compliance (C) Resistance (R) Inertance (I)
Permeance (πŸ‘ {\displaystyle {\mathcal {P}}}
)

πŸ‘ {\displaystyle \langle {\mathcal {F}}\rangle ={\frac {1}{\mu }}\phi _{L}\langle \varphi \rangle \quad \mathrm {[H/turn^{2}]} }
where

Magnetic complex impedance (πŸ‘ {\displaystyle Z_{M}}
)

πŸ‘ {\displaystyle {\mathcal {F}}=Z_{M}{\varphi _{t}}\quad \mathrm {[{turn}^{2}/\Omega ]} }

Magnetic complex inductance (πŸ‘ {\displaystyle L_{M}}
)

πŸ‘ {\displaystyle {\mathcal {F}}=L_{M}{\varphi _{2t}}\quad \mathrm {[{turn}^{2}F]} }

Gravitational power system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{0}i_{g}}
: gravitational current Loop πŸ‘ {\displaystyle \left(i_{g}=2\varepsilon _{g}v_{\text{orbit}}^{3}\right)\ \mathrm {[kg/s]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{-1}i_{g}}
: gravitational charge πŸ‘ {\displaystyle (M)\ \mathrm {[kg]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}V_{g}}
: gravitational voltage πŸ‘ {\displaystyle \left(V_{g}={\frac {1}{2}}{\frac {v_{\text{orbit}}^{4}}{c^{2}}}\right)\ \mathrm {[m^{2}/s^{2}]} }
(effort)
πŸ‘ {\displaystyle D_{t}^{-1}V_{g}}
: gravitational momentum πŸ‘ {\displaystyle \left(\phi _{g}={\frac {\pi v_{\text{orbit}}^{3}r}{c^{2}}}\right)\ \mathrm {[m^{2}/s]} }
(momentum)
Elements
Compliance (C) Resistance (R) Inertance (I)
Gravitational capacitance

Type πŸ‘ {\displaystyle \gamma ^{1}\iff M_{g}=CV_{g}\quad \mathrm {[kg/m^{2}]} }

πŸ‘ {\displaystyle C_{g}={\frac {2c^{2}r^{2}}{GM}}}

Gravitational orbital resistance

Type πŸ‘ {\displaystyle \gamma ^{1}\iff V_{g}=R_{g}i_{g}\quad \mathrm {[m^{2}/kg\cdot s]} }

πŸ‘ {\displaystyle R_{g}={\frac {\mu _{g}}{4}}v_{\text{orbit}}}

Gravitational inductance

Type πŸ‘ {\displaystyle \gamma ^{1}\iff \phi _{g}=Ii_{g}\quad \mathrm {[m^{2}/kg\cdot s^{2}]} }

πŸ‘ {\displaystyle L_{g}={\frac {2\pi ^{2}G}{c^{2}}}r}

Electric field volumetric power density system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{0}J}
: current density πŸ‘ {\displaystyle (J)\ \mathrm {[A/m^{2}]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{-1}J}
: electric displacement field πŸ‘ {\displaystyle (D)\ \mathrm {[C/m^{2}]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}E}
: electric field πŸ‘ {\displaystyle (E)\ \mathrm {[V/m]} }
(effort)
πŸ‘ {\displaystyle D_{t}^{-1}E}
: magnetic potential vector πŸ‘ {\displaystyle (A)\ \mathrm {[V\cdot s/m]} }
(momentum)
Elements
Compliance (C) Resistance (R) Volumetric power density inertance (πŸ‘ {\displaystyle I_{V}}
)
Electrical permittivity

Type πŸ‘ {\displaystyle \gamma ^{1}\iff D=\epsilon _{0}E\quad \mathrm {[F/m]} }

Electrical resistivity

Type πŸ‘ {\displaystyle \gamma ^{1}\iff E=\rho J\quad \mathrm {[\Omega m]} }

Magnetic permeability πŸ‘ {\displaystyle \mu _{0}\ \mathrm {[H/m]} }
Magnetic field volumetric power density system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{0}B}
: magnetic flux density πŸ‘ {\displaystyle (B)\ \mathrm {[T]} {\text{ or }}\mathrm {[Wb/m^{2}]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}H}
: magnetic field strength πŸ‘ {\displaystyle (H)\ \mathrm {[A\cdot {turn}/m]} }
(effort)
Elements
Compliance (C) Resistance (R) Volumetric power density inertance (πŸ‘ {\displaystyle I_{V}}
)
Magnetic permeability for magnetic circuits

Type πŸ‘ {\displaystyle \gamma ^{1}\iff B=\mu H\quad \mathrm {[H/(m\cdot {turn}^{2})]} }

Gravitoelectric volumetric power density system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{0}J_{g}}
: flux of mass πŸ‘ {\displaystyle (J_{g})\ \mathrm {[kg/m^{2}s]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{-1}J_{g}}
: accumulated flux of mass πŸ‘ {\displaystyle (D_{g})\ \mathrm {[kg/m^{2}]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}g}
: acceleration of gravity πŸ‘ {\displaystyle (g)\ \mathrm {[m/s^{2}]} }
(effort)
Elements
Compliance (C) Resistance (R) Volumetric power density inertance (πŸ‘ {\displaystyle I_{V}}
)
Gravitational permittivity

Type πŸ‘ {\displaystyle \gamma ^{1}\iff D_{g}=\epsilon _{g}g\quad \mathrm {[kg\cdot s^{2}/m^{3}]} }

πŸ‘ {\displaystyle \varepsilon _{g}={\frac {1}{4\pi G}}}

Gravitational permeability πŸ‘ {\displaystyle \mathrm {[m/kg]} }
πŸ‘ {\displaystyle I_{V}=\mu _{g}={\frac {4\pi G}{c^{2}}}}
Gravitomagnetic volumetric power density system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{0}B_{g}}
: gravitomagnetic field πŸ‘ {\displaystyle \left(B_{g}=\omega _{\text{orbit}}\left({\frac {v_{\text{orbit}}}{c}}\right)^{2}\right)\ \mathrm {[Hz]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}H_{g}}
: gravitomagnetic field strength πŸ‘ {\displaystyle (H_{g})\ \mathrm {[Pa\cdot s]} }
(effort)
Elements
Compliance (C) Resistance (R) Volumetric power density inertance (πŸ‘ {\displaystyle I_{V}}
)
Gravitational permeability

πŸ‘ {\displaystyle -{\frac {4\pi G}{c^{2}}}\ \mathrm {[m/kg]} }

Thermal power-temperature system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{1}Q}
: heat rate πŸ‘ {\displaystyle (\psi _{t})\ \mathrm {[W]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{0}Q}
: total heat πŸ‘ {\displaystyle (\psi )\ \mathrm {[J]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}T}
: temperature πŸ‘ {\displaystyle (T)\ \mathrm {[K]} }
(Effort)
Elements
Compliance (C) Resistance (R) Inertance (I)
Isobaric heat

πŸ‘ {\displaystyle T={\frac {1}{\rho Vc_{p}}}\psi ={\frac {1}{C_{P}}}\psi }
where

Conduction resistance

πŸ‘ {\displaystyle T={\frac {1}{k}}\phi _{L}\psi _{t}}
where

Isocoric heat

πŸ‘ {\displaystyle T={\frac {1}{C_{V}}}\psi }
where πŸ‘ {\displaystyle C_{V}}
is the constant-volume heat capacitance

Convection resistance

πŸ‘ {\displaystyle T={\frac {1}{hA}}\psi _{t}}
where

Isothermal heat

πŸ‘ {\displaystyle T={\frac {1}{nR\ln \left({\frac {V_{f}}{V_{i}}}\right)}}\psi }
where

Stefan–Boltzmann law

πŸ‘ {\displaystyle \langle T\rangle =\left({\frac {1}{e\sigma A}}\right)^{0.25}\langle \psi _{t}\rangle ^{0.25}}
where

Continuum mechanics volumetric power density system
Flow-related variables πŸ‘ {\displaystyle D_{t}^{1}\varepsilon }
: strain rate πŸ‘ {\displaystyle ({\dot {\varepsilon }})\ \mathrm {[Hz]} }
(flow)
πŸ‘ {\displaystyle D_{t}^{0}\varepsilon }
: strain πŸ‘ {\displaystyle (\varepsilon )\ \mathrm {[1]} }
(displacement)
Effort-related variables πŸ‘ {\displaystyle D_{t}^{0}\sigma }
: stress πŸ‘ {\displaystyle (\sigma )\ \mathrm {[Pa]} }
(effort)
Elements
Compliance (C) Resistance (R) Volumetric power density inertance (πŸ‘ {\displaystyle I_{V}}
)
Inverse of rigidity

Type πŸ‘ {\displaystyle \gamma ^{1}\iff \varepsilon =C\sigma \quad \mathrm {[Pa^{-1}]} }

πŸ‘ {\displaystyle C={\frac {1}{K}}}

Viscosity

Type πŸ‘ {\displaystyle \gamma ^{1}\iff \sigma =R{\dot {\varepsilon }}\quad \mathrm {[Pa\cdot s]} }

Power density inertance: density of material

πŸ‘ {\displaystyle \rho \ \mathrm {[kg/m^{3}]} }

Other systems:

  • Thermodynamic power system (flow is entropy-rate and effort is temperature)
  • Electrochemical power system (flow is chemical activity and effort is chemical potential)
  • Thermochemical power system (flow is mass-rate and effort is mass specific enthalpy)
  • Macroeconomics currency-rate system (displacement is commodity and effort is price per commodity)
  • Microeconomics currency-rate system (displacement is population and effort is GDP per capita)

References

[edit]
  1. ^ Thomson, William (2011-06-30). Mathematical and Physical Papers (1 ed.). Cambridge University Press. doi:10.1017/cbo9780511996009.004. ISBN 978-1-108-02898-1.
  2. ^ Clerk-Maxwell, J. (1869). "Remarks on the Mathematical Classification of Physical Quantities". Proceedings of the London Mathematical Society. s1-3 (1): 224–233. doi:10.1112/plms/s1-3.1.224.
  3. ^ a b c d e f "Bond-graph modeling". IEEE Control Systems. 27 (2): 24–45. 2007. doi:10.1109/MCS.2007.338279. ISSN 1066-033X.
  4. ^ a b c d e f g h i j k l m n o p q r s Karnopp, Dean; Margolis, Donald L.; Rosenberg, Ronald C. (2012). System dynamics: modeling and simulation of mechatronic systems (5th ed.). Hoboken, NJ: Wiley. ISBN 978-0-470-88908-4.
  5. ^ a b Borutzky, Wolfgang, ed. (2017). Bond Graphs for Modelling, Control and Fault Diagnosis of Engineering Systems. Cham: Springer International Publishing. doi:10.1007/978-3-319-47434-2. ISBN 978-3-319-47433-5.
  6. ^ a b c d e f Gawthrop, Peter; Smith, Lorcan (1996). Metamodelling: for bond graphs and dynamic systems. Prentice Hall international series in systems and control engineering. London: Prentice Hall. doi:10.5281/zenodo.6998395. ISBN 978-0-13-489824-7.
  7. ^ a b Wellstead, P. E. (1979). Introduction to physical system modelling. London ; New York: Academic Press. ISBN 978-0-12-744380-5.
  8. ^ Shearer, J. Lowen; Murphy, Arthur T.; Richardson, Herbert H. (1971). Introduction to system dynamics (2. print ed.). Reading, Mass.: Addison-Wesley Publ. Comp. ISBN 978-0-201-07017-0.
  9. ^ Chua, L. (1971). "Memristor-The missing circuit element". IEEE Transactions on Circuit Theory. 18 (5): 507–519. Bibcode:1971ITCT...18..507C. doi:10.1109/TCT.1971.1083337. ISSN 0018-9324.
  10. ^ Akbarpour Ghazani, Mehran; Pan, Michael; Tran, Kenneth; Rampadarath, Anand; Nickerson, David P. (2024). "A review of the diverse applications of bond graphs in biology and physiology". Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences. 480 (2294) 20230807. Bibcode:2024RSPSA.48030807A. doi:10.1098/rspa.2023.0807. ISSN 1471-2946.
  11. ^ a b Oster, George; Perelson, Alan; Katchalsky, Aharon (1971). "Network Thermodynamics". Nature. 234 (5329): 393–399. Bibcode:1971Natur.234..393O. doi:10.1038/234393a0. ISSN 0028-0836.
  12. ^ a b Oster, George F.; Perelson, Alan S.; Katchalsky, Aharon (1973). "Network thermodynamics: dynamic modelling of biophysical systems". Quarterly Reviews of Biophysics. 6 (1): 1–134. doi:10.1017/S0033583500000081. ISSN 0033-5835. PMID 4576440.
  13. ^ a b c d e Gawthrop, Peter J.; Crampin, Edmund J. (2014). "Energy-based analysis of biochemical cycles using bond graphs". Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences. 470 (2171). arXiv:1406.2447. Bibcode:2014RSPSA.47040459G. doi:10.1098/rspa.2014.0459. ISSN 1364-5021. PMC 4197480. PMID 25383030.
  14. ^ a b Rajagopal, Vijay; Arumugam, Senthil; Hunter, Peter J.; Khadangi, Afshin; Chung, Joshua; Pan, Michael (2022). "The Cell Physiome: What Do We Need in a Computational Physiology Framework for Predicting Single-Cell Biology?". Annual Review of Biomedical Data Science. 5 (1): 341–366. doi:10.1146/annurev-biodatasci-072018-021246. ISSN 2574-3414. PMID 35576556.
  15. ^ a b c d e f g Gawthrop, Peter J.; Pan, Michael (2022). "Network thermodynamics of biological systems: A bond graph approach". Mathematical Biosciences. 352 108899. doi:10.1016/j.mbs.2022.108899. PMID 36057321.
  16. ^ a b Hunter, P.; de Bono, B.; Brooks, D.; Christie, R.; Hussan, J.; Lin, M.; Nickerson, D. (2025). "The Physiome Project and Digital Twins". IEEE Reviews in Biomedical Engineering. 18: 300–315. Bibcode:2025IRBE...18..300H. doi:10.1109/RBME.2024.3490455. ISSN 1937-3333. PMID 39504298.
  17. ^ Gawthrop, Peter J.; Cudmore, Peter; Crampin, Edmund J. (2020). "Physically-plausible modelling of biomolecular systems: A simplified, energy-based model of the mitochondrial electron transport chain". Journal of Theoretical Biology. 493 110223. arXiv:1905.12958. Bibcode:2020JThBi.49310223G. doi:10.1016/j.jtbi.2020.110223. PMID 32119969.
  18. ^ Gawthrop, Peter J.; Cursons, Joseph; Crampin, Edmund J. (2015). "Hierarchical bond graph modelling of biochemical networks". Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences. 471 (2184) 20150642. arXiv:1503.01814. Bibcode:2015RSPSA.47150642G. doi:10.1098/rspa.2015.0642. ISSN 1364-5021.
  19. ^ Pan, Michael; Gawthrop, Peter J.; Cursons, Joseph; Crampin, Edmund J. (2021-10-13). Wallqvist, Anders (ed.). "Modular assembly of dynamic models in systems biology". PLOS Computational Biology. 17 (10) e1009513. Bibcode:2021PLSCB..17E9513P. doi:10.1371/journal.pcbi.1009513. ISSN 1553-7358. PMC 8544865. PMID 34644304.
  20. ^ Gawthrop, Peter J.; Pan, Michael; Crampin, Edmund J. (2021). "Modular dynamic biomolecular modelling with bond graphs: the unification of stoichiometry, thermodynamics, kinetics and data". Journal of the Royal Society Interface. 18 (181) 20210478. doi:10.1098/rsif.2021.0478. ISSN 1742-5662. PMC 8385351. PMID 34428949.
  21. ^ Cudmore, Peter; Pan, Michael; Gawthrop, Peter J.; Crampin, Edmund J. (2021). "Analysing and simulating energy-based models in biology using BondGraphTools". The European Physical Journal E. 44 (12) 148. doi:10.1140/epje/s10189-021-00152-4. ISSN 1292-8941. PMID 34904197.
  22. ^ a b c Keener, James; Sneyd, James, eds. (2009). Mathematical Physiology. Interdisciplinary Applied Mathematics. Vol. 8/1. New York, NY: Springer New York. doi:10.1007/978-0-387-75847-3. ISBN 978-0-387-75846-6.
  23. ^ a b Gawthrop, Peter J.; Siekmann, Ivo; Kameneva, Tatiana; Saha, Susmita; Ibbotson, Michael R.; Crampin, Edmund J. (2017). "Bond graph modelling of chemoelectrical energy transduction". IET Systems Biology. 11 (5): 127–138. doi:10.1049/iet-syb.2017.0006. ISSN 1751-8849. PMC 8687425.
  24. ^ a b Pan, Michael; Gawthrop, Peter J.; Tran, Kenneth; Cursons, Joseph; Crampin, Edmund J. (2019). "A thermodynamic framework for modelling membrane transporters". Journal of Theoretical Biology. 481: 10–23. arXiv:1806.04341. Bibcode:2019JThBi.481...10P. doi:10.1016/j.jtbi.2018.09.034. PMID 30273576.
  25. ^ a b Pan, Michael; Gawthrop, Peter J.; Tran, Kenneth; Cursons, Joseph; Crampin, Edmund J. (2018). "Bond graph modelling of the cardiac action potential: implications for drift and non-unique steady states". Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences. 474 (2214) 20180106. arXiv:1802.04548. Bibcode:2018RSPSA.47480106P. doi:10.1098/rspa.2018.0106. ISSN 1364-5021. PMC 6030650. PMID 29977132.
  26. ^ a b Gawthrop, Peter J. (2017). "Bond Graph Modeling of Chemiosmotic Biomolecular Energy Transduction". IEEE Transactions on NanoBioscience. 16 (3): 177–188. arXiv:1611.04264. Bibcode:2017ITNB...16..177G. doi:10.1109/TNB.2017.2674683. ISSN 1536-1241. PMID 28252411.
  27. ^ a b c Gawthrop, Peter J.; Pan, Michael; Rajagopal, Vijay (2025). "Energy-based modelling of single actin filament polymerization using bond graphs". Journal of the Royal Society Interface. 22 (222) 20240404. doi:10.1098/rsif.2024.0404. ISSN 1742-5662. PMC 11780404. PMID 39881657.
  28. ^ Peskin, C.S.; Odell, G.M.; Oster, G.F. (1993). "Cellular motions and thermal fluctuations: the Brownian ratchet". Biophysical Journal. 65 (1): 316–324. Bibcode:1993BpJ....65..316P. doi:10.1016/S0006-3495(93)81035-X. PMC 1225726. PMID 8369439.
  29. ^ Hunter, Peter; Dowrick, Jarrah; Ai, Weiwei; Nickerson, David; Shafieizadegan, Mohammad Hossein; Argus, Finbar (2026-01-30), The biophysical basis of enterocyte homeostasis, doi:10.64898/2026.01.28.702213, retrieved 2026-02-09
  30. ^ Tran, Kenneth; Pan, Michael; Hunter, Peter J.; Nickerson, David P. (2024), Iaizzo, Paul A.; Eggen, Michael D.; Iles, Tinen L. (eds.), "Cardiac Cellular Electrophysiological Modeling", Cardiac Electrophysiology Methods and Models: A Practical Handbook for Scientists, Engineers, and Clinicians, Cham: Springer Nature Switzerland, pp. 365–394, doi:10.1007/978-3-031-71067-4_12, ISBN 978-3-031-71067-4{{citation}}: CS1 maint: work parameter with ISBN (link)
  31. ^ Hunter, Peter J.; Ai, Weiwei; Nickerson, David P. (2025). "Energy-based bond graph models of glucose transport with SLC transporters". Biophysical Journal. 124 (2): 316–335. Bibcode:2025BpJ...124..316H. doi:10.1016/j.bpj.2024.12.006. ISSN 0006-3495. PMC 11788503. PMID 39644093.
  32. ^ Tran, Kenneth; Pan, Michael; Hunter, Peter J.; Nickerson, David P. (2024), Iaizzo, Paul A.; Eggen, Michael D.; Iles, Tinen L. (eds.), "Cardiac Cellular Electrophysiological Modeling", Cardiac Electrophysiology Methods and Models: A Practical Handbook for Scientists, Engineers, and Clinicians, Cham: Springer Nature Switzerland, pp. 365–394, doi:10.1007/978-3-031-71067-4_12, ISBN 978-3-031-71067-4{{citation}}: CS1 maint: work parameter with ISBN (link)
  33. ^ Su, Shan; Blanco, Pablo J.; MΓΌller, Lucas O.; Hunter, Peter J.; Safaei, Soroush (2020-08-26). "Bond Graph Model of Cerebral Circulation: Toward Clinically Feasible Systemic Blood Flow Simulations". Physiome. doi:10.36903/physiome.12859424. ISSN 2744-6204.
  34. ^ Pan, Michael; Gawthrop, Peter J.; Faria, Matthew; Johnston, Stuart T. (2025). "Thermodynamically consistent, reduced models of gene regulatory networks". Royal Society Open Science. 12 (7) 241725. doi:10.1098/rsos.241725. ISSN 2054-5703. PMC 12312648. PMID 40746961.
  35. ^ Gawthrop, Peter; Pan, Michael (2025). "Energy-based analysis of biochemical oscillators using bond graphs and linear control theory". Royal Society Open Science. 12 (4) 241791. Bibcode:2025RSOS...1241791G. doi:10.1098/rsos.241791. ISSN 2054-5703. PMC 12040473. PMID 40309185.
  36. ^ Gawthrop, Peter J.; Pan, Michael (2022). "Energy-based advection modelling using bond graphs". Journal of the Royal Society Interface. 19 (195) 20220492. doi:10.1098/rsif.2022.0492. ISSN 1742-5662. PMC 9554522.
  37. ^ Gawthrop, Peter J.; Pan, Michael; Crampin, Edmund J. (2021). "Modular dynamic biomolecular modelling with bond graphs: the unification of stoichiometry, thermodynamics, kinetics and data". Journal of the Royal Society Interface. 18 (181) 20210478. doi:10.1098/rsif.2021.0478. ISSN 1742-5662. PMC 8385351. PMID 34428949.
  38. ^ Gawthrop, Peter J.; Cudmore, Peter; Crampin, Edmund J. (2020-05-21). "Physically-plausible modelling of biomolecular systems: A simplified, energy-based model of the mitochondrial electron transport chain". Journal of Theoretical Biology. 493 110223. arXiv:1905.12958. Bibcode:2020JThBi.49310223G. doi:10.1016/j.jtbi.2020.110223. ISSN 0022-5193. PMID 32119969.
  39. ^ Cacho, R.; Felez, J.; Vera, C. (2000-08-01). "Deriving simulation models from bond graphs with algebraic loops.: The extension to multibond graph systems". Journal of the Franklin Institute. 337 (5): 579–600. doi:10.1016/S0016-0032(00)00025-9. ISSN 0016-0032.
  40. ^ Gawthrop, P. J. (1995). "Bicausal Bond Graphs". eprints.gla.ac.uk. Retrieved 2026-02-08.
  41. ^ Samantaray, A. K.; Ghoshal, S. K. (2008-01-01). "Bicausal bond graphs for supervision: From fault detection and isolation to fault accommodation". Journal of the Franklin Institute. 345 (1): 1–28. doi:10.1016/j.jfranklin.2007.05.009. ISSN 0016-0032.
  42. ^ Gawthrop, Peter J. (2000-09-01). "Physical interpretation of inverse dynamics using bicausal bond graphs". Journal of the Franklin Institute. 337 (6): 743–769. doi:10.1016/S0016-0032(00)00051-X. ISSN 0016-0032.
  43. ^ Bideaux, Eric; Marquis-Favre, Wilfrid; Scavarda, Serge (2000-09-01). "Formulation of the Constitutive Relations in the Bicausal Bond Graph: Symbolic and Numerical Issues". IFAC Proceedings Volumes. IFAC Conference on Mechatronic Systems, Darmstadt, Germany, 18-20 September 2000. 33 (26): 655–660. doi:10.1016/S1474-6670(17)39220-0. ISSN 1474-6670.
  44. ^ Dauphin-Tanguy, G.; Rahmani, A.; Sueur, C. (1999-12-15). "Bond graph aided design of controlled systems". Simulation Practice and Theory. 7 (5): 493–513. doi:10.1016/S0928-4869(99)00009-9. ISSN 0928-4869.
  45. ^ Sueur, C.; Dauphin-Tanguy, G. (1991-01-01). "Bond-graph approach for structural analysis of MIMO linear systems". Journal of the Franklin Institute. 328 (1): 55–70. doi:10.1016/0016-0032(91)90006-O. ISSN 0016-0032.
  46. ^ Marquis-Favre, Wilfrid; Scavarda, Serge (2002-09-01). "Alternative Causality Assignment Procedures in Bond Graph for Mechanical Systems". Journal of Dynamic Systems, Measurement, and Control. 124 (3): 457–463. doi:10.1115/1.1481369. ISSN 0022-0434.
  47. ^ Murray-Smith, David J. (2024). "Kelvin and Bush: Their Contributions to Today's System Modelling and Simulation Methods". SNE Simulation Notes Europe. 34 (4): 233–239. doi:10.11128/sne.34.on.10716.
  48. ^ Kailath, Thomas (1980). Linear systems. Prentice-Hall information and system sciences series. Englewood Cliffs, NJ: Prentice-Hall. ISBN 978-0-13-536961-6.
  49. ^ Ngwompo, R. Fotsu; Scavarda, S.; Thomasset, D. (1996-03-01). "Inversion of linear time-invariant SISO systems modelled by bond graph". Journal of the Franklin Institute. 333 (2): 157–174. doi:10.1016/0016-0032(96)00025-7. ISSN 0016-0032.
  50. ^ Bera, Tarun K.; Samantaray, Arun K. (2011). "BOND GRAPH MODEL-BASED INVERSION OF PLANAR PARALLEL MANIPULATOR SYSTEMS". International Journal of Modelling and Simulation. 31 (4). doi:10.2316/Journal.205.2011.4.205-5637. ISSN 1925-7082.
  51. ^ Gawthrop, Peter J. (2000-09-01). "Physical interpretation of inverse dynamics using bicausal bond graphs". Journal of the Franklin Institute. 337 (6): 743–769. doi:10.1016/S0016-0032(00)00051-X. ISSN 0016-0032.
  52. ^ Gawthrop, P. J. (1995). "Bicausal Bond Graphs". eprints.gla.ac.uk. Retrieved 2026-02-15.
  53. ^ Ngwompo, R. Fotsu; Scavarda, S.; Thomasset, D. (1996-03-01). "Inversion of linear time-invariant SISO systems modelled by bond graph". Journal of the Franklin Institute. 333 (2): 157–174. doi:10.1016/0016-0032(96)00025-7. ISSN 0016-0032.
  54. ^ a b Gawthrop, Peter J. (2000-09-01). "Physical interpretation of inverse dynamics using bicausal bond graphs". Journal of the Franklin Institute. 337 (6): 743–769. doi:10.1016/S0016-0032(00)00051-X. ISSN 0016-0032.
  55. ^ Ngwompo, R F; Ngwompo, R F; Scavarda, S; Thomasset, D (2001-03-01). "Physical model-based inversion in control systems design using bond graph representation Part 1: Theory". Proceedings of the Institution of Mechanical Engineers, Part I: Journal of Systems and Control Engineering. 215 (2): 95–104. doi:10.1243/0959651011540888. ISSN 0959-6518.
  56. ^ Samantaray, A. K.; Ghoshal, S. K. (2008-01-01). "Bicausal bond graphs for supervision: From fault detection and isolation to fault accommodation". Journal of the Franklin Institute. 345 (1): 1–28. doi:10.1016/j.jfranklin.2007.05.009. ISSN 0016-0032.
  57. ^ Benmoussa, Samir; Bouamama, Belkacem Ould; Merzouki, Rochdi (April 2014). "Bond Graph Approach for Plant Fault Detection and Isolation: Application to Intelligent Autonomous Vehicle". IEEE Transactions on Automation Science and Engineering. 11 (2): 585–593. doi:10.1109/TASE.2013.2252340. ISSN 1558-3783.
  58. ^ El Feki, Mariem; Jardin, Audrey; Marquis-Favre, Wilfrid; KrΓ€henbΓΌhl, Laurent; Bideaux, Eric; Thomasset, Daniel (2012-11-01). "Determination of Essential Orders From a Bond Graph Model". Journal of Dynamic Systems, Measurement, and Control. 134 (6). doi:10.1115/1.4004772. ISSN 0022-0434.
  59. ^ Bideaux, Eric; Marquis-Favre, Wilfrid; Scavarda, Serge (2006). "Equilibrium set investigation using bicausality". Mathematical and Computer Modelling of Dynamical Systems. 12 (2–3): 127–140. doi:10.1080/13873950500069003. ISSN 1387-3954.
  60. ^ Mouhib, Omar; Jardin, Audrey; Marquis-Favre, Wilfrid; Bideaux, Eric; Thomasset, Daniel (2009-01-01). "Optimal control problem in bond graph formalism". Simulation Modelling Practice and Theory. Bond Graph Modelling. 17 (1): 240–256. doi:10.1016/j.simpat.2008.04.011. ISSN 1569-190X.
  61. ^ Sanchez, Roberto; Dauphin-Tanguy, GeneviΓ¨ve; Guillaud, Xavier; Colas, FrΓ©dΓ©ric (2010-10-01). "Bond graph based control of a three-phase inverter with LC filter – Connection to passive and active loads". Simulation Modelling Practice and Theory. 18 (9): 1185–1198. doi:10.1016/j.simpat.2010.05.016. ISSN 1569-190X.
  62. ^ Vink, D.; Ballance, D.; Gawthrop, P. (2006). "Bond graphs in model matching control". Mathematical and Computer Modelling of Dynamical Systems. 12 (2–3): 249–261. doi:10.1080/13873950500068278. ISSN 1387-3954.
  63. ^ Ngwompo, R. F; Scavarda, S (1999-12-15). "Dimensioning problems in system design using bicausal bond graphs". Simulation Practice and Theory. 7 (5): 577–587. doi:10.1016/S0928-4869(99)00013-0. ISSN 0928-4869.
  64. ^ Ngwompo, Roger F.; Gawthrop, Peter J. (1999-11-01). "Bond graph-based simulation of non-linear inverse systems using physical performance specifications". Journal of the Franklin Institute. 336 (8): 1225–1247. doi:10.1016/S0016-0032(99)00032-0. ISSN 0016-0032.
  65. ^ a b Richard, P. Y.; Buisson, J.; Cormerais, H. (2002-01-01). "ANALYSIS OF FLATNESS USING BOND GRAPHS AND BICAUSALITY". IFAC Proceedings Volumes. 15th IFAC World Congress. 35 (1): 25–30. doi:10.3182/20020721-6-ES-1901.00254. ISSN 1474-6670.
  66. ^ "Bond Graph Modelling of Engineering Systems" (PDF).

Further reading

[edit]

External links

[edit]
  • Simscape Official MATLAB/Simulink add-on library for graphical bond graph programming
  • BG V.2.1 Freeware MATLAB/Simulink add-on library for graphical bond graph programming
  • BondGraphTools Python based bond graph processing.