]> permondes.de Git - Analog_Engine.git/blob - scripts/TP1 08.22 Hollow Cylinder.AESL
2b14afcc582e5a59033140b58cc3f992eb85a158
[Analog_Engine.git] / scripts / TP1 08.22 Hollow Cylinder.AESL
1 IDENTIFICATION DIVISION
2 PROGRAM-ID HollowCylinder
3 VERSION 20240312
4 COMMENT A homogeneous hollow cylinder (mass m, ration inner to outer radius epsilon) is connected to a massless spring (constant lambda).
5 COMMENT The system is deflected from its rest position by the distance a.
6 COMMENT The cylinder rolls without sliding.
7 COMMENT x'' = - 2*lambda * 1/m * 1/(3+epsilon²) * x
8
9 ENVIRONMENT DIVISION
10 ENGINE Anabrid-THAT
11 TIMEBASE 1ms
12 REQUIRES COEFFICIENT 4, INTEGRATOR 2, INVERTER 1
13
14 DATA DIVISION
15 OUTPUT OUTPUT.X x
16 COEFFICIENT.1 2*lambda
17 COEFFICIENT.2 1/m
18 COEFFICIENT.3 1/(3+epsilon²) # = 1/3 (0,333) for epsilon=0 and 1/4 (0,25) for epsiolon=1 or anything in between
19 COEFFICIENT.4 a
20
21 PROGRAM DIVISION
22 +1 -> COEFFICIENT.A -> a
23
24 x'' -> INTEGRATOR -> -x'
25 -x', IC:a -> INTEGRATOR -> x
26 x -> COEFFICIENT.2*lambda -> 2*lambda*x
27 2*lambda*x -> COEFFICIENT.1/m -> 2*lambda*1/m*x
28 2*lambda*1/m*x -> COEFFICIENT.1/(3+epsilon²) -> 2*lambda*1/m*1/(3+epsilon²)*x
29 2*lambda*1/m*1/(3+epsilon²)*x -> INVERTER -> -2*lambda*1/m*1/(3+epsilon²)*x = x''
30
31 OPERATION DIVISION
32 MODE REPEAT
33 OP-TIME 52ms