BLOCK DIAGRAMS, BOND GRAPHS AND CAUSALITY The main purpose of modeling is to develop insight. “Drawing a picture” of a model promotes insight. Why not stick with the familiar block diagrams? Block diagrams provide a picture of equations; —they portray operators acting on signals. Bond graphs are related to model equations, —but there may be many different choices of equations to represent a given model; —there may be many different block diagrams corresponding to one bond graph. Mod. Sim. Dyn. Sys. Block diagrams & bond graphs page 1 m k b C R L Fk Fm Σ xk pm vk vm Fb Fk vb Fm Σ xk pm vk vm Fb vb m k R C b Fk Fm Σ xk pm vk vm Fb vb L k xk ∫ dt Fk Fm Σ ∫ dt pm vk vm Fb 1 /m vb b k xk ∫ dt Fk Fm Σ m pm vk vm Fb d /d t vb m k C 1 /b b 1 /k Fk R Fm Σ m xk pm d /d t vk vm Fb vb b d /d t L k xk ∫ dt Fk Fm Σ ∫ dt pm vk vm Fb 1 /m vb b k xk ∫ dt Fk Fm Σ m pm vk vm Fb d /d t vb m k C 1 /b b 1 /k Fk R Fm Σ m xk pm d /d t vk vm Fb vb b d /d t L C 1 I R C m k 1 I R C b C 1 R I R L C 1 I R C m k 1 I R C b C 1 R I R L The three different ‘forms” of the model equations are distinct; —they require different operators. Version 1: vm := ⌠⌡ dt C ⎛F ⎞ ⎜ m⎟ ⎜ ⎟ ⎝m⎠ Fm := – Fb – Fk R Fb := b vb vb := vm Fk := ⌠⌡ dt ⎛⎝k vk⎞⎠ Mod. Sim. Dyn. Sys. vk := vm Block diagrams & bond graphs 1 page 2 I Version 2: C Fb vb := b Fb := – Fm – Fk d Fm := m dt vm vm := vb Fk := ⌠⌡ dt ⎛⎝k vk⎞⎠ vk := vb Mod. Sim. Dyn. Sys. 1 R Block diagrams & bond graphs page 3 I Version 3: C 1 d vk := k dt Fk Fk := – Fb – Fm R Fb := b vb vb:= vk d Fm := m dt vm vm := vk In this simple example, the algebraic operators have inverses; —that is not always the case. Mod. Sim. Dyn. Sys. Block diagrams & bond graphs 1 page 4 I THE (TIME-) INTEGRATION AND DIFFERENTIATION OPERATORS ARE NOT EQUIVALENT. Integration tends to attenuate noise; Differentiation tends to amplify noise. Numerical integration tends to be stable; Numerical differentiation tends to be unstable. Mathematically: The set of finite-valued but possibly discontinuous functions of time is closed under integration; that set is not closed under differentiation. Mod. Sim. Dyn. Sys. Block diagrams & bond graphs page 5 Version 1 is preferable It corresponds to a state determined representation. For example, define a state vector ⎡ Fk ⎤ x=⎢ ⎥ ⎣vm⎦ and the system equations may be written in the form ẋ := A x as follows 0 k ⎡ F ⎡ ⎤ k d ⎢ ⎥ dt ⎣vm⎦ := ⎢ – 1 – b ⎣ m m ⎤ ⎡ Fk ⎤ ⎥⎢ ⎥ ⎦ ⎣vm⎦ The (time-) integration operator is used to generate a state trajectory x(t) from an initial condition. x(t) := t ⌠ ⌡ A x(t) dt + x(to) to Mod. Sim. Dyn. Sys. Block diagrams & bond graphs page 6 CAUSAL ANALYSIS IDENTIFIES INDEPENDENT ENERGY STORAGE ELEMENTS Independent energy storage elements yield state variables Inertias with effort input require time integration to determine their flow output. f(t) := Ψ{p(t)} p(t) := t ⌠ ⌡ e(t) dt + p(to) to Capacitors with flow input require time integration to determine their effort output. e(t) := Φ{q(t)} q(t) := t ⌠ ⌡ f(t) dt + e(to) to —This is called integral causality. Mod. Sim. Dyn. Sys. Block diagrams & bond graphs page 7 CAUSAL ANALYSIS IDENTIFIES DEPENDENT ENERGY STORAGE ELEMENTS Inertias with flow input require time differentiation to determine their effort output. Capacitors with effort input require time differentiation to determine their flow output. —This is differential causality. (also called derivative causality.) IDENTIFIES STATE VARIABLES Each constant of integration that can be specified independently identifies a state variable. State variables arise from energy storage elements. Integral causal forms yield state variables. —Differential causal forms do not. Mod. Sim. Dyn. Sys. Block diagrams & bond graphs page 8