BGMod Documentation / v3
BGMod handbook

Reading a bond graph

Reading a bond graph

A bond graph describes energy exchange. Each bond carries a pair of variables: effort e and flow f. Their product is power. A block expresses a physical law; a junction connects those laws through conservation equations. A bond is an energy connection, so a one-port resistance can represent a device with two pipe fittings.

DomainEffort eFlow fPower e · f
HydraulicGauge pressure p [Pa]Volume flow Q [m³/s]pQ [W]
Mechanical, translationalForce F [N]Velocity v [m/s]Fv [W]
ElectricalVoltage v [V]Current i [A]vi [W]
Anatomy of a bond: positive power direction and causal strokeA half-arrow points from block A to block B. The causal stroke is at B, which receives effort and supplies flow. Effort e is written above and flow f below the bond. These annotations explain the notation; the editor shows the bond ID.ABe · effortf · flowb1 · bond IDHalf-arrow: positive power A → BStroke: B receives effortsupplies effortsupplies flow
One bond carries two conjugate variables. The half-arrow and the perpendicular causal stroke have different meanings. Labels e and f above/below the line are explanatory annotations; BGMod’s canvas labels bonds by ID.

Shapes and labels

Circles 0 and 1 are junctions. R, C, I, Se, Sf are one-port primitives. Larger rounded blocks such as 7A, ACC and CYL are compound components with named ports. A caption identifies the block; primitive values and units appear beneath it.

Ports and line styles

Small circles are energy ports. Solid blue connections are hydraulic; dashed amber connections are mechanical. M always marks a mechanical port in the current library. Red highlights identify invalid objects or ports; green indicates selection.

Named cylinder ports and domain conversionHydraulic port A receives cap-end flow; B delivers rod-end flow during extension. Mechanical port M connects the cylinder to a load by a dashed amber bond. Small circles mark connection points. These reference arrows assume positive extension; strokes are omitted.CYLm/b/FABMMpA, QA · cap endpB, QB · rod endF, vHydraulic portsMechanical connectionCylinderDAMechanicalLoad
Named ports keep connections unambiguous. The shown half-arrows choose positive power into A and out of B/M during extension; local QA = AAv, QB = −ABv and fM = −v. Actual power also depends on effort. Causal strokes are omitted here.
Pressure reference. Every hydraulic port uses gauge pressure relative to one document-wide reference: p_abs = p + reference_pressure_abs. The default reference is 101325 Pa. Accumulator precharge and initial pressure are entered as absolute values. A tank modeled by Se = 0 Pa is at the reference pressure.

Violet bonds and E ports are electrical. Mechanical primitives describe translation; rotational mechanics is not a separate domain in this library.

Arrows and signs are reference choices

The half-arrow defines positive bond power, not a one-way valve or a guarantee of positive flow. Negative e·f means power travels against the half-arrow. Each bond keeps two ordered endpoints, a and b, and a separate direction value.

direction = +1: a → b   ·   direction = −1: b → a
sa = −1   ·   sb = +1
flocal = s · direction · f   ·   elocal = e
Pabsorbed = e · flocal

Component equations use flow into the component, f_local. For example, a bond from a source (a) to a resistance (b), with direction = +1 and positive f, removes power from the source and delivers it to the resistance.

Editor actionWhat changesWhat stays fixed
Reverse referenceHalf-arrow; the signs of bond f and e·f.Endpoints a/b, local physical flows, states and 1-junction port signs.
Delete and recreate in reverse endpoint orderWhich end is a or b; the fixed port signs. This can change a 1-junction’s physical connection.Block parameters, unless edited separately.
0-junction and 1-junction examplesLeft: a 0-junction has one incoming and two outgoing flows, all at the same pressure. Right: a 1-junction has one positive and two negative fixed endpoint signs. Its reference flows are equal and p1 minus p2 minus p3 equals zero. All shown bond directions are plus one.0p, Q₁p, Q₂p, Q₃Q₁ − Q₂ − Q₃ = 0Equal effort · pressure node1p₁, Qp₂, Qp₃, Q+−−p₁ − p₂ − p₃ = 0Equal reference flow · series balance
All arrows here have direction = +1. At a 1-junction, + means the junction is endpoint b; − means endpoint a. Equality at a junction is spatial, at each instant: pressure or flow may still vary with time. Causal strokes are omitted in this topology illustration.

A 0-junction imposes equal efforts and zero sum of local flows. A 1-junction imposes equal reference flows direction·f and zero signed effort sum Σ(s·e). The visible +/− labels on a 1-junction record endpoint order; they do not flip when you reverse the half-arrow.