From: Permondes Date: Thu, 18 Apr 2024 07:57:19 +0000 (+0200) Subject: First draft of DANCE X-Git-Url: https://permondes.de/gitweb/Analog_Engine.git/commitdiff_plain/7fbf87e4750e1393d9b6395818b70000ca99c758?ds=inline;hp=5defb6821f666313f533a1e34c1329e75dae1c37 First draft of DANCE 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 --- diff --git a/AESL/TP1 07.19 Falling Mass.AESL b/AESL/TP1 07.19 Falling Mass.AESL index d73ae03..6613759 100644 --- a/AESL/TP1 07.19 Falling Mass.AESL +++ b/AESL/TP1 07.19 Falling Mass.AESL @@ -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 index 0000000..30a58dc --- /dev/null +++ b/AESL/TP1 07.19 Falling Mass.DANCE @@ -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 index 0000000..de7a57e Binary files /dev/null and b/Description language for ANalog Circuit Engines.odt differ