]> permondes.de Git - Analog_Engine.git/blame - scripts/TP1 07.19 Falling Mass.AESL
Further examples of harmonic oscillation
[Analog_Engine.git] / scripts / TP1 07.19 Falling Mass.AESL
CommitLineData
5defb682
P
1IDENTIFICATION DIVISION
2PROGRAM-ID FallingParticle
3VERSION 20240225
4COMMENT Calculate the deflection from the vertical caused by the Earth's rotation of a particle falling freely from rest from a height h.
5COMMENT Differential Equations:
6COMMENT x''=-bz'+ay' # x-axis is along latitude, directed to east
7COMMENT y''=-ax' # y-axis is along longitude, directed to north
8COMMENT z''=-g+ax' # z-axis is perpendicular to the surface of earth
9COMMENT g: gravitational acceleration = 9,81 m/s²
10COMMENT a: 2*omega*sin(phi)
11COMMENT b: 2*omega*cos(phi)
12COMMENT omega: rotation velocity of the earth = 2*pi/day
13COMMENT phi: Latitude of location (0-90°)
14COMMENT Initial Condition: z(0)=h
15COMMENT The full solution requires 6 INTEGRATORs, Anabrid-THAT just has 5. The deflection to longitude (y) is neglegible and can be omitted (marked #*).
16COMMENT It could also be solved in a separated algorithm omitting x.
17
18ENVIRONMENT DIVISION
19ENGINE Anabrid-THAT
20TIMEBASE 1ms
21REQUIRES COEFFICIENT 5, INTEGRATOR 5, SUMMER 1, INVERTER 1
22
23DATA DIVISION
24OUTPUT OUTPUT.X x
25OUTPUT OUTPUT.Y y
26OUTPUT OUTPUT.Z z
27COEFFICIENT.1 AY # 2*2pi/day*sin(phi)
28COEFFICIENT.2 AX # = AY
29COEFFICIENT.3 B # 2*2pi/day*cos(phi)
7fbf87e4
P
30COEFFICIENT.4 G # gravitational acceleration = 9,81 m/s²
31COEFFICIENT.5 H # height h
5defb682
P
32
33PROGRAM DIVISION
34-1 -> COEFFICIENT.H -> -h
35
36-bz',ay' -> INTEGRATOR -> -x' # Input is x''
37-x' -> INTEGRATOR -> x
38
39y'' -> INTEGRATOR -> -y'
40#* -y' -> INTEGRATOR -> y
41
42z'' -> INTEGRATOR -> -z'
43-z', IC:-h, SJ:limiter -> INTEGRATOR -> z
44CAT:z -> DIODE -> limiter # limit z to >= 0
45
46-x' -> COEFFICIENT.AX -> -ax'=y''
47-y' -> COEFFICIENT.AY -> -ay'
48-ay' -> INVERTER -> ay'
49-z' -> COEFFICIENT.B -> -bz'
50+1 -> COEFFICIENT.G -> g
51-ax', g -> SUMMER -> -g+ax'=z''
52
53OPERATION DIVISION
54MODE REPEAT
55OP-TIME 7,3ms