シミュレーションの演習のコード
GS13のコードを以下に示します。このコードは 20-Sim用です。20-Simではボンドグラフを入力すると式も自動的に入力されますが、式が正しいとは限りませんので注意が必要です。
GS13のコード
C parameters real c = 7.15e-2; equations state = int(p.f); p.e = state / c; I1 parameters real i = 1.0e2; equations state = int(p.e); p.f = state / i; Id parameters real i = 5.0; equations state = i*p.f; p.e = ddt(state,0); Integrate parameters real initial = 0; // initial value equations output = int (input, initial); MTF equations p1.e = p2.e/r; p2.f = p1.f/r; R parameters real r = 0.25; equations p.f = p.e/r; Se parameters real ylow = 1.0; real t1 = 0.05; real t2 = 0.4; real peak =1.0e4; variables real flow; real effort; equations if time <=t1 then effort =ylow; else if time <= t2 then effort = peak; else effort =ylow; end; end; p.e = -effort; flow = p.f; Sf parameters real flow = 6.0e2; variables real effort; equations p.f = flow; effort = p.e; Table parameters string filename= 'c:\users\mk\data.txt'; equations output = table (filename, input); TF parameters real r = 4.0e2; equations p1.e = p2.e/r; p2.f = p1.f/r; SignalMonitor variables real interesting plot; equations plot = input; Table 0.000 0.4500000 0.1000000 0.4500000 0.2000000 0.5000000 0.2500000 0.6000000 0.3000000 0.7000000 0.3500000 0.8000000 0.4000000 1.0000 0.4500000 1.4000 0.5000000 2.0000 1.5000000 8.0000