シミュレーションの演習のコード
GS7.BGSのコードを以下に示します。このコードは BGSP用です。第1行の
BOND SYMBOL EXPR OUT DEFIN PARM INIT
はコードの一部ですから省略してはいけません。また、BGSPではカラム指定が厳格で1カラムでもずれるとエラーになります。また、許される文字は英数字、コロン(:)、スラッシュ(/)、加減乗算記号(+-*)、半角空白のみであり、制御文字が入るとエラーになります。倍角の空白はエラーを生じますが、ソースをプリントしても気づきにくいので注意が必要です。
GS7のコード
フィードバックのある場合のコード
BOND SYMBOL EXPR OUT DEFIN PARM INIT SF1 11 ZJ -11 14 12 19 CI1 14 RE3 12 TF4 19 21 OJ -21 22 24 II6 24 RE5 22 / BC: V-P EF14 PRESSURE IN VALVE BC: PIS-P DP24 PISTON POSITION BC: V24 FL24 BC: P13 EF14 BC: FP FL11 OP: DX CONTROL AMP PA: PINPT 1.000D-02 INPUT COMMAND PA: PGAIN 2.000D+01 AMP GAIN FB: XXPP DP24 XDATA RV: XXPV AMP OUTPUT XXPV=(PINPT-XXPP)*PGAIN OP=XXPV EOD / SF1 PA: PFLCON 9.8D+02 RV: XXPV F=PFLCON*XXPV EOD CI1 PA: PR1 0.351 VOLUME/BULK MODULOUS C=Z/PR1 EOD RE3 PA: PCLR 11.60D-00 RESISTANCE COEFFICIENT R=Z/PCLR EOD TF4 PA: PL12 1.963D+03 TRANSFORMATION RATIO TF=1/PL12 EOD II6 PA: PMAS 100.0D-00 MASS L=Z/PMAS EOD RE5 PA: PLR 5.0D03 FRICTION R=PLR*Z EOD / 0.00 1.0D-00 1.00D-05 4000 /
20-Simによるシミュレーションのコード
Step1 parameters real amplitude = 0.01; real start_time = 0.0 {s}; 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) Gain parameters real K = 20; // gain equations output = K * input; C2 parameters real c = 0.351; equations state = int(p.f); p.e = state / c; R13 parameters real r = 5.0e3; equations p.e = r * p.f; TFA parameters real r = 1.963e3; equations p1.e = p2.e/r; p2.f = p1.f/r; MSf variables real effort; equations p.f = flow*980.0; effort = p.e; R3 parameters real r = 11.6; equations p.f = p.e/r I24 parameters real i = 100; equations state = int(p.e); p.f = state / i; Integrate parameters real initial = 0; // initial value equations output = int (input, initial);