シミュレーションの演習のコード
GS9.BGSのコードを以下に示します。このコードは BGSP用です。第1行の
BOND SYMBOL EXPR OUT DEFIN PARM INIT
はコードの一部ですから省略してはいけません。また、BGSPではカラム指定が厳格で1カラムでもずれるとエラーになります。また、許される文字は英数字、コロン(:)、スラッシュ(/)、加減乗算記号(+-*)、半角空白のみであり、制御文字が入るとエラーになります。倍角の空白はエラーを生じますが、ソースをプリントしても気づきにくいので注意が必要です。
GS9のコード
BOND SYMBOL EXPR OUT DEFIN PARM INIT
SF1 11
ZJ -11 13 14
ZJ -14 19 12
CI1 13
TF1 19 20
OJ -20 22 23 24
II1 24
CI2 23
RE1 22
RE2 12
/
BC: P13 EF13
BC: Q12 FL12
/
SF1
PA: PE1 400.0 inflow
F=PE1
EOD
CI1
PA: PC1 1.0 capacitive load
C=Z/PC1
EOD
TF1
PA: PT1 2.0
TF=PT1
EOD
RE2
PA: PR2 600.0
FB: XXR DP23
RV: XXF1
IF(XXR.LT.0.0) THEN
XXF1=0.0
ELSE
XXF1=XXR
ENDIF
R=Z*PR2*XXF1
EOD
II1
PA: PM1 3.0D-06 piston mass
L=Z/PM1
EOD
CI2
PA: PC2 1.0
C=Z/PC2
IF(C.LT.0.0) THEN
C=200.0*C+5.0
ELSE
IF(C.LT.0.4) THEN
C=C+5.0
ELSE
C=200.0*C-74.6
ENDIF
ENDIF
EOD
RE1
PA: PR1 0.01
R=Z*PR1
EOD
/
0.00 0.10 0.0001 1000
/
20-Simのコード
Sf11
parameters
real flow = 400.0;
variables
real effort;
equations
p.f = flow;
effort = p.e;
C13
parameters
real c = 1.000;
equations
state = int(p.f);
p.e = state / c;
MR121
parameters
real pr2=600.0;
equations
p.f =pr2* r * p.e;
TF1921
parameters
real r=2.0;
equations
p1.e = r* p2.e;
p2.f = r* p1.f;
I34
parameters
real i = 3.0e-6;
equations
state = int(p.e);
p.f = state / i;
R22
parameters
real r = 0.01;
equations
p.e = r * p.f;
Integrate
parameters
real initial = 0; // initial value
equations
output = int (input, initial);
C231
parameters
real c = 1;
equations
state = int(p.f);
p.e = port1;
FUNC23
parameters
string filename= 'J:\20-Sim\Simtec\GS9A.txt';
equations
output = table (filename, input);
FUNC232
parameters
string filename= 'J:\20-Sim\Simtec\GS9B.txt';
equations
output = table (filename, input);
GS9A.txt
-1.00000 0.0000
0.00000 0.0000
1.0000 1.0000
GS9B.txt
-0.400000 -75.0
0.00000 5.0000
0.4000 5.4000
0.8000 85.4000
