Ümodel 0 0 library_path 'M:\bond graph'; type Mainmodel end; implementation bg submodels omega_entree 277.5 285 library_path 'Bond Graph'; knot OneJunction ports power knot duplicatable none p [1]; signal knot out flow [1]; restrictions causality constraint one_out p; end; icon bg bottom figures text '1' 277.5 285 18 bold; end; implementation eq equations sum (direct (p.e)) = 0; equal (collect (p.f)); flow = first (p.f); implementation_end; inertie_entree 277.5 187.5 library_path 'Bond Graph'; type I ports power in p; signal out state; restrictions causality preferred in p; parameters real i = 0.2265; end; icon bg right figures text 'I' 277.5 187.5 18 bold; end; implementation eq equations state = int(p.e); p.f = state / i; implementation_end; rapport_entree 367.5 285 library_path 'Bond Graph'; type TF ports power in p1; power out p2; restrictions causality constraint not_equal p1 p2; parameters real r = 0.25641; end; icon bg bottom figures text 'TF' 367.5 285 18 bold; end; implementation eq equations p1.e = r * p2.e; p2.f = r * p1.f; implementation_end; omega_boitier 457.5 285 library_path 'Bond Graph'; knot OneJunction ports power knot duplicatable none p [1]; signal knot out flow [1]; restrictions causality constraint one_out p; end; icon bg bottom figures text '1' 457.5 285 18 bold; end; implementation eq equations sum (direct (p.e)) = 0; equal (collect (p.f)); flow = first (p.f); implementation_end; ZeroJunction2 630 285 library_path 'Bond Graph'; knot ZeroJunction ports power knot duplicatable none p [1]; signal knot out effort [1]; restrictions causality constraint one_in p; end; icon bg figures text '0' 630 285 18 bold; end; implementation eq equations sum (direct (p.f)) = 0; equal (collect (p.e)); effort = first (p.e); implementation_end; omega_roue_d 720 352.5 library_path 'Bond Graph'; knot OneJunction ports power knot duplicatable none p [1]; signal knot out flow [1]; restrictions causality constraint one_out p; end; icon bg bottom figures text '1' 720 352.5 18 bold; end; implementation eq equations sum (direct (p.e)) = 0; equal (collect (p.f)); flow = first (p.f); implementation_end; ZeroJunction3 787.5 217.5 library_path 'Bond Graph'; knot ZeroJunction ports power knot duplicatable none p [1]; signal knot out effort [1]; restrictions causality constraint one_in p; end; icon bg figures text '0' 787.5 217.5 18 bold; end; implementation eq equations sum (direct (p.f)) = 0; equal (collect (p.e)); effort = first (p.e); implementation_end; roue_d 855 352.5 library_path 'Bond Graph'; type R ports power in p; parameters real r = 0.00000001; end; icon bg bottom figures text 'R' 855 352.5 18 bold; end; implementation eq equations p.e = r * p.f; implementation_end; C1 787.5 142.5 library_path 'Bond Graph'; type C ports power in p; signal out state; restrictions causality preferred out p; parameters real c = 0.000234477; end; icon bg right figures text 'C' 787.5 142.5 18 bold; end; implementation eq equations state = int(p.f); p.e = state / c; implementation_end; C2 787.5 427.5 library_path 'Bond Graph'; type C ports power in p; signal out state; restrictions causality preferred out p; parameters real c = 0.0001464086; end; icon bg right figures text 'C' 787.5 427.5 18 bold; end; implementation eq equations state = int(p.f); p.e = state / c; implementation_end; deux 547.5 285 library_path 'Bond Graph'; type TF ports power in p1; power out p2; restrictions causality constraint not_equal p1 p2; parameters real r = 2.0; end; icon bg bottom figures text 'TF' 547.5 285 18 bold; end; implementation eq equations p1.e = r * p2.e; p2.f = r * p1.f; implementation_end; roue_g 855 217.5 library_path 'Bond Graph'; type R ports power in p; parameters real r = 250.0; end; icon bg bottom figures text 'R' 855 217.5 18 bold; end; implementation eq equations p.e = r * p.f; implementation_end; ZeroJunction5 787.5 352.5 library_path 'Bond Graph'; knot ZeroJunction ports power knot duplicatable none p [1]; signal knot out effort [1]; restrictions causality constraint one_in p; end; icon bg figures text '0' 787.5 352.5 18 bold; end; implementation eq equations sum (direct (p.f)) = 0; equal (collect (p.e)); effort = first (p.e); implementation_end; omega_roue_g 720 217.5 library_path 'Bond Graph'; knot OneJunction ports power knot duplicatable none p [1]; signal knot out flow [1]; restrictions causality constraint one_out p; end; icon bg bottom figures text '1' 720 217.5 18 bold; end; implementation eq equations sum (direct (p.e)) = 0; equal (collect (p.f)); flow = first (p.f); implementation_end; MSe1 202.5 285 library_path 'Bond Graph'; type MSe ports power out p; signal in effort; restrictions causality fixed out p; end; icon bg figures text 'MSe' 202.5 285 18 bold; end; implementation eq variables real flow; equations p.e = effort; flow = p.f; implementation_end; entree 120 285 library_path 'Signal\Sources'; type 'SignalGenerator-Step' ports signal out output; parameters real start_time = 0.0 {s}; end; icon bg bottom figures group rectangle 105 270 135 300 fill 15132390; line 114 282 129.9 282 color 16711680 width 2; line 107.7 292.5 132.3 292.5; line 109.8 292.6 114.1 292.6 114.1 281.9 color 16711680 width 2; line 109.8 277.5 109.8 294.6; end; end; implementation eq parameters real amplitude = 100.0 {}; variables boolean hidden change; equations "calculate at least at the start time" change = timeevent (start_time); "calculate the step signal" output = amplitude * step (start_time); implementation_end; end; connections omega_entree\p => inertie_entree\p; omega_entree\p => rapport_entree\p1; rapport_entree\p2 => omega_boitier\p; omega_boitier\p => deux\p1; deux\p2 => ZeroJunction2\p; ZeroJunction2\p => omega_roue_g\p 675 217.5; omega_roue_g\p => ZeroJunction3\p; ZeroJunction3\p => C1\p; ZeroJunction3\p => roue_g\p; ZeroJunction2\p => omega_roue_d\p 675 352.5; omega_roue_d\p => ZeroJunction5\p; ZeroJunction5\p => C2\p; ZeroJunction5\p => roue_d\p; MSe1\p => omega_entree\p; entree\output -> MSe1\effort; end; implementation_end;