]> permondes.de Git - Analog_Engine.git/commitdiff
First draft of DANCE
authorPermondes <machen@permondes.de>
Thu, 18 Apr 2024 07:57:19 +0000 (09:57 +0200)
committerPermondes <machen@permondes.de>
Thu, 18 Apr 2024 07:57:19 +0000 (09:57 +0200)
Description language for ANalog Circuit Engines (DANCE) is another
scripting language for analog engines. In contrast to AESL, which is
focused on connectivity of the engine, it is rather focused on user
readability and simplicity. Thus realizing the connections requires more
effort than with AESL.

Example: TP1 07.19 Falling Mass

AESL/TP1 07.19 Falling Mass.AESL
AESL/TP1 07.19 Falling Mass.DANCE [new file with mode: 0644]
Description language for ANalog Circuit Engines.odt [new file with mode: 0644]

index d73ae031aa988e9e143c0bdb40d7561c1bf17212..6613759b10ce78d02cf068b1a05d8403c26fa73c 100644 (file)
@@ -27,8 +27,8 @@ OUTPUT OUTPUT.Z z
 COEFFICIENT.1 AY # 2*2pi/day*sin(phi)
 COEFFICIENT.2 AX # = AY
 COEFFICIENT.3 B  # 2*2pi/day*cos(phi)
-COEFFICIENT.4 G  # gravitational acceleration = 0,981 da-m/s²
-COEFFICIENT.5 H  # height h [da-m]
+COEFFICIENT.4 G  # gravitational acceleration = 9,81 m/s²
+COEFFICIENT.5 H  # height h
 
 PROGRAM DIVISION
 -1 -> COEFFICIENT.H -> -h
diff --git a/AESL/TP1 07.19 Falling Mass.DANCE b/AESL/TP1 07.19 Falling Mass.DANCE
new file mode 100644 (file)
index 0000000..30a58dc
--- /dev/null
@@ -0,0 +1,44 @@
+# FallingParticle, VERSION 20240225
+# Calculate the deflection from the vertical caused by the Earth's rotation of a particle falling freely from rest from a height h.
+# Differential Equations:
+#    x''=-bz'+ay' # x-axis is along latitude,  directed to east
+#    y''=-ax'     # y-axis is along longitude, directed to north
+#    z''=-g+ax'   # z-axis is perpendicular to the surface of earth
+#    g: gravitational acceleration = 9,81 m/s²
+#    a: 2*omega*sin(phi)
+#    b: 2*omega*cos(phi)
+#    omega: rotation velocity of the earth = 2*pi/day
+#    phi: Latitude of location (0-90°)
+#    Initial Condition: z(0)=h
+# The full solution requires 6 INTEGRATORs, Anabrid-THAT just has 5. The deflection to longitude (y) is neglegible and can be omitted (marked #*).
+# It could also be solved in a separated algorithm omitting x.
+
+coefficient(1): a_y
+coefficient(2): a_x
+coefficient(3): b
+coefficient(4): +1 -> g
+coefficient(5): -1 -> -h
+
+iintegrate (-bz', ay') -> -x' # Input is x''
+iintegrate (-x') -> x
+
+iintegrate (y'') -> -y'
+iintegrate (-y') -> y
+
+iintegrate (z'') -> -z'
+iintegrate (-z') -> z:
+   IC: -h
+   limit: GT0 # via z to cathode of diode to SJ 
+   
+-x' * a_x -> -ax'
+y'' = -ax'
+-y' * a_y -> ay'
+invert (-ay') -> ay'
+-z' * b -> -bz'
+isum(-ax', g) -> z'' # gives -g+ax'
+
+# x -> output (x)
+# y -> output (y)
+# z -> output (z)
+
+#OP-TIME 7,3ms
diff --git a/Description language for ANalog Circuit Engines.odt b/Description language for ANalog Circuit Engines.odt
new file mode 100644 (file)
index 0000000..de7a57e
Binary files /dev/null and b/Description language for ANalog Circuit Engines.odt differ