]> permondes.de Git - Analog_Engine.git/commitdiff
Comet on parabolic orbit; root, diodes
authorPermondes <machen@permondes.de>
Mon, 5 Feb 2024 18:11:30 +0000 (19:11 +0100)
committerPermondes <machen@permondes.de>
Mon, 5 Feb 2024 18:11:30 +0000 (19:11 +0100)
Applications: Comet on parabolic orbit
Technical:
- Intro to solving differential equations and integrals
- Added root-calculation
- Details about diodes and Z-diodes
AESL: Ports for diodes and z-diodes

AESL/TP1 05.15 Comet.AESL [new file with mode: 0644]
Analog Engine Example Applications.odt
Analog Engine Scripting Language.odt
Analog Engine Technical Topics.odt

diff --git a/AESL/TP1 05.15 Comet.AESL b/AESL/TP1 05.15 Comet.AESL
new file mode 100644 (file)
index 0000000..fc83617
--- /dev/null
@@ -0,0 +1,53 @@
+IDENTIFICATION DIVISION
+PROGRAM-ID Comet
+VERSION 20240205
+COMMENT A comet moves on a parabolic orbit in the gravitational field of the stationary sun.
+COMMENT Its orbital plane coincides with the plane of the Earth's orbit, which is assumed to be circular.
+COMMENT The perihelion distance is one third of the Earth's orbital radius R.E.
+COMMENT How long does the comet move within the Earth's orbit?
+COMMENT t(r)=root(2/(gamma*m(sun))*integral from 1/3RE to RE (r/root(r-1/3 RE)) dr
+
+ENVIRONMENT DIVISION
+ENGINE Anabrid-THAT
+TIMEBASE 100ms # use SLOW on both integrators
+REQUIRES COEFFICIENT 3, INTEGRATOR 2, COMPARATOR 1, SUMMER 1, OPEN-AMP 2, MULTIPLIER 2, INVERTER 1
+
+DATA DIVISION
+OUTPUT OUTPUT.X -xlimited
+OUTPUT OUTPUT.Y result
+COEFFICIENT.1 Factor # root(2/(gamma*m)), scaled to 0,142 10kd/Tm^3/2
+COEFFICIENT.2 RE # Earth's orbital radius, scaled to 0,150 Tm
+COEFFICIENT.3 1/3RE # note: dependent on RE, scaled to 0,05 Tm
+
+PROGRAM DIVISION
++1 -> COEFFICIENT.RE -> RE
++1 -> COEFFICIENT.1/3RE -> 1/3RE
+
+# obtaining x through integration of 1, starting at 1/3RE
++1, IC:1/3RE -> INTEGRATOR -> -x
+
+# limiting x to the upper limit of the integral RE and set x=0 if beyond
+A:-x, B:RE, GT0:-x -> COMPARATOR -> -xlimited
+
+-xlimited, 1/3RE -> SUMMER -> -(-x+1/3RE)=x-1/3RE
+
+# root of x-1/3RE
+## first invert because the input of a root has to be negative
+x-1/3RE -> INVERTER -> -(x-1/3RE)
+## now make sure the input is never >0 (which causes the circuit to error)
+A:-(x-1/3RE), LT0:-(x-1/3RE) -> COMPARATOR -> -(x-1/3RE)limited
+## now calculate the root
+-(x-1/3RE)limited, OA1 -> OPEN-AMP -> root
+root, root -> MULTIPLIER -> OA1
+
+# x/root
+-xlimited, OA2 -> OPEN-AMP -> x/root
+x/root, root -> MULTIPLIER -> OA2
+
+# integral
+x/root -> INTEGRATOR -> integral
+integral -> COEFFICIENT.Factor -> result
+
+OPERATION DIVISION
+MODE REPEAT
+OP-TIME 111ms 
index ec40f5f15a330f070a4b8bb4877d577834074722..94495eed9fcd2fbe410fa6be83762e22bd57381c 100644 (file)
Binary files a/Analog Engine Example Applications.odt and b/Analog Engine Example Applications.odt differ
index d45a6c1f1e38936c94645eee49d20ff2926c21ac..efa1df065af069cb7d5d1fd585c9b869a8ec1fad 100644 (file)
Binary files a/Analog Engine Scripting Language.odt and b/Analog Engine Scripting Language.odt differ
index a7eda5050427f6a3429e89936980f2981458b872..769f23c67fc0f59c31db3d7cc6dad1e57a77a0b5 100644 (file)
Binary files a/Analog Engine Technical Topics.odt and b/Analog Engine Technical Topics.odt differ