<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://the-analog-thing.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MKoch</id>
	<title>TheAnalogThing - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://the-analog-thing.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MKoch"/>
	<link rel="alternate" type="text/html" href="https://the-analog-thing.org/wiki/Special:Contributions/MKoch"/>
	<updated>2026-10-12T09:41:04Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=972</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=972"/>
		<updated>2024-06-12T07:59:34Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Basic Usage of an Integrator on The Analog Thing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;F(t) = F(0) - ʃ_0^t f(t&#039;)/k0 dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions, i.e. specify what value &amp;lt;code&amp;gt;F(0)&amp;lt;/code&amp;gt; should take. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The integrator&#039;s constant k0 is defined as k0 = 1/(R*C), which means the unit of k0 is [1/s]  (Source: &amp;quot;Analogrechnen&amp;quot; by Giloi and Lauber, on the page before page 1). For THAT&#039;s integrators the constant is k0 = 1000 s^-1 in normal mode, or k0 = 10 s^-1 in &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; mode.&lt;br /&gt;
* The integration time scale factor of the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms. The &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs have a integration time scale factor of 100μs (100kOhm * 1nF = 100μs), meaning in the aforementioned scenario the signal rises ten times faster from 0 to 1 when using a &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; input instead of a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input. In &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; mode the integration time scale factors are 100ms for &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs or 10ms for &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator. Source: [[:File:Anathing v1.0 base 3.pdf]].]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factors &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This increases the time scale factors of the respective integrator by a factor of approximately 100. For the constant integration scenario described above, this means the output takes 100 times longer to transition from 0 to 1 than for the same inputs with &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; disconnected.&lt;br /&gt;
&lt;br /&gt;
You can also increase the time scale factor by 10, if you connect an external 10nF capacitor between &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
To extend the number of inputs, connect the SJ panel of the integrator to the SJ panel of a XIR element. Now the other panels of the corresponding XIR element function as inputs of the connected integrator. &lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=971</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=971"/>
		<updated>2024-06-12T07:56:09Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Basic Usage of an Integrator on The Analog Thing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;F(t) = F(0) - ʃ_0^t f(t&#039;)/k0 dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions, i.e. specify what value &amp;lt;code&amp;gt;F(0)&amp;lt;/code&amp;gt; should take. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The integrator&#039;s constant k0 is defined as k0 = 1/(R*C), which means the unit of k0 is [1/s]  (Source: &amp;quot;Analogrechnen&amp;quot; by Giloi and Lauber, on the page before page 1). For THAT&#039;s integrators the constant is k0 = 1000 s^-1 in normal mode, or k0 = 10 s^-1 in &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; mode.&lt;br /&gt;
* The integration time scale factor of the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms. The &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs have a integration time scale factor of 100μs (100kOhm * 1nF = 100μs), meaning in the aforementioned scenario the signal rises ten times faster from 0 to 1 when using a &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; input instead of a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator. Source: [[:File:Anathing v1.0 base 3.pdf]].]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factors &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This increases the time scale factors of the respective integrator by a factor of approximately 100. For the constant integration scenario described above, this means the output takes 100 times longer to transition from 0 to 1 than for the same inputs with &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; disconnected.&lt;br /&gt;
&lt;br /&gt;
You can also increase the time scale factor by 10, if you connect an external 10nF capacitor between &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
To extend the number of inputs, connect the SJ panel of the integrator to the SJ panel of a XIR element. Now the other panels of the corresponding XIR element function as inputs of the connected integrator. &lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=970</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=970"/>
		<updated>2024-06-12T07:55:32Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Basic Usage of an Integrator on The Analog Thing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;F(t) = F(0) - ʃ_0^t f(t&#039;)/k0 dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions, i.e. specify what value &amp;lt;code&amp;gt;F(0)&amp;lt;/code&amp;gt; should take. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The integrator&#039;s constant k0 is defined as k0 = 1/(R*C), which means the unit of k0 is [1/s]. (Source: &amp;quot;Analogrechnen&amp;quot; by Giloi and Lauber, on the page before page 1)  For THAT&#039;s integrators the constant is k0 = 1000 s^-1 in normal mode, or k0 = 10 s^-1 in &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; mode.&lt;br /&gt;
* The integration time scale factor of the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms. The &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs have a integration time scale factor of 100μs (100kOhm * 1nF = 100μs), meaning in the aforementioned scenario the signal rises ten times faster from 0 to 1 when using a &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; input instead of a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator. Source: [[:File:Anathing v1.0 base 3.pdf]].]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factors &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This increases the time scale factors of the respective integrator by a factor of approximately 100. For the constant integration scenario described above, this means the output takes 100 times longer to transition from 0 to 1 than for the same inputs with &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; disconnected.&lt;br /&gt;
&lt;br /&gt;
You can also increase the time scale factor by 10, if you connect an external 10nF capacitor between &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
To extend the number of inputs, connect the SJ panel of the integrator to the SJ panel of a XIR element. Now the other panels of the corresponding XIR element function as inputs of the connected integrator. &lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=969</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=969"/>
		<updated>2024-06-12T07:53:52Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Basic Usage of an Integrator on The Analog Thing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;F(t) = F(0) - ʃ_0^t f(t&#039;)/k0 dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions, i.e. specify what value &amp;lt;code&amp;gt;F(0)&amp;lt;/code&amp;gt; should take. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The integrator&#039;s constant k0 is defined as k0 = 1/(R*C), which means the unit of k0 is [1/s]. (Source: &amp;quot;Analogrechnen&amp;quot; by Giloi and Lauber, on the page before page 1)&lt;br /&gt;
That means for THAT&#039;s integrators k0 = 1000 s^-1 innormal mode, or k0 = 10 s^-1 in &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; mode.&lt;br /&gt;
* The integration time scale factor of the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms. The &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs have a integration time scale factor of 100μs (100kOhm * 1nF = 100μs), meaning in the aforementioned scenario the signal rises ten times faster from 0 to 1 when using a &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; input instead of a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator. Source: [[:File:Anathing v1.0 base 3.pdf]].]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factors &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This increases the time scale factors of the respective integrator by a factor of approximately 100. For the constant integration scenario described above, this means the output takes 100 times longer to transition from 0 to 1 than for the same inputs with &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; disconnected.&lt;br /&gt;
&lt;br /&gt;
You can also increase the time scale factor by 10, if you connect an external 10nF capacitor between &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
To extend the number of inputs, connect the SJ panel of the integrator to the SJ panel of a XIR element. Now the other panels of the corresponding XIR element function as inputs of the connected integrator. &lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=968</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=968"/>
		<updated>2024-06-12T07:48:26Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;F(t) = F(0) - ʃ_0^t f(t&#039;)/k0 dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions, i.e. specify what value &amp;lt;code&amp;gt;F(0)&amp;lt;/code&amp;gt; should take. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The integrator&#039;s constant k0 is defined as k0=1/(R*C), which means the unit of k0 is [1/s]. (Source: &amp;quot;Analogrechnen&amp;quot; by Giloi and Lauber, on the page before page 1)&lt;br /&gt;
* The integration time scale factor of the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms. The &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs have a integration time scale factor of 100μs (100kOhm * 1nF = 100μs), meaning in the aforementioned scenario the signal rises ten times faster from 0 to 1 when using a &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; input instead of a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator. Source: [[:File:Anathing v1.0 base 3.pdf]].]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factors &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This increases the time scale factors of the respective integrator by a factor of approximately 100. For the constant integration scenario described above, this means the output takes 100 times longer to transition from 0 to 1 than for the same inputs with &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; disconnected.&lt;br /&gt;
&lt;br /&gt;
You can also increase the time scale factor by 10, if you connect an external 10nF capacitor between &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
To extend the number of inputs, connect the SJ panel of the integrator to the SJ panel of a XIR element. Now the other panels of the corresponding XIR element function as inputs of the connected integrator. &lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Teensy&amp;diff=967</id>
		<title>Teensy</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Teensy&amp;diff=967"/>
		<updated>2024-01-30T12:58:24Z</updated>

		<summary type="html">&lt;p&gt;MKoch: no DAC&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;&#039;Teensy Microcontroller&#039;&#039;&#039; is a very powerful 32 bit microcontroller (ARM Cortex) with a large number of input outputs. The website of the product is for instance https://www.pjrc.com/store/teensy41.html&lt;br /&gt;
&lt;br /&gt;
== Teensy for data acquisition ==&lt;br /&gt;
[[File:Teensy Datalogger Prototype 2.jpg|thumb|Photo of the prototype board]]&lt;br /&gt;
&lt;br /&gt;
[[User:ulmann|Bernd Ulmann]] created a Teensy data logger ([[Software oscilloscope]]) which is released as open source at&lt;br /&gt;
https://github.com/anabrid/TeensyLogger. It is suitable for data acquisition of &lt;br /&gt;
[[The Analog Thing]].&lt;br /&gt;
&lt;br /&gt;
The usage is basically that the Teensy does the analog to digital data acquisition and then sends (more or less) raw data to a connected PC over USB. It is up to the PC to display and render the data, and no software exists yet (but it is easy to come with).&lt;br /&gt;
&lt;br /&gt;
Limitations of Teensy 4.0 and 4.1: The ADC has only about 10 bits, and it has no built-in DAC.&lt;br /&gt;
&lt;br /&gt;
=== Rebuild the THAT-CMOS level shift ===&lt;br /&gt;
If you want to rebuild the level shifting circuit of Bernd with some cheaper OPAMPs, for instance the LM32x series, you should use TTL 5V to power the opamp, since it&#039;s not rail2rails:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
   File:Teensy-Cheaper.svg|Circuit for THAT-CMOS level shift.&lt;br /&gt;
   File:Breakboard Level Shifting with Teensy.jpg|Photography of a level shifting setup on a Breadboard&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
[[Category:Software]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=959</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=959"/>
		<updated>2023-07-07T09:57:22Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Changing the integration speed */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;F(t) = F(0) - ʃ_0^t f(t&#039;)/k0 dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions, i.e. specify what value &amp;lt;code&amp;gt;F(0)&amp;lt;/code&amp;gt; should take. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The integration time scale factor &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms. The &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs have a integration time scale factor of 100μs (100kOhm * 1nF = 100μs), meaning in the aforementioned scenario the signal rises ten times faster from 0 to 1 when using a &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; input instead of a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator. Source: [[:File:Anathing v1.0 base 3.pdf]].]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factors &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This increases the time scale factors of the respective integrator by a factor of approximately 100. For the constant integration scenario described above, this means the output takes 100 times longer to transition from 0 to 1 than for the same inputs with &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; disconnected.&lt;br /&gt;
&lt;br /&gt;
You can also increase the time scale factor by 10, if you connect an external 10nF capacitor between &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
To extend the number of inputs, connect the SJ panel of the integrator to the SJ panel of a XIR element. Now the other panels of the corresponding XIR element function as inputs of the connected integrator. &lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=958</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=958"/>
		<updated>2023-07-07T09:56:50Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Changing the integration speed */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;F(t) = F(0) - ʃ_0^t f(t&#039;)/k0 dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions, i.e. specify what value &amp;lt;code&amp;gt;F(0)&amp;lt;/code&amp;gt; should take. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The integration time scale factor &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; inputs is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms. The &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; inputs have a integration time scale factor of 100μs (100kOhm * 1nF = 100μs), meaning in the aforementioned scenario the signal rises ten times faster from 0 to 1 when using a &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; input instead of a &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator. Source: [[:File:Anathing v1.0 base 3.pdf]].]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factors &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This increases the time scale factors of the respective integrator by a factor of approximately 100. For the constant integration scenario described above, this means the output takes 100 times longer to transition from 0 to 1 than for the same inputs with &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; disconnected.&lt;br /&gt;
You can also increase the time scale factor by 10, if you connect an external 10nF capacitor between &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
To extend the number of inputs, connect the SJ panel of the integrator to the SJ panel of a XIR element. Now the other panels of the corresponding XIR element function as inputs of the connected integrator. &lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=957</id>
		<title>XIR</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=957"/>
		<updated>2023-07-05T08:37:00Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Xir.png|thumb|A single XIR element]]&lt;br /&gt;
&lt;br /&gt;
The XIR element stands for &#039;&#039;&#039;Resistor array&#039;&#039;&#039; and is actually more of a &#039;&#039;electrical low level&#039;&#039; building block for an analog computer. It has a number of inputs with different weights which are translated to currents at the [[summing junction]]. This way, you can extend [[Integrator]]s, [[Summer]]s or [[Inverter]]s with more inputs. To do so, just connect the summing junctions of the respective elements.&lt;br /&gt;
&lt;br /&gt;
The resistor between &amp;quot;SJ&amp;quot; and &amp;quot;1&amp;quot; is 1 MOhm, and the resistor between &amp;quot;SJ&amp;quot; and &amp;quot;10&amp;quot; is 100 kOhm.&lt;br /&gt;
&lt;br /&gt;
The picture to the right is from an older version of THAT. The current THAT version doesn&#039;t have a 0.1 input. However if you need a 0.1 input, you can connect your input signal via a 10 MOhm resistor to the SJ input, or alternatively via a 9 MOhm resistor to a &amp;quot;1&amp;quot; input. &lt;br /&gt;
&lt;br /&gt;
The cable from SJ of the XIR block to SJ of the integrator, summer or inverter may receive interference from other cables. Try to make this cable as short as possible, and away from other cables. If this doesn&#039;t help, you can slow down the integrator, summer or inverter by connecting a 100pF capacitor between the output and SJ input. &lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
{{todo|provide some wiring examples}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=956</id>
		<title>XIR</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=956"/>
		<updated>2023-07-05T08:36:09Z</updated>

		<summary type="html">&lt;p&gt;MKoch: values of resistors&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Xir.png|thumb|A single XIR element]]&lt;br /&gt;
&lt;br /&gt;
The XIR element stands for &#039;&#039;&#039;Resistor array&#039;&#039;&#039; and is actually more of a &#039;&#039;electrical low level&#039;&#039; building block for an analog computer. It has a number of inputs with different weights which are translated to currents at the [[summing junction]]. This way, you can extend [[Integrator]]s, [[Summer]]s or [[Inverter]]s with more inputs. To do so, just connect the summing junctions of the respective elements.&lt;br /&gt;
&lt;br /&gt;
The resistance between &amp;quot;SJ&amp;quot; and &amp;quot;1&amp;quot; is 1 MOhm, and the resistance between &amp;quot;SJ&amp;quot; and &amp;quot;10&amp;quot; is 100 kOhm.&lt;br /&gt;
&lt;br /&gt;
The picture to the right is from an older version of THAT. The current THAT version doesn&#039;t have a 0.1 input. However if you need a 0.1 input, you can connect your input signal via a 10 MOhm resistor to the SJ input, or alternatively via a 9 MOhm resistor to a &amp;quot;1&amp;quot; input. &lt;br /&gt;
&lt;br /&gt;
The cable from SJ of the XIR block to SJ of the integrator, summer or inverter may receive interference from other cables. Try to make this cable as short as possible, and away from other cables. If this doesn&#039;t help, you can slow down the integrator, summer or inverter by connecting a 100pF capacitor between the output and SJ input. &lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
{{todo|provide some wiring examples}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=955</id>
		<title>XIR</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=955"/>
		<updated>2023-07-02T20:41:10Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Xir.png|thumb|A single XIR element]]&lt;br /&gt;
&lt;br /&gt;
The XIR element stands for &#039;&#039;&#039;Resistor array&#039;&#039;&#039; and is actually more of a &#039;&#039;electrical low level&#039;&#039; building block for an analog computer. It has a number of inputs with different weights which are translated to currents at the [[summing junction]]. This way, you can extend [[Integrator]]s, [[Summer]]s or [[Inverter]]s with more inputs. To do so, just connect the summing junctions of the respective elements.&lt;br /&gt;
&lt;br /&gt;
The picture to the right is from an older version of THAT. The current THAT version doesn&#039;t have a 0.1 input. However if you need a 0.1 input, you can connect your input signal via a 10 MOhm resistor to the SJ input, or alternatively via a 9 MOhm resistor to a &amp;quot;1&amp;quot; input. &lt;br /&gt;
&lt;br /&gt;
The cable from SJ of the XIR block to SJ of the integrator, summer or inverter may receive interference from other cables. Try to make this cable as short as possible, and away from other cables. If this doesn&#039;t help, you can slow down the integrator, summer or inverter by connecting a 100pF capacitor between the output and SJ input. &lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
{{todo|provide some wiring examples}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=954</id>
		<title>XIR</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=954"/>
		<updated>2023-07-02T20:39:53Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Xir.png|thumb|A single XIR element]]&lt;br /&gt;
&lt;br /&gt;
The XIR element stands for &#039;&#039;&#039;Resistor array&#039;&#039;&#039; and is actually more of a &#039;&#039;electrical low level&#039;&#039; building block for an analog computer. It has a number of inputs with different weights which are translated to currents at the [[summing junction]]. This way, you can extend [[Integrator]]s, [[Summer]]s or [[Inverter]]s with more inputs. To do so, just connect the summing junctions of the respective elements.&lt;br /&gt;
&lt;br /&gt;
The picture to the right is from an older version of THAT. The current THAT version doesn&#039;t have a 0.1 input. However if you need a 0.1 input, you can connect your input signal via a 10 MOhm resistor to the SJ input, or alternatively via a 9 MOhm resistor to a &amp;quot;1&amp;quot; input. &lt;br /&gt;
&lt;br /&gt;
The cable from SJ of the XIR block to SJ of the integrator, summer or inverter may receive interference from other cables. Try to keep this cable as short as possible, and away from other cables. If this doesn&#039;t help, you can slow down the integrator, summer or inverter by connecting a 100pF capacitor between the output and SJ input. &lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
{{todo|provide some wiring examples}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=953</id>
		<title>XIR</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=953"/>
		<updated>2023-07-02T20:38:53Z</updated>

		<summary type="html">&lt;p&gt;MKoch: Keep SJ cable short, and if this desn&amp;#039;t help slow down the output.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Xir.png|thumb|A single XIR element]]&lt;br /&gt;
&lt;br /&gt;
The XIR element stands for &#039;&#039;&#039;Resistor array&#039;&#039;&#039; and is actually more of a &#039;&#039;electrical low level&#039;&#039; building block for an analog computer. It has a number of inputs with different weights which are translated to currents at the [[summing junction]]. This way, you can extend [[Integrator]]s, [[Summer]]s or [[Inverter]]s with more inputs. To do so, just connect the summing junctions of the respective elements.&lt;br /&gt;
&lt;br /&gt;
The picture to the right is from an older version of THAT. The current THAT version doesn&#039;t have a 0.1 input. However if you need a 0.1 input, you can connect your input signal via a 10 MOhm resistor to the SJ input, or alternatively via a 9 MOhm resistor to a &amp;quot;1&amp;quot; input. &lt;br /&gt;
&lt;br /&gt;
The cable from SJ of the XIR block to SJ of the integrator, summer or inverter may receive interference from other cables. Try to keep this cable as short as possible, and away from other cables. If this doesn&#039;t help, you can slow down the integrator, summer or inverter by connecting a 100pF capacitor between its output and its SJ input. &lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
{{todo|provide some wiring examples}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=952</id>
		<title>XIR</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=XIR&amp;diff=952"/>
		<updated>2023-07-02T19:28:48Z</updated>

		<summary type="html">&lt;p&gt;MKoch: Explain outdated picture, and workaround for 0.1 input&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Xir.png|thumb|A single XIR element]]&lt;br /&gt;
&lt;br /&gt;
The XIR element stands for &#039;&#039;&#039;Resistor array&#039;&#039;&#039; and is actually more of a &#039;&#039;electrical low level&#039;&#039; building block for an analog computer. It has a number of inputs with different weights which are translated to currents at the [[summing junction]]. This way, you can extend [[Integrator]]s, [[Summer]]s or [[Inverter]]s with more inputs. To do so, just connect the summing junctions of the respective elements.&lt;br /&gt;
&lt;br /&gt;
The picture to the right is from an older version of THAT. The current THAT version doesn&#039;t have a 0.1 input. However if you need a 0.1 input, you can connect your input signal via a 10 MOhm resistor to the SJ input, or alternatively via a 9 MOhm resistor to a &amp;quot;1&amp;quot; input. &lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
{{todo|provide some wiring examples}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Analog_Voltmeters_or_Ammeters&amp;diff=857</id>
		<title>Analog Voltmeters or Ammeters</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Analog_Voltmeters_or_Ammeters&amp;diff=857"/>
		<updated>2021-12-09T12:35:36Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Products */ + Resistor&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Static or slow changing signals can be displayed with &#039;&#039;&#039;analog voltmeters&#039;&#039;&#039; or &#039;&#039;&#039;ammeters&#039;&#039;&#039; (with a suitable resistor in series).&lt;br /&gt;
A +-1mA meter has the advantage that the output can directly be interpreted as machine units.&lt;br /&gt;
&lt;br /&gt;
Note that [[The Analog Thing]] ships with a digital [[Panel Meter|Voltmeter]].&lt;br /&gt;
&lt;br /&gt;
== Products ==&lt;br /&gt;
* You can basically use any &#039;&#039;Multimeter&#039;&#039;, see for instance https://www.reichelt.de/multimeter-c541.html?CCOUNTRY=445&amp;amp;LANGUAGE=de. Cheap but suitable ones begin at around 20EUR.&lt;br /&gt;
* Here is an analog device for tinkering purposes. The +-1mA instrument has 148 Ohms, so that a 9852 Ohms resistor is required in series (which can be realized by 10 kOhm parallel with 680 kOhm): Aliexpress item 4000377192769&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=849</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=849"/>
		<updated>2021-12-08T16:40:49Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 2. Derivation of a computer circuit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a quite detailed step by step explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;The last 5 words of this sentence are unclear.&amp;lt;/span&amp;gt;&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need to understand three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated.&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;That&#039;s unclear and should be explained. Or do you mean x/a ?&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch off the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch off the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
In order to wire the circuit worked out above you need to be familiar with the computing elements used. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Images&lt;br /&gt;
|-&lt;br /&gt;
|On the right side you find an overview image of &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; without wiring.&lt;br /&gt;
&lt;br /&gt;
There are much more computing parts than needed for this task.&lt;br /&gt;
&lt;br /&gt;
Important basics:&lt;br /&gt;
#&#039;&#039;&#039;Round/circular panels --&amp;gt; Inputs&lt;br /&gt;
#&#039;&#039;&#039;Triangular panels --&amp;gt; Outputs&lt;br /&gt;
#&#039;&#039;&#039;Rectangular panels --&amp;gt; Static signals and advanced things&lt;br /&gt;
&lt;br /&gt;
Black inputs (with a 10 next to it) are not important for this task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Important for integrators:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IC-panel:&#039;&#039;&#039; IC refers to &#039;&#039;&#039;initial condition&#039;&#039;&#039; and is used to set the starting condition of the integrator.&lt;br /&gt;
&lt;br /&gt;
If the IC panel is left open, the initial condition is set to zero.&lt;br /&gt;
|| [[File:THATv1.0 overview.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|-&lt;br /&gt;
|In this image the for this task important computing elements, panels and switches are highlighted.&lt;br /&gt;
&lt;br /&gt;
Note that you certainly do not need every marked computing element, just some of each type.&lt;br /&gt;
|| [[File:THATv1.0 parts01.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|}&lt;br /&gt;
From this point you can start wiring the actual simulation circuit. Colors from circuit scheme and actual images are matched to make them easier to identify, but have no further meaning.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Image/circuit&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 1:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Start with the first integrator.&lt;br /&gt;
&lt;br /&gt;
Set the initial condition of the integrator to 1 by connecting the IC-panel with the panel directly below (rectangular +1, green wire).&lt;br /&gt;
&lt;br /&gt;
Also, connect a blue wire to the first integrators input and a red wire to it´s output, but leave them open.&lt;br /&gt;
&lt;br /&gt;
The blue wire shall be the last wire to be closed at the end.&lt;br /&gt;
|| [[File:DO Int03.png|thumb|500px|First integrator]] [[File:DO That01.jpg|thumb|500px|First integrator]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 2:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the first integrator (red wire) to the input of the second integrator.&lt;br /&gt;
&lt;br /&gt;
Connect a yellow cable to the output of the second integrator.&lt;br /&gt;
|| [[File:DO Int04.png|thumb|500px|First and second integrator]] [[File:DO That02.jpg|thumb|500px|First and second integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 3:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the second output of the first integrator with the input of the first inverter with a red wire.&lt;br /&gt;
&lt;br /&gt;
Be careful not to mix up the SJ panel of the inverter with the input panel.&lt;br /&gt;
&lt;br /&gt;
Connect a black cable to the output of the first inverter.&lt;br /&gt;
|| [[File:DO Int05.png|thumb|500px|Connected inverter]] [[File:DO That03.jpg|thumb|500px|Connected inverter]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 4:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the second integrator (yellow wire) with the input of the first potentiometer.&lt;br /&gt;
&lt;br /&gt;
Connect the output of the inverter (black wire) to the input of the second potentiometer.&lt;br /&gt;
&lt;br /&gt;
Connect both outputs of the just cabled potentiometers with green wires.&lt;br /&gt;
&lt;br /&gt;
Note: For practical reasons potentiometers are usually numbered in the to be executed circuit plan.&lt;br /&gt;
|| [[File:DO Int06.png|thumb|500px|Connected potentiometers]] [[File:DO That04.jpg|thumb|500px|Connected potentiometers]]&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;Step 5:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Connect both potentiometer outputs (green wires) each with an input of the summer.&lt;br /&gt;
&lt;br /&gt;
Connect a red wire to the output of the summer.&lt;br /&gt;
|| [[File:DO Int07.png|thumb|500px|Connected inverter]] [[File:DO That05.jpg|thumb|500px|Connected inverter]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 6:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the summer (red wire) with the input of the third potentiometer.&lt;br /&gt;
&lt;br /&gt;
Connect the input of the first integrator (blue wire) with the output of the third potentiometer.&lt;br /&gt;
&lt;br /&gt;
The circuit is closed.&lt;br /&gt;
|| [[File:DO Int08.png|thumb|500px|Closed circuit]] [[File:DO That06.jpg|thumb|500px|Closed circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 7:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the inverter with an output panel (x, y, z or u) by plugging a yellow wire on top of the black wire connected with said output.&lt;br /&gt;
|| [[File:DO Int09.png|thumb|500px|Connected output]] [[File:DO That07.jpg|thumb|500px|Connected output]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=848</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=848"/>
		<updated>2021-12-08T16:02:12Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 1. Mathematical description of a damped oscillation */ that&amp;#039;s unclear&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a quite detailed step by step explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;The last 5 words of this sentence are unclear.&amp;lt;/span&amp;gt;&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need to understand three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated.&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;That&#039;s unclear and should be explained.&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch off the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch off the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
In order to wire the circuit worked out above you need to be familiar with the computing elements used. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Images&lt;br /&gt;
|-&lt;br /&gt;
|On the right side you find an overview image of &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; without wiring.&lt;br /&gt;
&lt;br /&gt;
There are much more computing parts than needed for this task.&lt;br /&gt;
&lt;br /&gt;
Important basics:&lt;br /&gt;
#&#039;&#039;&#039;Round/circular panels --&amp;gt; Inputs&lt;br /&gt;
#&#039;&#039;&#039;Triangular panels --&amp;gt; Outputs&lt;br /&gt;
#&#039;&#039;&#039;Rectangular panels --&amp;gt; Static signals and advanced things&lt;br /&gt;
&lt;br /&gt;
Black inputs (with a 10 next to it) are not important for this task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Important for integrators:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IC-panel:&#039;&#039;&#039; IC refers to &#039;&#039;&#039;initial condition&#039;&#039;&#039; and is used to set the starting condition of the integrator.&lt;br /&gt;
&lt;br /&gt;
If the IC panel is left open, the initial condition is set to zero.&lt;br /&gt;
|| [[File:THATv1.0 overview.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|-&lt;br /&gt;
|In this image the for this task important computing elements, panels and switches are highlighted.&lt;br /&gt;
&lt;br /&gt;
Note that you certainly do not need every marked computing element, just some of each type.&lt;br /&gt;
|| [[File:THATv1.0 parts01.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|}&lt;br /&gt;
From this point you can start wiring the actual simulation circuit. Colors from circuit scheme and actual images are matched to make them easier to identify, but have no further meaning.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Image/circuit&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 1:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Start with the first integrator.&lt;br /&gt;
&lt;br /&gt;
Set the initial condition of the integrator to 1 by connecting the IC-panel with the panel directly below (rectangular +1, green wire).&lt;br /&gt;
&lt;br /&gt;
Also, connect a blue wire to the first integrators input and a red wire to it´s output, but leave them open.&lt;br /&gt;
&lt;br /&gt;
The blue wire shall be the last wire to be closed at the end.&lt;br /&gt;
|| [[File:DO Int03.png|thumb|500px|First integrator]] [[File:DO That01.jpg|thumb|500px|First integrator]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 2:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the first integrator (red wire) to the input of the second integrator.&lt;br /&gt;
&lt;br /&gt;
Connect a yellow cable to the output of the second integrator.&lt;br /&gt;
|| [[File:DO Int04.png|thumb|500px|First and second integrator]] [[File:DO That02.jpg|thumb|500px|First and second integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 3:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the second output of the first integrator with the input of the first inverter with a red wire.&lt;br /&gt;
&lt;br /&gt;
Be careful not to mix up the SJ panel of the inverter with the input panel.&lt;br /&gt;
&lt;br /&gt;
Connect a black cable to the output of the first inverter.&lt;br /&gt;
|| [[File:DO Int05.png|thumb|500px|Connected inverter]] [[File:DO That03.jpg|thumb|500px|Connected inverter]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 4:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the second integrator (yellow wire) with the input of the first potentiometer.&lt;br /&gt;
&lt;br /&gt;
Connect the output of the inverter (black wire) to the input of the second potentiometer.&lt;br /&gt;
&lt;br /&gt;
Connect both outputs of the just cabled potentiometers with green wires.&lt;br /&gt;
&lt;br /&gt;
Note: For practical reasons potentiometers are usually numbered in the to be executed circuit plan.&lt;br /&gt;
|| [[File:DO Int06.png|thumb|500px|Connected potentiometers]] [[File:DO That04.jpg|thumb|500px|Connected potentiometers]]&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;Step 5:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Connect both potentiometer outputs (green wires) each with an input of the summer.&lt;br /&gt;
&lt;br /&gt;
Connect a red wire to the output of the summer.&lt;br /&gt;
|| [[File:DO Int07.png|thumb|500px|Connected inverter]] [[File:DO That05.jpg|thumb|500px|Connected inverter]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 6:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the summer (red wire) with the input of the third potentiometer.&lt;br /&gt;
&lt;br /&gt;
Connect the input of the first integrator (blue wire) with the output of the third potentiometer.&lt;br /&gt;
&lt;br /&gt;
The circuit is closed.&lt;br /&gt;
|| [[File:DO Int08.png|thumb|500px|Closed circuit]] [[File:DO That06.jpg|thumb|500px|Closed circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 7:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the inverter with an output panel (x, y, z or u) by plugging a yellow wire on top of the black wire connected with said output.&lt;br /&gt;
|| [[File:DO Int09.png|thumb|500px|Connected output]] [[File:DO That07.jpg|thumb|500px|Connected output]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=846</id>
		<title>The Analog Thing FAQ</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=846"/>
		<updated>2021-12-08T15:13:22Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* How does a Hello World program look like on THAT? */ move image to left side&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list of &#039;&#039;&#039;frequently asked questions (FAQ)&#039;&#039;&#039; about [[The Analog Thing]] (in short &#039;&#039;THAT&#039;&#039;). It&#039;s a great entry place to learn about THAT.&lt;br /&gt;
&lt;br /&gt;
== What is analog computing? ==&lt;br /&gt;
[[Analog Computer|Analog computing]] is an alternative to digital computing; ideally suited for dynamic systems modeling; ideally suited for neuromorphic AI applications; much more energy-efficient than digital computing; inherently safer than digital computing in the face of cyber threats; a great, hands-on way to learn about maths, engineering and systems; and simply an eye-opening experience.&lt;br /&gt;
&lt;br /&gt;
== What is THE ANALOG THING? ==&lt;br /&gt;
[[The Analog Thing|THE ANALOG THING]] is a high-quality, low-cost, open-source, and not-for-profit cutting-edge analog computer. You can think of it as a kind of [[Raspberry Pi]] that calculates with continuous voltages rather than with zeroes and ones.&lt;br /&gt;
&lt;br /&gt;
== What is &amp;quot;THAT&amp;quot;? ==&lt;br /&gt;
THAT is an abbreviation of [[The Analog Thing|THE ANALOG THING]].&lt;br /&gt;
&lt;br /&gt;
== Who is the team behind THAT and what is their motivation? ==&lt;br /&gt;
THAT is developed and distributed by the German tech start-up company [https://www.anabrid.com anabrid] under the brand name [https://analogparadigm.com Analog Paradigm]. Anabrid is planning to develop an analog computer on-a-chip to diversify today&#039;s digital computing monoculture with analog-digital hybrid computing. To support this initiative, anabrid uses its Analog Paradigm brand to promote the often much more efficient and safer analog computing paradigm. THAT is Analog Paradigm&#039;s response to the need for education and community activity around analog computing. In contrast to the [https://analogparadigm.com/products.html Analog Paradigm Model 1 analog computer], THAT is small, highly affordable, open-source, and not-for-profit. It is analog computing for the future, for all. Analog Paradigm welcomes community contributions to THAT hardware, accessories and documentation.&lt;br /&gt;
&lt;br /&gt;
== What can I do with THAT? ==&lt;br /&gt;
THAT is typically used to model dynamic systems, i.e., systems that change in time according to some causal relationships. Examples include including market economies, the spread of diseases, population dynamics, chemical reactions, mechanical systems, the firing of neurons, a variety of mathematical attractors, and much more. Technically, THAT solves (sets of) [[differential equation]]s by way of [[Integrator|integration]], and it produces results in the form of graphs representing relationships between dependent and independent variables. If you are not familiar with differential equations, then THAT is an excellent tool to familiarize yourself with them. You can use THAT for a variety of purposes: You can use it to predict in the natural sciences, to control in engineering, to explain in educational settings, to imitate in gaming, or you can use it for the pure joy of it. THAT can help you understand what is (models of), and it can help you bring about what should be (models for). More fundamentally, THAT allows you to explore a non-digital computational paradigm hands-on!&lt;br /&gt;
&lt;br /&gt;
== What do I need to work with THAT? ==&lt;br /&gt;
You need a set of plug cables, which is included with THAT. You also need a [[Power|USB power supply with a USB-C plug]]. Since most people have spare USB power supplies, we decided not to include one with THAT and save the extra cost. You will also need something to read the output of THAT (voltages that change over time), such as a hardware or software [[oscilloscope]]. [[Software Oscilloscopes|Software oscilloscopes]] are software programs that can run on digital desktop or laptop computers and typically read changing voltages through the [[Soundcard|sound card&#039;s audio input]] interface. Software oscilloscopes (including free and open source ones) are available for all major operating systems.&lt;br /&gt;
&lt;br /&gt;
== How does a &#039;&#039;Hello World&#039;&#039; program look like on THAT? ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|left]]&lt;br /&gt;
A good first program for &amp;quot;analog beginners&amp;quot; is the modeling of a damped oscillation in an isolated system.&lt;br /&gt;
For a detailed explanation see: [[Damped oscillation]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Is THAT a general purpose computer? ==&lt;br /&gt;
Yes and no. The term general-purpose computer usually describes devices that can be programmed to mimic the logical procedures performed by other, comparable devices. THAT is different because it solves (sets of) differential equation(s) instead of processing logical procedures. It is a general-purpose analog computer in as far as it can solve any (set of) partial differential equation(s). In doing so, a single THAT is limited by its number of calculating elements. By connecting multiple THATs in &#039;&#039;[[Minion|minion chains]]&#039;&#039;, it is possible to implement large analog computer programs involving any number of calculating elements.&lt;br /&gt;
&lt;br /&gt;
== How can I program THAT? ==&lt;br /&gt;
Programming [[analog computer]]s is about modeling change in time. Typically, this process starts by translating change in some dynamic systems into one or more differential equations. These equations are then translated into patterns of wire connections between the analog computing elements on THAT&#039;s patch field. These patterns of wire connections are analog computer programs. When a program is run, THAT solves the programmed differential equations and outputs their solutions as time-varying voltages.&lt;br /&gt;
&lt;br /&gt;
== How can I obtain output from THAT? ==&lt;br /&gt;
THAT outputs the solutions of differential equations as time-varying voltages. In control applications, these can be used to drive actuators such as motors or valves. In lab or classroom settings, they are often visualized as graphs using [[oscilloscope]]s or [[plotter]]s. In [[hybrid computing]] (where analog and digital computers work in tandem), analog-to-digital converters and digital-to-analog converters turn time-varying voltages into digital data and vice versa. The simplest way to read the output of your THAT is to connect it to the [[Soundcard|sound card]] of a digital computer which can then be used to visualize the output using digital oscilloscope software and to record, analyze, or otherwise process it.&lt;br /&gt;
&lt;br /&gt;
== Why do the plugs not go all the way into the patch panel? ==&lt;br /&gt;
[[File:Plug depth.jpg|thumb|left|Plugs in the patch panel of THAT.]]&lt;br /&gt;
This is one of several unconventional but intentional design moves that make THAT possible and affordable. The 2&amp;amp;nbsp;mm plug cables are intended by its supplier for use with a particular kind of gold-plated socket. One of these sockets costs close to one USD. Mounting it on a printed circuit board (PCB) costs close to another USD. There are 186 plug holes on THAT&#039;s patch panel. We saved all of that cost by using an extra-thick top PCB and having appropriately-sized through-holes gold-plated. Since the top PCB is less thick than the plugs are long, and since the plugs have small, contact-assuring springs half-way along their length, there are stop-limits below each plug hole to ensure good contacts. The result looks a little unexpected, works just as well and cuts the cost of the overall device by more than half.&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== With outputs varying between -10V to 10V, how can I use THAT to model quantities smaller or greater than that? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of quantities. Quantities are represented on analog computers in a voltage or current interval with fixed boundaries called the [[Machine Unit]]. On THAT, this interval is -10 V to +10 V. For the sake of simplicity, the [[Machine Unit]] is generally thought of as ± 1, regardless of the actual voltage or current interval of a given analog computer. To model arbitrary quantities on THAT, they can be scaled to make efficient use of the [[Machine Unit]]. [[Output]] can then be converted back to the original scale.&lt;br /&gt;
&lt;br /&gt;
== How can I use THAT to create useful models of very fast or very slow phenomena? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of speed. THAT allows compressing or stretching the independent variable time by several orders of magnitude. In this way, the instantaneous decay of a volatile compound can be simulated slowly enough for observation and interactive manipulation, while population dynamics occurring over decades or centuries can be simulated in the blink of an eye.&lt;br /&gt;
&lt;br /&gt;
== What calculating elements are available on THAT? ==&lt;br /&gt;
THAT is designed to allow a wide range of interesting applications with a minimal set of analog calculating elements. It offers five [[integrator]]s, four [[summer]]s, four [[inverter]]s, two [[multiplier]]s, and eight [[Coefficients/Potentiometers|coefficient potentiometers]]. In addition, it offers two [[comparator]]s, two precision [[XIR|resistor networks]] as well as [[capacitor]]s, [[diode]]s, and Zener diodes. Where more calculating elements are needed for a particular application, multiple THATs can be connected in [[minion|minion chains]].&lt;br /&gt;
&lt;br /&gt;
== How precise is THAT? ==&lt;br /&gt;
THAT is precise to about three positions after the decimal point, relative to its [[Machine Unit]]. It is important to note that comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Digital computers handle quantities based on &#039;&#039;counting&#039;&#039; (e.g., &amp;quot;how many siblings do you have?&amp;quot;) as well as quantities based on &#039;&#039;measuring&#039;&#039; (e.g., what is your body height?&amp;quot;). Most of the time, analog computers handle quantities based on measuring only. Consider this: A bank clerk getting the third decimal place of an interest rate wrong commits a severe error, while a tailor being off by a micrometer when taking a client&#039;s measurements has no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors which can quickly add up in iterative loops. Analog computers do not operate numerically and do not round. In this sense, the great precision of today&#039;s digital computers helps minimize a problem that is specific to digital computing. In short, representing quantities as continuous voltages (or currents), analog computers do not suffer from many problems inherent to binary value representations. While analog computer solutions, too, can exhibit instabilities, etc., the precision of THAT is perfectly appropriate for the vast majority of applications.&lt;br /&gt;
&lt;br /&gt;
== What is a minion chain? ==&lt;br /&gt;
THAT is designed to allow an extensive range of applications with a small set of calculating elements. When applications require additional calculating elements, it is possible to link multiple THATs in a &amp;quot;[[Minion|minion chain&amp;quot;]] using their &amp;quot;MASTER&amp;quot; and &amp;quot;MINION&amp;quot; ports. Connecting the MINION port of a THAT to the MASTER port of another THAT with a ribbon cable makes the first THAT the &amp;quot;master&amp;quot; and the second THAT its &amp;quot;minion&amp;quot; so they can work together and share the calculating elements of both devices in the same program. There is no limit to the number of THATs that can be linked in a minion chain.&lt;br /&gt;
&lt;br /&gt;
== 2+2 ≠ 4? ==&lt;br /&gt;
If you wonder why THAT computes something like &amp;lt;code&amp;gt;2+2 = -4&amp;lt;/code&amp;gt;, then you need to familiarize yourself with how the [[Components of The Analog Thing]] work. [[Summer]]s on analog computers are typically &#039;&#039;negating&#039;&#039;. This means they yield the negative of the sum. This is a convention and needs some getting-used-to. If you like, you can simply feed the summer&#039;s output into an [[Inverter]] to obtain the &amp;quot;correct&amp;quot; sign.&lt;br /&gt;
&lt;br /&gt;
== Are THAT&#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? ==&lt;br /&gt;
THAT&#039;s inputs are protected by supressor diodes which begin to conduct at about +-20V. It&#039;s no problem to connect an output from a +-15V circuit to THAT&#039;s inputs. But some inputs will be overloaded if the voltage exceeds about +-11.5V, because THAT&#039;s supply voltage is +-12V.&lt;br /&gt;
&lt;br /&gt;
[[Category:Manual|FAQ]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=845</id>
		<title>The Analog Thing FAQ</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=845"/>
		<updated>2021-12-08T15:12:30Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* How does a Hello World program look like on THAT? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list of &#039;&#039;&#039;frequently asked questions (FAQ)&#039;&#039;&#039; about [[The Analog Thing]] (in short &#039;&#039;THAT&#039;&#039;). It&#039;s a great entry place to learn about THAT.&lt;br /&gt;
&lt;br /&gt;
== What is analog computing? ==&lt;br /&gt;
[[Analog Computer|Analog computing]] is an alternative to digital computing; ideally suited for dynamic systems modeling; ideally suited for neuromorphic AI applications; much more energy-efficient than digital computing; inherently safer than digital computing in the face of cyber threats; a great, hands-on way to learn about maths, engineering and systems; and simply an eye-opening experience.&lt;br /&gt;
&lt;br /&gt;
== What is THE ANALOG THING? ==&lt;br /&gt;
[[The Analog Thing|THE ANALOG THING]] is a high-quality, low-cost, open-source, and not-for-profit cutting-edge analog computer. You can think of it as a kind of [[Raspberry Pi]] that calculates with continuous voltages rather than with zeroes and ones.&lt;br /&gt;
&lt;br /&gt;
== What is &amp;quot;THAT&amp;quot;? ==&lt;br /&gt;
THAT is an abbreviation of [[The Analog Thing|THE ANALOG THING]].&lt;br /&gt;
&lt;br /&gt;
== Who is the team behind THAT and what is their motivation? ==&lt;br /&gt;
THAT is developed and distributed by the German tech start-up company [https://www.anabrid.com anabrid] under the brand name [https://analogparadigm.com Analog Paradigm]. Anabrid is planning to develop an analog computer on-a-chip to diversify today&#039;s digital computing monoculture with analog-digital hybrid computing. To support this initiative, anabrid uses its Analog Paradigm brand to promote the often much more efficient and safer analog computing paradigm. THAT is Analog Paradigm&#039;s response to the need for education and community activity around analog computing. In contrast to the [https://analogparadigm.com/products.html Analog Paradigm Model 1 analog computer], THAT is small, highly affordable, open-source, and not-for-profit. It is analog computing for the future, for all. Analog Paradigm welcomes community contributions to THAT hardware, accessories and documentation.&lt;br /&gt;
&lt;br /&gt;
== What can I do with THAT? ==&lt;br /&gt;
THAT is typically used to model dynamic systems, i.e., systems that change in time according to some causal relationships. Examples include including market economies, the spread of diseases, population dynamics, chemical reactions, mechanical systems, the firing of neurons, a variety of mathematical attractors, and much more. Technically, THAT solves (sets of) [[differential equation]]s by way of [[Integrator|integration]], and it produces results in the form of graphs representing relationships between dependent and independent variables. If you are not familiar with differential equations, then THAT is an excellent tool to familiarize yourself with them. You can use THAT for a variety of purposes: You can use it to predict in the natural sciences, to control in engineering, to explain in educational settings, to imitate in gaming, or you can use it for the pure joy of it. THAT can help you understand what is (models of), and it can help you bring about what should be (models for). More fundamentally, THAT allows you to explore a non-digital computational paradigm hands-on!&lt;br /&gt;
&lt;br /&gt;
== What do I need to work with THAT? ==&lt;br /&gt;
You need a set of plug cables, which is included with THAT. You also need a [[Power|USB power supply with a USB-C plug]]. Since most people have spare USB power supplies, we decided not to include one with THAT and save the extra cost. You will also need something to read the output of THAT (voltages that change over time), such as a hardware or software [[oscilloscope]]. [[Software Oscilloscopes|Software oscilloscopes]] are software programs that can run on digital desktop or laptop computers and typically read changing voltages through the [[Soundcard|sound card&#039;s audio input]] interface. Software oscilloscopes (including free and open source ones) are available for all major operating systems.&lt;br /&gt;
&lt;br /&gt;
== How does a &#039;&#039;Hello World&#039;&#039; program look like on THAT? ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb]]&lt;br /&gt;
A good first program for &amp;quot;analog beginners&amp;quot; is the modeling of a damped oscillation in an isolated system.&lt;br /&gt;
For a detailed explanation see: [[Damped oscillation]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Is THAT a general purpose computer? ==&lt;br /&gt;
Yes and no. The term general-purpose computer usually describes devices that can be programmed to mimic the logical procedures performed by other, comparable devices. THAT is different because it solves (sets of) differential equation(s) instead of processing logical procedures. It is a general-purpose analog computer in as far as it can solve any (set of) partial differential equation(s). In doing so, a single THAT is limited by its number of calculating elements. By connecting multiple THATs in &#039;&#039;[[Minion|minion chains]]&#039;&#039;, it is possible to implement large analog computer programs involving any number of calculating elements.&lt;br /&gt;
&lt;br /&gt;
== How can I program THAT? ==&lt;br /&gt;
Programming [[analog computer]]s is about modeling change in time. Typically, this process starts by translating change in some dynamic systems into one or more differential equations. These equations are then translated into patterns of wire connections between the analog computing elements on THAT&#039;s patch field. These patterns of wire connections are analog computer programs. When a program is run, THAT solves the programmed differential equations and outputs their solutions as time-varying voltages.&lt;br /&gt;
&lt;br /&gt;
== How can I obtain output from THAT? ==&lt;br /&gt;
THAT outputs the solutions of differential equations as time-varying voltages. In control applications, these can be used to drive actuators such as motors or valves. In lab or classroom settings, they are often visualized as graphs using [[oscilloscope]]s or [[plotter]]s. In [[hybrid computing]] (where analog and digital computers work in tandem), analog-to-digital converters and digital-to-analog converters turn time-varying voltages into digital data and vice versa. The simplest way to read the output of your THAT is to connect it to the [[Soundcard|sound card]] of a digital computer which can then be used to visualize the output using digital oscilloscope software and to record, analyze, or otherwise process it.&lt;br /&gt;
&lt;br /&gt;
== Why do the plugs not go all the way into the patch panel? ==&lt;br /&gt;
[[File:Plug depth.jpg|thumb|left|Plugs in the patch panel of THAT.]]&lt;br /&gt;
This is one of several unconventional but intentional design moves that make THAT possible and affordable. The 2&amp;amp;nbsp;mm plug cables are intended by its supplier for use with a particular kind of gold-plated socket. One of these sockets costs close to one USD. Mounting it on a printed circuit board (PCB) costs close to another USD. There are 186 plug holes on THAT&#039;s patch panel. We saved all of that cost by using an extra-thick top PCB and having appropriately-sized through-holes gold-plated. Since the top PCB is less thick than the plugs are long, and since the plugs have small, contact-assuring springs half-way along their length, there are stop-limits below each plug hole to ensure good contacts. The result looks a little unexpected, works just as well and cuts the cost of the overall device by more than half.&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== With outputs varying between -10V to 10V, how can I use THAT to model quantities smaller or greater than that? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of quantities. Quantities are represented on analog computers in a voltage or current interval with fixed boundaries called the [[Machine Unit]]. On THAT, this interval is -10 V to +10 V. For the sake of simplicity, the [[Machine Unit]] is generally thought of as ± 1, regardless of the actual voltage or current interval of a given analog computer. To model arbitrary quantities on THAT, they can be scaled to make efficient use of the [[Machine Unit]]. [[Output]] can then be converted back to the original scale.&lt;br /&gt;
&lt;br /&gt;
== How can I use THAT to create useful models of very fast or very slow phenomena? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of speed. THAT allows compressing or stretching the independent variable time by several orders of magnitude. In this way, the instantaneous decay of a volatile compound can be simulated slowly enough for observation and interactive manipulation, while population dynamics occurring over decades or centuries can be simulated in the blink of an eye.&lt;br /&gt;
&lt;br /&gt;
== What calculating elements are available on THAT? ==&lt;br /&gt;
THAT is designed to allow a wide range of interesting applications with a minimal set of analog calculating elements. It offers five [[integrator]]s, four [[summer]]s, four [[inverter]]s, two [[multiplier]]s, and eight [[Coefficients/Potentiometers|coefficient potentiometers]]. In addition, it offers two [[comparator]]s, two precision [[XIR|resistor networks]] as well as [[capacitor]]s, [[diode]]s, and Zener diodes. Where more calculating elements are needed for a particular application, multiple THATs can be connected in [[minion|minion chains]].&lt;br /&gt;
&lt;br /&gt;
== How precise is THAT? ==&lt;br /&gt;
THAT is precise to about three positions after the decimal point, relative to its [[Machine Unit]]. It is important to note that comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Digital computers handle quantities based on &#039;&#039;counting&#039;&#039; (e.g., &amp;quot;how many siblings do you have?&amp;quot;) as well as quantities based on &#039;&#039;measuring&#039;&#039; (e.g., what is your body height?&amp;quot;). Most of the time, analog computers handle quantities based on measuring only. Consider this: A bank clerk getting the third decimal place of an interest rate wrong commits a severe error, while a tailor being off by a micrometer when taking a client&#039;s measurements has no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors which can quickly add up in iterative loops. Analog computers do not operate numerically and do not round. In this sense, the great precision of today&#039;s digital computers helps minimize a problem that is specific to digital computing. In short, representing quantities as continuous voltages (or currents), analog computers do not suffer from many problems inherent to binary value representations. While analog computer solutions, too, can exhibit instabilities, etc., the precision of THAT is perfectly appropriate for the vast majority of applications.&lt;br /&gt;
&lt;br /&gt;
== What is a minion chain? ==&lt;br /&gt;
THAT is designed to allow an extensive range of applications with a small set of calculating elements. When applications require additional calculating elements, it is possible to link multiple THATs in a &amp;quot;[[Minion|minion chain&amp;quot;]] using their &amp;quot;MASTER&amp;quot; and &amp;quot;MINION&amp;quot; ports. Connecting the MINION port of a THAT to the MASTER port of another THAT with a ribbon cable makes the first THAT the &amp;quot;master&amp;quot; and the second THAT its &amp;quot;minion&amp;quot; so they can work together and share the calculating elements of both devices in the same program. There is no limit to the number of THATs that can be linked in a minion chain.&lt;br /&gt;
&lt;br /&gt;
== 2+2 ≠ 4? ==&lt;br /&gt;
If you wonder why THAT computes something like &amp;lt;code&amp;gt;2+2 = -4&amp;lt;/code&amp;gt;, then you need to familiarize yourself with how the [[Components of The Analog Thing]] work. [[Summer]]s on analog computers are typically &#039;&#039;negating&#039;&#039;. This means they yield the negative of the sum. This is a convention and needs some getting-used-to. If you like, you can simply feed the summer&#039;s output into an [[Inverter]] to obtain the &amp;quot;correct&amp;quot; sign.&lt;br /&gt;
&lt;br /&gt;
== Are THAT&#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? ==&lt;br /&gt;
THAT&#039;s inputs are protected by supressor diodes which begin to conduct at about +-20V. It&#039;s no problem to connect an output from a +-15V circuit to THAT&#039;s inputs. But some inputs will be overloaded if the voltage exceeds about +-11.5V, because THAT&#039;s supply voltage is +-12V.&lt;br /&gt;
&lt;br /&gt;
[[Category:Manual|FAQ]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=844</id>
		<title>The Analog Thing FAQ</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=844"/>
		<updated>2021-12-08T15:11:16Z</updated>

		<summary type="html">&lt;p&gt;MKoch: Undo revision 843 by MKoch (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list of &#039;&#039;&#039;frequently asked questions (FAQ)&#039;&#039;&#039; about [[The Analog Thing]] (in short &#039;&#039;THAT&#039;&#039;). It&#039;s a great entry place to learn about THAT.&lt;br /&gt;
&lt;br /&gt;
== What is analog computing? ==&lt;br /&gt;
[[Analog Computer|Analog computing]] is an alternative to digital computing; ideally suited for dynamic systems modeling; ideally suited for neuromorphic AI applications; much more energy-efficient than digital computing; inherently safer than digital computing in the face of cyber threats; a great, hands-on way to learn about maths, engineering and systems; and simply an eye-opening experience.&lt;br /&gt;
&lt;br /&gt;
== What is THE ANALOG THING? ==&lt;br /&gt;
[[The Analog Thing|THE ANALOG THING]] is a high-quality, low-cost, open-source, and not-for-profit cutting-edge analog computer. You can think of it as a kind of [[Raspberry Pi]] that calculates with continuous voltages rather than with zeroes and ones.&lt;br /&gt;
&lt;br /&gt;
== What is &amp;quot;THAT&amp;quot;? ==&lt;br /&gt;
THAT is an abbreviation of [[The Analog Thing|THE ANALOG THING]].&lt;br /&gt;
&lt;br /&gt;
== Who is the team behind THAT and what is their motivation? ==&lt;br /&gt;
THAT is developed and distributed by the German tech start-up company [https://www.anabrid.com anabrid] under the brand name [https://analogparadigm.com Analog Paradigm]. Anabrid is planning to develop an analog computer on-a-chip to diversify today&#039;s digital computing monoculture with analog-digital hybrid computing. To support this initiative, anabrid uses its Analog Paradigm brand to promote the often much more efficient and safer analog computing paradigm. THAT is Analog Paradigm&#039;s response to the need for education and community activity around analog computing. In contrast to the [https://analogparadigm.com/products.html Analog Paradigm Model 1 analog computer], THAT is small, highly affordable, open-source, and not-for-profit. It is analog computing for the future, for all. Analog Paradigm welcomes community contributions to THAT hardware, accessories and documentation.&lt;br /&gt;
&lt;br /&gt;
== What can I do with THAT? ==&lt;br /&gt;
THAT is typically used to model dynamic systems, i.e., systems that change in time according to some causal relationships. Examples include including market economies, the spread of diseases, population dynamics, chemical reactions, mechanical systems, the firing of neurons, a variety of mathematical attractors, and much more. Technically, THAT solves (sets of) [[differential equation]]s by way of [[Integrator|integration]], and it produces results in the form of graphs representing relationships between dependent and independent variables. If you are not familiar with differential equations, then THAT is an excellent tool to familiarize yourself with them. You can use THAT for a variety of purposes: You can use it to predict in the natural sciences, to control in engineering, to explain in educational settings, to imitate in gaming, or you can use it for the pure joy of it. THAT can help you understand what is (models of), and it can help you bring about what should be (models for). More fundamentally, THAT allows you to explore a non-digital computational paradigm hands-on!&lt;br /&gt;
&lt;br /&gt;
== What do I need to work with THAT? ==&lt;br /&gt;
You need a set of plug cables, which is included with THAT. You also need a [[Power|USB power supply with a USB-C plug]]. Since most people have spare USB power supplies, we decided not to include one with THAT and save the extra cost. You will also need something to read the output of THAT (voltages that change over time), such as a hardware or software [[oscilloscope]]. [[Software Oscilloscopes|Software oscilloscopes]] are software programs that can run on digital desktop or laptop computers and typically read changing voltages through the [[Soundcard|sound card&#039;s audio input]] interface. Software oscilloscopes (including free and open source ones) are available for all major operating systems.&lt;br /&gt;
&lt;br /&gt;
== How does a &#039;&#039;Hello World&#039;&#039; program look like on THAT? ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb]]&lt;br /&gt;
A good first program for &amp;quot;analog beginners&amp;quot; is the modeling of a damped oscillation in an isolated system.&lt;br /&gt;
For a detailed explanation see: [[Damped oscillation]]&lt;br /&gt;
&lt;br /&gt;
== Is THAT a general purpose computer? ==&lt;br /&gt;
Yes and no. The term general-purpose computer usually describes devices that can be programmed to mimic the logical procedures performed by other, comparable devices. THAT is different because it solves (sets of) differential equation(s) instead of processing logical procedures. It is a general-purpose analog computer in as far as it can solve any (set of) partial differential equation(s). In doing so, a single THAT is limited by its number of calculating elements. By connecting multiple THATs in &#039;&#039;[[Minion|minion chains]]&#039;&#039;, it is possible to implement large analog computer programs involving any number of calculating elements.&lt;br /&gt;
&lt;br /&gt;
== How can I program THAT? ==&lt;br /&gt;
Programming [[analog computer]]s is about modeling change in time. Typically, this process starts by translating change in some dynamic systems into one or more differential equations. These equations are then translated into patterns of wire connections between the analog computing elements on THAT&#039;s patch field. These patterns of wire connections are analog computer programs. When a program is run, THAT solves the programmed differential equations and outputs their solutions as time-varying voltages.&lt;br /&gt;
&lt;br /&gt;
== How can I obtain output from THAT? ==&lt;br /&gt;
THAT outputs the solutions of differential equations as time-varying voltages. In control applications, these can be used to drive actuators such as motors or valves. In lab or classroom settings, they are often visualized as graphs using [[oscilloscope]]s or [[plotter]]s. In [[hybrid computing]] (where analog and digital computers work in tandem), analog-to-digital converters and digital-to-analog converters turn time-varying voltages into digital data and vice versa. The simplest way to read the output of your THAT is to connect it to the [[Soundcard|sound card]] of a digital computer which can then be used to visualize the output using digital oscilloscope software and to record, analyze, or otherwise process it.&lt;br /&gt;
&lt;br /&gt;
== Why do the plugs not go all the way into the patch panel? ==&lt;br /&gt;
[[File:Plug depth.jpg|thumb|left|Plugs in the patch panel of THAT.]]&lt;br /&gt;
This is one of several unconventional but intentional design moves that make THAT possible and affordable. The 2&amp;amp;nbsp;mm plug cables are intended by its supplier for use with a particular kind of gold-plated socket. One of these sockets costs close to one USD. Mounting it on a printed circuit board (PCB) costs close to another USD. There are 186 plug holes on THAT&#039;s patch panel. We saved all of that cost by using an extra-thick top PCB and having appropriately-sized through-holes gold-plated. Since the top PCB is less thick than the plugs are long, and since the plugs have small, contact-assuring springs half-way along their length, there are stop-limits below each plug hole to ensure good contacts. The result looks a little unexpected, works just as well and cuts the cost of the overall device by more than half.&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== With outputs varying between -10V to 10V, how can I use THAT to model quantities smaller or greater than that? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of quantities. Quantities are represented on analog computers in a voltage or current interval with fixed boundaries called the [[Machine Unit]]. On THAT, this interval is -10 V to +10 V. For the sake of simplicity, the [[Machine Unit]] is generally thought of as ± 1, regardless of the actual voltage or current interval of a given analog computer. To model arbitrary quantities on THAT, they can be scaled to make efficient use of the [[Machine Unit]]. [[Output]] can then be converted back to the original scale.&lt;br /&gt;
&lt;br /&gt;
== How can I use THAT to create useful models of very fast or very slow phenomena? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of speed. THAT allows compressing or stretching the independent variable time by several orders of magnitude. In this way, the instantaneous decay of a volatile compound can be simulated slowly enough for observation and interactive manipulation, while population dynamics occurring over decades or centuries can be simulated in the blink of an eye.&lt;br /&gt;
&lt;br /&gt;
== What calculating elements are available on THAT? ==&lt;br /&gt;
THAT is designed to allow a wide range of interesting applications with a minimal set of analog calculating elements. It offers five [[integrator]]s, four [[summer]]s, four [[inverter]]s, two [[multiplier]]s, and eight [[Coefficients/Potentiometers|coefficient potentiometers]]. In addition, it offers two [[comparator]]s, two precision [[XIR|resistor networks]] as well as [[capacitor]]s, [[diode]]s, and Zener diodes. Where more calculating elements are needed for a particular application, multiple THATs can be connected in [[minion|minion chains]].&lt;br /&gt;
&lt;br /&gt;
== How precise is THAT? ==&lt;br /&gt;
THAT is precise to about three positions after the decimal point, relative to its [[Machine Unit]]. It is important to note that comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Digital computers handle quantities based on &#039;&#039;counting&#039;&#039; (e.g., &amp;quot;how many siblings do you have?&amp;quot;) as well as quantities based on &#039;&#039;measuring&#039;&#039; (e.g., what is your body height?&amp;quot;). Most of the time, analog computers handle quantities based on measuring only. Consider this: A bank clerk getting the third decimal place of an interest rate wrong commits a severe error, while a tailor being off by a micrometer when taking a client&#039;s measurements has no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors which can quickly add up in iterative loops. Analog computers do not operate numerically and do not round. In this sense, the great precision of today&#039;s digital computers helps minimize a problem that is specific to digital computing. In short, representing quantities as continuous voltages (or currents), analog computers do not suffer from many problems inherent to binary value representations. While analog computer solutions, too, can exhibit instabilities, etc., the precision of THAT is perfectly appropriate for the vast majority of applications.&lt;br /&gt;
&lt;br /&gt;
== What is a minion chain? ==&lt;br /&gt;
THAT is designed to allow an extensive range of applications with a small set of calculating elements. When applications require additional calculating elements, it is possible to link multiple THATs in a &amp;quot;[[Minion|minion chain&amp;quot;]] using their &amp;quot;MASTER&amp;quot; and &amp;quot;MINION&amp;quot; ports. Connecting the MINION port of a THAT to the MASTER port of another THAT with a ribbon cable makes the first THAT the &amp;quot;master&amp;quot; and the second THAT its &amp;quot;minion&amp;quot; so they can work together and share the calculating elements of both devices in the same program. There is no limit to the number of THATs that can be linked in a minion chain.&lt;br /&gt;
&lt;br /&gt;
== 2+2 ≠ 4? ==&lt;br /&gt;
If you wonder why THAT computes something like &amp;lt;code&amp;gt;2+2 = -4&amp;lt;/code&amp;gt;, then you need to familiarize yourself with how the [[Components of The Analog Thing]] work. [[Summer]]s on analog computers are typically &#039;&#039;negating&#039;&#039;. This means they yield the negative of the sum. This is a convention and needs some getting-used-to. If you like, you can simply feed the summer&#039;s output into an [[Inverter]] to obtain the &amp;quot;correct&amp;quot; sign.&lt;br /&gt;
&lt;br /&gt;
== Are THAT&#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? ==&lt;br /&gt;
THAT&#039;s inputs are protected by supressor diodes which begin to conduct at about +-20V. It&#039;s no problem to connect an output from a +-15V circuit to THAT&#039;s inputs. But some inputs will be overloaded if the voltage exceeds about +-11.5V, because THAT&#039;s supply voltage is +-12V.&lt;br /&gt;
&lt;br /&gt;
[[Category:Manual|FAQ]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=843</id>
		<title>The Analog Thing FAQ</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=843"/>
		<updated>2021-12-08T15:10:48Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* How does a Hello World program look like on THAT? */ move image to left side&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list of &#039;&#039;&#039;frequently asked questions (FAQ)&#039;&#039;&#039; about [[The Analog Thing]] (in short &#039;&#039;THAT&#039;&#039;). It&#039;s a great entry place to learn about THAT.&lt;br /&gt;
&lt;br /&gt;
== What is analog computing? ==&lt;br /&gt;
[[Analog Computer|Analog computing]] is an alternative to digital computing; ideally suited for dynamic systems modeling; ideally suited for neuromorphic AI applications; much more energy-efficient than digital computing; inherently safer than digital computing in the face of cyber threats; a great, hands-on way to learn about maths, engineering and systems; and simply an eye-opening experience.&lt;br /&gt;
&lt;br /&gt;
== What is THE ANALOG THING? ==&lt;br /&gt;
[[The Analog Thing|THE ANALOG THING]] is a high-quality, low-cost, open-source, and not-for-profit cutting-edge analog computer. You can think of it as a kind of [[Raspberry Pi]] that calculates with continuous voltages rather than with zeroes and ones.&lt;br /&gt;
&lt;br /&gt;
== What is &amp;quot;THAT&amp;quot;? ==&lt;br /&gt;
THAT is an abbreviation of [[The Analog Thing|THE ANALOG THING]].&lt;br /&gt;
&lt;br /&gt;
== Who is the team behind THAT and what is their motivation? ==&lt;br /&gt;
THAT is developed and distributed by the German tech start-up company [https://www.anabrid.com anabrid] under the brand name [https://analogparadigm.com Analog Paradigm]. Anabrid is planning to develop an analog computer on-a-chip to diversify today&#039;s digital computing monoculture with analog-digital hybrid computing. To support this initiative, anabrid uses its Analog Paradigm brand to promote the often much more efficient and safer analog computing paradigm. THAT is Analog Paradigm&#039;s response to the need for education and community activity around analog computing. In contrast to the [https://analogparadigm.com/products.html Analog Paradigm Model 1 analog computer], THAT is small, highly affordable, open-source, and not-for-profit. It is analog computing for the future, for all. Analog Paradigm welcomes community contributions to THAT hardware, accessories and documentation.&lt;br /&gt;
&lt;br /&gt;
== What can I do with THAT? ==&lt;br /&gt;
THAT is typically used to model dynamic systems, i.e., systems that change in time according to some causal relationships. Examples include including market economies, the spread of diseases, population dynamics, chemical reactions, mechanical systems, the firing of neurons, a variety of mathematical attractors, and much more. Technically, THAT solves (sets of) [[differential equation]]s by way of [[Integrator|integration]], and it produces results in the form of graphs representing relationships between dependent and independent variables. If you are not familiar with differential equations, then THAT is an excellent tool to familiarize yourself with them. You can use THAT for a variety of purposes: You can use it to predict in the natural sciences, to control in engineering, to explain in educational settings, to imitate in gaming, or you can use it for the pure joy of it. THAT can help you understand what is (models of), and it can help you bring about what should be (models for). More fundamentally, THAT allows you to explore a non-digital computational paradigm hands-on!&lt;br /&gt;
&lt;br /&gt;
== What do I need to work with THAT? ==&lt;br /&gt;
You need a set of plug cables, which is included with THAT. You also need a [[Power|USB power supply with a USB-C plug]]. Since most people have spare USB power supplies, we decided not to include one with THAT and save the extra cost. You will also need something to read the output of THAT (voltages that change over time), such as a hardware or software [[oscilloscope]]. [[Software Oscilloscopes|Software oscilloscopes]] are software programs that can run on digital desktop or laptop computers and typically read changing voltages through the [[Soundcard|sound card&#039;s audio input]] interface. Software oscilloscopes (including free and open source ones) are available for all major operating systems.&lt;br /&gt;
&lt;br /&gt;
== How does a &#039;&#039;Hello World&#039;&#039; program look like on THAT? ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|left]]&lt;br /&gt;
A good first program for &amp;quot;analog beginners&amp;quot; is the modeling of a damped oscillation in an isolated system.&lt;br /&gt;
For a detailed explanation see: [[Damped oscillation]]&lt;br /&gt;
&lt;br /&gt;
== Is THAT a general purpose computer? ==&lt;br /&gt;
Yes and no. The term general-purpose computer usually describes devices that can be programmed to mimic the logical procedures performed by other, comparable devices. THAT is different because it solves (sets of) differential equation(s) instead of processing logical procedures. It is a general-purpose analog computer in as far as it can solve any (set of) partial differential equation(s). In doing so, a single THAT is limited by its number of calculating elements. By connecting multiple THATs in &#039;&#039;[[Minion|minion chains]]&#039;&#039;, it is possible to implement large analog computer programs involving any number of calculating elements.&lt;br /&gt;
&lt;br /&gt;
== How can I program THAT? ==&lt;br /&gt;
Programming [[analog computer]]s is about modeling change in time. Typically, this process starts by translating change in some dynamic systems into one or more differential equations. These equations are then translated into patterns of wire connections between the analog computing elements on THAT&#039;s patch field. These patterns of wire connections are analog computer programs. When a program is run, THAT solves the programmed differential equations and outputs their solutions as time-varying voltages.&lt;br /&gt;
&lt;br /&gt;
== How can I obtain output from THAT? ==&lt;br /&gt;
THAT outputs the solutions of differential equations as time-varying voltages. In control applications, these can be used to drive actuators such as motors or valves. In lab or classroom settings, they are often visualized as graphs using [[oscilloscope]]s or [[plotter]]s. In [[hybrid computing]] (where analog and digital computers work in tandem), analog-to-digital converters and digital-to-analog converters turn time-varying voltages into digital data and vice versa. The simplest way to read the output of your THAT is to connect it to the [[Soundcard|sound card]] of a digital computer which can then be used to visualize the output using digital oscilloscope software and to record, analyze, or otherwise process it.&lt;br /&gt;
&lt;br /&gt;
== Why do the plugs not go all the way into the patch panel? ==&lt;br /&gt;
[[File:Plug depth.jpg|thumb|left|Plugs in the patch panel of THAT.]]&lt;br /&gt;
This is one of several unconventional but intentional design moves that make THAT possible and affordable. The 2&amp;amp;nbsp;mm plug cables are intended by its supplier for use with a particular kind of gold-plated socket. One of these sockets costs close to one USD. Mounting it on a printed circuit board (PCB) costs close to another USD. There are 186 plug holes on THAT&#039;s patch panel. We saved all of that cost by using an extra-thick top PCB and having appropriately-sized through-holes gold-plated. Since the top PCB is less thick than the plugs are long, and since the plugs have small, contact-assuring springs half-way along their length, there are stop-limits below each plug hole to ensure good contacts. The result looks a little unexpected, works just as well and cuts the cost of the overall device by more than half.&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== With outputs varying between -10V to 10V, how can I use THAT to model quantities smaller or greater than that? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of quantities. Quantities are represented on analog computers in a voltage or current interval with fixed boundaries called the [[Machine Unit]]. On THAT, this interval is -10 V to +10 V. For the sake of simplicity, the [[Machine Unit]] is generally thought of as ± 1, regardless of the actual voltage or current interval of a given analog computer. To model arbitrary quantities on THAT, they can be scaled to make efficient use of the [[Machine Unit]]. [[Output]] can then be converted back to the original scale.&lt;br /&gt;
&lt;br /&gt;
== How can I use THAT to create useful models of very fast or very slow phenomena? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of speed. THAT allows compressing or stretching the independent variable time by several orders of magnitude. In this way, the instantaneous decay of a volatile compound can be simulated slowly enough for observation and interactive manipulation, while population dynamics occurring over decades or centuries can be simulated in the blink of an eye.&lt;br /&gt;
&lt;br /&gt;
== What calculating elements are available on THAT? ==&lt;br /&gt;
THAT is designed to allow a wide range of interesting applications with a minimal set of analog calculating elements. It offers five [[integrator]]s, four [[summer]]s, four [[inverter]]s, two [[multiplier]]s, and eight [[Coefficients/Potentiometers|coefficient potentiometers]]. In addition, it offers two [[comparator]]s, two precision [[XIR|resistor networks]] as well as [[capacitor]]s, [[diode]]s, and Zener diodes. Where more calculating elements are needed for a particular application, multiple THATs can be connected in [[minion|minion chains]].&lt;br /&gt;
&lt;br /&gt;
== How precise is THAT? ==&lt;br /&gt;
THAT is precise to about three positions after the decimal point, relative to its [[Machine Unit]]. It is important to note that comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Digital computers handle quantities based on &#039;&#039;counting&#039;&#039; (e.g., &amp;quot;how many siblings do you have?&amp;quot;) as well as quantities based on &#039;&#039;measuring&#039;&#039; (e.g., what is your body height?&amp;quot;). Most of the time, analog computers handle quantities based on measuring only. Consider this: A bank clerk getting the third decimal place of an interest rate wrong commits a severe error, while a tailor being off by a micrometer when taking a client&#039;s measurements has no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors which can quickly add up in iterative loops. Analog computers do not operate numerically and do not round. In this sense, the great precision of today&#039;s digital computers helps minimize a problem that is specific to digital computing. In short, representing quantities as continuous voltages (or currents), analog computers do not suffer from many problems inherent to binary value representations. While analog computer solutions, too, can exhibit instabilities, etc., the precision of THAT is perfectly appropriate for the vast majority of applications.&lt;br /&gt;
&lt;br /&gt;
== What is a minion chain? ==&lt;br /&gt;
THAT is designed to allow an extensive range of applications with a small set of calculating elements. When applications require additional calculating elements, it is possible to link multiple THATs in a &amp;quot;[[Minion|minion chain&amp;quot;]] using their &amp;quot;MASTER&amp;quot; and &amp;quot;MINION&amp;quot; ports. Connecting the MINION port of a THAT to the MASTER port of another THAT with a ribbon cable makes the first THAT the &amp;quot;master&amp;quot; and the second THAT its &amp;quot;minion&amp;quot; so they can work together and share the calculating elements of both devices in the same program. There is no limit to the number of THATs that can be linked in a minion chain.&lt;br /&gt;
&lt;br /&gt;
== 2+2 ≠ 4? ==&lt;br /&gt;
If you wonder why THAT computes something like &amp;lt;code&amp;gt;2+2 = -4&amp;lt;/code&amp;gt;, then you need to familiarize yourself with how the [[Components of The Analog Thing]] work. [[Summer]]s on analog computers are typically &#039;&#039;negating&#039;&#039;. This means they yield the negative of the sum. This is a convention and needs some getting-used-to. If you like, you can simply feed the summer&#039;s output into an [[Inverter]] to obtain the &amp;quot;correct&amp;quot; sign.&lt;br /&gt;
&lt;br /&gt;
== Are THAT&#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? ==&lt;br /&gt;
THAT&#039;s inputs are protected by supressor diodes which begin to conduct at about +-20V. It&#039;s no problem to connect an output from a +-15V circuit to THAT&#039;s inputs. But some inputs will be overloaded if the voltage exceeds about +-11.5V, because THAT&#039;s supply voltage is +-12V.&lt;br /&gt;
&lt;br /&gt;
[[Category:Manual|FAQ]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=839</id>
		<title>The Analog Thing FAQ</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=839"/>
		<updated>2021-12-08T15:05:10Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* How does a Hello World program look like on THAT? */ Link to Damped oscillation, further explanations are unnecessary here.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list of &#039;&#039;&#039;frequently asked questions (FAQ)&#039;&#039;&#039; about [[The Analog Thing]] (in short &#039;&#039;THAT&#039;&#039;). It&#039;s a great entry place to learn about THAT.&lt;br /&gt;
&lt;br /&gt;
== What is analog computing? ==&lt;br /&gt;
[[Analog Computer|Analog computing]] is an alternative to digital computing; ideally suited for dynamic systems modeling; ideally suited for neuromorphic AI applications; much more energy-efficient than digital computing; inherently safer than digital computing in the face of cyber threats; a great, hands-on way to learn about maths, engineering and systems; and simply an eye-opening experience.&lt;br /&gt;
&lt;br /&gt;
== What is THE ANALOG THING? ==&lt;br /&gt;
[[The Analog Thing|THE ANALOG THING]] is a high-quality, low-cost, open-source, and not-for-profit cutting-edge analog computer. You can think of it as a kind of [[Raspberry Pi]] that calculates with continuous voltages rather than with zeroes and ones.&lt;br /&gt;
&lt;br /&gt;
== What is &amp;quot;THAT&amp;quot;? ==&lt;br /&gt;
THAT is an abbreviation of [[The Analog Thing|THE ANALOG THING]].&lt;br /&gt;
&lt;br /&gt;
== Who is the team behind THAT and what is their motivation? ==&lt;br /&gt;
THAT is developed and distributed by the German tech start-up company [https://www.anabrid.com anabrid] under the brand name [https://analogparadigm.com Analog Paradigm]. Anabrid is planning to develop an analog computer on-a-chip to diversify today&#039;s digital computing monoculture with analog-digital hybrid computing. To support this initiative, anabrid uses its Analog Paradigm brand to promote the often much more efficient and safer analog computing paradigm. THAT is Analog Paradigm&#039;s response to the need for education and community activity around analog computing. In contrast to the [https://analogparadigm.com/products.html Analog Paradigm Model 1 analog computer], THAT is small, highly affordable, open-source, and not-for-profit. It is analog computing for the future, for all. Analog Paradigm welcomes community contributions to THAT hardware, accessories and documentation.&lt;br /&gt;
&lt;br /&gt;
== What can I do with THAT? ==&lt;br /&gt;
THAT is typically used to model dynamic systems, i.e., systems that change in time according to some causal relationships. Examples include including market economies, the spread of diseases, population dynamics, chemical reactions, mechanical systems, the firing of neurons, a variety of mathematical attractors, and much more. Technically, THAT solves (sets of) [[differential equation]]s by way of [[Integrator|integration]], and it produces results in the form of graphs representing relationships between dependent and independent variables. If you are not familiar with differential equations, then THAT is an excellent tool to familiarize yourself with them. You can use THAT for a variety of purposes: You can use it to predict in the natural sciences, to control in engineering, to explain in educational settings, to imitate in gaming, or you can use it for the pure joy of it. THAT can help you understand what is (models of), and it can help you bring about what should be (models for). More fundamentally, THAT allows you to explore a non-digital computational paradigm hands-on!&lt;br /&gt;
&lt;br /&gt;
== What do I need to work with THAT? ==&lt;br /&gt;
You need a set of plug cables, which is included with THAT. You also need a [[Power|USB power supply with a USB-C plug]]. Since most people have spare USB power supplies, we decided not to include one with THAT and save the extra cost. You will also need something to read the output of THAT (voltages that change over time), such as a hardware or software [[oscilloscope]]. [[Software Oscilloscopes|Software oscilloscopes]] are software programs that can run on digital desktop or laptop computers and typically read changing voltages through the [[Soundcard|sound card&#039;s audio input]] interface. Software oscilloscopes (including free and open source ones) are available for all major operating systems.&lt;br /&gt;
&lt;br /&gt;
== How does a &#039;&#039;Hello World&#039;&#039; program look like on THAT? ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb]]&lt;br /&gt;
A good first program for &amp;quot;analog beginners&amp;quot; is the modeling of a damped oscillation in an isolated system.&lt;br /&gt;
For a detailed explanation see: [[Damped oscillation]]&lt;br /&gt;
&lt;br /&gt;
== Is THAT a general purpose computer? ==&lt;br /&gt;
Yes and no. The term general-purpose computer usually describes devices that can be programmed to mimic the logical procedures performed by other, comparable devices. THAT is different because it solves (sets of) differential equation(s) instead of processing logical procedures. It is a general-purpose analog computer in as far as it can solve any (set of) partial differential equation(s). In doing so, a single THAT is limited by its number of calculating elements. By connecting multiple THATs in &#039;&#039;[[Minion|minion chains]]&#039;&#039;, it is possible to implement large analog computer programs involving any number of calculating elements.&lt;br /&gt;
&lt;br /&gt;
== How can I program THAT? ==&lt;br /&gt;
Programming [[analog computer]]s is about modeling change in time. Typically, this process starts by translating change in some dynamic systems into one or more differential equations. These equations are then translated into patterns of wire connections between the analog computing elements on THAT&#039;s patch field. These patterns of wire connections are analog computer programs. When a program is run, THAT solves the programmed differential equations and outputs their solutions as time-varying voltages.&lt;br /&gt;
&lt;br /&gt;
== How can I obtain output from THAT? ==&lt;br /&gt;
THAT outputs the solutions of differential equations as time-varying voltages. In control applications, these can be used to drive actuators such as motors or valves. In lab or classroom settings, they are often visualized as graphs using [[oscilloscope]]s or [[plotter]]s. In [[hybrid computing]] (where analog and digital computers work in tandem), analog-to-digital converters and digital-to-analog converters turn time-varying voltages into digital data and vice versa. The simplest way to read the output of your THAT is to connect it to the [[Soundcard|sound card]] of a digital computer which can then be used to visualize the output using digital oscilloscope software and to record, analyze, or otherwise process it.&lt;br /&gt;
&lt;br /&gt;
== Why do the plugs not go all the way into the patch panel? ==&lt;br /&gt;
[[File:Plug depth.jpg|thumb|left|Plugs in the patch panel of THAT.]]&lt;br /&gt;
This is one of several unconventional but intentional design moves that make THAT possible and affordable. The 2&amp;amp;nbsp;mm plug cables are intended by its supplier for use with a particular kind of gold-plated socket. One of these sockets costs close to one USD. Mounting it on a printed circuit board (PCB) costs close to another USD. There are 186 plug holes on THAT&#039;s patch panel. We saved all of that cost by using an extra-thick top PCB and having appropriately-sized through-holes gold-plated. Since the top PCB is less thick than the plugs are long, and since the plugs have small, contact-assuring springs half-way along their length, there are stop-limits below each plug hole to ensure good contacts. The result looks a little unexpected, works just as well and cuts the cost of the overall device by more than half.&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== With outputs varying between -10V to 10V, how can I use THAT to model quantities smaller or greater than that? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of quantities. Quantities are represented on analog computers in a voltage or current interval with fixed boundaries called the [[Machine Unit]]. On THAT, this interval is -10 V to +10 V. For the sake of simplicity, the [[Machine Unit]] is generally thought of as ± 1, regardless of the actual voltage or current interval of a given analog computer. To model arbitrary quantities on THAT, they can be scaled to make efficient use of the [[Machine Unit]]. [[Output]] can then be converted back to the original scale.&lt;br /&gt;
&lt;br /&gt;
== How can I use THAT to create useful models of very fast or very slow phenomena? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of speed. THAT allows compressing or stretching the independent variable time by several orders of magnitude. In this way, the instantaneous decay of a volatile compound can be simulated slowly enough for observation and interactive manipulation, while population dynamics occurring over decades or centuries can be simulated in the blink of an eye.&lt;br /&gt;
&lt;br /&gt;
== What calculating elements are available on THAT? ==&lt;br /&gt;
THAT is designed to allow a wide range of interesting applications with a minimal set of analog calculating elements. It offers five [[integrator]]s, four [[summer]]s, four [[inverter]]s, two [[multiplier]]s, and eight [[Coefficients/Potentiometers|coefficient potentiometers]]. In addition, it offers two [[comparator]]s, two precision [[XIR|resistor networks]] as well as [[capacitor]]s, [[diode]]s, and Zener diodes. Where more calculating elements are needed for a particular application, multiple THATs can be connected in [[minion|minion chains]].&lt;br /&gt;
&lt;br /&gt;
== How precise is THAT? ==&lt;br /&gt;
THAT is precise to about three positions after the decimal point, relative to its [[Machine Unit]]. It is important to note that comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Digital computers handle quantities based on &#039;&#039;counting&#039;&#039; (e.g., &amp;quot;how many siblings do you have?&amp;quot;) as well as quantities based on &#039;&#039;measuring&#039;&#039; (e.g., what is your body height?&amp;quot;). Most of the time, analog computers handle quantities based on measuring only. Consider this: A bank clerk getting the third decimal place of an interest rate wrong commits a severe error, while a tailor being off by a micrometer when taking a client&#039;s measurements has no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors which can quickly add up in iterative loops. Analog computers do not operate numerically and do not round. In this sense, the great precision of today&#039;s digital computers helps minimize a problem that is specific to digital computing. In short, representing quantities as continuous voltages (or currents), analog computers do not suffer from many problems inherent to binary value representations. While analog computer solutions, too, can exhibit instabilities, etc., the precision of THAT is perfectly appropriate for the vast majority of applications.&lt;br /&gt;
&lt;br /&gt;
== What is a minion chain? ==&lt;br /&gt;
THAT is designed to allow an extensive range of applications with a small set of calculating elements. When applications require additional calculating elements, it is possible to link multiple THATs in a &amp;quot;[[Minion|minion chain&amp;quot;]] using their &amp;quot;MASTER&amp;quot; and &amp;quot;MINION&amp;quot; ports. Connecting the MINION port of a THAT to the MASTER port of another THAT with a ribbon cable makes the first THAT the &amp;quot;master&amp;quot; and the second THAT its &amp;quot;minion&amp;quot; so they can work together and share the calculating elements of both devices in the same program. There is no limit to the number of THATs that can be linked in a minion chain.&lt;br /&gt;
&lt;br /&gt;
== 2+2 ≠ 4? ==&lt;br /&gt;
If you wonder why THAT computes something like &amp;lt;code&amp;gt;2+2 = -4&amp;lt;/code&amp;gt;, then you need to familiarize yourself with how the [[Components of The Analog Thing]] work. [[Summer]]s on analog computers are typically &#039;&#039;negating&#039;&#039;. This means they yield the negative of the sum. This is a convention and needs some getting-used-to. If you like, you can simply feed the summer&#039;s output into an [[Inverter]] to obtain the &amp;quot;correct&amp;quot; sign.&lt;br /&gt;
&lt;br /&gt;
== Are THAT&#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? ==&lt;br /&gt;
THAT&#039;s inputs are protected by supressor diodes which begin to conduct at about +-20V. It&#039;s no problem to connect an output from a +-15V circuit to THAT&#039;s inputs. But some inputs will be overloaded if the voltage exceeds about +-11.5V, because THAT&#039;s supply voltage is +-12V.&lt;br /&gt;
&lt;br /&gt;
[[Category:Manual|FAQ]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=826</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=826"/>
		<updated>2021-12-08T13:17:40Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 3. Wiring the circuit on a THAT and adjusting parameters */ first --&amp;gt; second&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a quite detailed step by step explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need to understand three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated.&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;That&#039;s unclear and should be explained.&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẍ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;Possible error, don&#039;t you mean &amp;quot;If &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, ...&amp;quot; ?&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch off the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch off the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
In order to wire the circuit worked out above you need to be familiar with the computing elements used. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Images&lt;br /&gt;
|-&lt;br /&gt;
|On the right side you find an overview image of &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; without wiring.&lt;br /&gt;
&lt;br /&gt;
There are much more computing parts than needed for this task.&lt;br /&gt;
&lt;br /&gt;
Important basics:&lt;br /&gt;
#&#039;&#039;&#039;Round/circular panels --&amp;gt; Inputs&lt;br /&gt;
#&#039;&#039;&#039;Triangular panels --&amp;gt; Outputs&lt;br /&gt;
#&#039;&#039;&#039;Rectangular panels --&amp;gt; Static signals and advanced things&lt;br /&gt;
&lt;br /&gt;
Black inputs (with a 10 next to it) are not important for this task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Important for integrators:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IC-panel:&#039;&#039;&#039; IC refers to &#039;&#039;&#039;initial condition&#039;&#039;&#039; and is used to set the starting condition of the integrator.&lt;br /&gt;
&lt;br /&gt;
If the IC panel is left open, the initial condition is set to zero.&lt;br /&gt;
|| [[File:THATv1.0 overview.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|-&lt;br /&gt;
|In this image the for this task important computing elements, panels and switches are highlighted.&lt;br /&gt;
&lt;br /&gt;
Note that you certainly do not need every marked computing element, just some of each type.&lt;br /&gt;
|| [[File:THATv1.0 parts01.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|}&lt;br /&gt;
From this point you can start wiring the actual simulation circuit. Colors from circuit scheme and actual images are matched to make them easier to identify, but have no further meaning.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Image/circuit&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 1:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Start with the first integrator.&lt;br /&gt;
&lt;br /&gt;
Set the initial condition of the integrator to 1 by connecting the IC-panel with the panel directly below (rectangular +1).&lt;br /&gt;
&lt;br /&gt;
Also, connect a blue wire to the first integrators input and a red wire to it´s output, but leave them open.&lt;br /&gt;
&lt;br /&gt;
The blue wire shall be the last wire to be closed at the end.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| [[File:DO Int03.png|thumb|500px|First integrator]] [[File:DO That01.jpg|thumb|500px|First integrator]] &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 2:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Connect the output of the first integrator (red wire) to the input of the second integrator.&lt;br /&gt;
&lt;br /&gt;
Connect a yellow cable to the output of the second integrator.&lt;br /&gt;
|| [[File:DO Int04.png|thumb|500px|First integrator]] [[File:DO That02.jpg|thumb|500px|First integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=820</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=820"/>
		<updated>2021-12-08T13:03:52Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 2. Derivation of a computer circuit */ change remarks to red color&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a quite detailed step by step explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need to understand three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated.&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;That&#039;s unclear and should be explained.&amp;lt;/span&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẍ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: red&amp;quot;&amp;gt;Possible error, don&#039;t you mean &amp;quot;If &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, ...&amp;quot; ?&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch off the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch off the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
In order to wire the circuit worked out above you need to be familiar with the computing elements used. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Images&lt;br /&gt;
|-&lt;br /&gt;
|On the right side you find an overview image of &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; without wiring.&lt;br /&gt;
&lt;br /&gt;
There are much more computing parts than needed for this task.&lt;br /&gt;
&lt;br /&gt;
Important basics:&lt;br /&gt;
#&#039;&#039;&#039;Round/circular panels --&amp;gt; Inputs&lt;br /&gt;
#&#039;&#039;&#039;Triangular panels --&amp;gt; Outputs&lt;br /&gt;
#&#039;&#039;&#039;Rectangular panels --&amp;gt; Static signals and advanced things&lt;br /&gt;
&lt;br /&gt;
Black inputs (with a 10 next to it) are not important for this task.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Important for integrators:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IC-panel:&#039;&#039;&#039; IC refers to &#039;&#039;&#039;initial condition&#039;&#039;&#039; and is used to set the starting condition of the integrator.&lt;br /&gt;
&lt;br /&gt;
If the IC panel is left open, the initial condition is set to zero.&lt;br /&gt;
|| [[File:THATv1.0 overview.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|-&lt;br /&gt;
|In this image the for this task important computing elements, panels and switches are highlighted.&lt;br /&gt;
&lt;br /&gt;
Note that you certainly do not need every marked computing element, just some of each type.&lt;br /&gt;
|| [[File:THATv1.0 parts01.jpg|thumb|500px|THAT overview]]&lt;br /&gt;
|}&lt;br /&gt;
From this point you can start wiring the actual simulation circuit.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Image/circuit&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Step 1:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Start with the first integrator&lt;br /&gt;
|| Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=User_talk:Max_Peschke&amp;diff=817</id>
		<title>User talk:Max Peschke</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=User_talk:Max_Peschke&amp;diff=817"/>
		<updated>2021-12-08T12:46:06Z</updated>

		<summary type="html">&lt;p&gt;MKoch: Created page with &amp;quot;Hello Max, I&amp;#039;ve written two remarks in the &amp;quot;Damped Oscillation&amp;quot; page. One point is unclear and the other is possibly an error. Michael&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hello Max,&lt;br /&gt;
I&#039;ve written two remarks in the &amp;quot;Damped Oscillation&amp;quot; page. One point is unclear and the other is possibly an error.&lt;br /&gt;
Michael&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=811</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=811"/>
		<updated>2021-12-08T12:28:17Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 2. Derivation of a computer circuit */ typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a detailed explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated. (That&#039;s unclear and should be explained)&lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẍ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
&lt;br /&gt;
Possible error, don&#039;t you mean &amp;quot;If &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, ...&amp;quot; ?&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch off the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch off the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit/Images&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=810</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=810"/>
		<updated>2021-12-08T12:25:49Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 2. Derivation of a computer circuit */ typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a detailed explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated. (That&#039;s unclear and should be explained)&lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẍ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
&lt;br /&gt;
Possible error, don&#039;t you mean &amp;quot;If &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, ...&amp;quot; ?&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch off the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch of the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit/Images&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=808</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=808"/>
		<updated>2021-12-08T12:21:27Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 2. Derivation of a computer circuit */ Possible error?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a detailed explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated. (That&#039;s unclear and should be explained)&lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẍ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
&lt;br /&gt;
Possible error, don&#039;t you mean &amp;quot;If &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, ...&amp;quot; ?&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch of the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch of the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit/Images&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=807</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=807"/>
		<updated>2021-12-08T12:06:39Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* 2. Derivation of a computer circuit */ typo + that&amp;#039;s unclear&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ExecutionOfAnAnalogSimulation.jpg|thumb|Execution of an analog simulation]]&lt;br /&gt;
The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a detailed explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
There are four major steps to execute a simulation on an analog computer, all of which are equally crucial:&lt;br /&gt;
# Describe the to be simulated system with differential equations&lt;br /&gt;
# Derive a computer circuit from these equations&lt;br /&gt;
# Wire the computer circuit on the analog computer and adjust parameters&lt;br /&gt;
# Choose viable visualization method (usually oscilloscopes) and connect the computer circuit&lt;br /&gt;
&lt;br /&gt;
This article will focus on point 2. to 4. and requires a basic understanding of differential equations.&lt;br /&gt;
&lt;br /&gt;
== 1. Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb|Basic model of a damped oscillation]]&lt;br /&gt;
The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
For this example the description is rather short:&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - &#039;&#039;&#039;Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;&#039;&#039;&#039;&lt;br /&gt;
     k = spring coefficient, x = deflection&lt;br /&gt;
   - &#039;&#039;&#039;Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;&#039;&#039;&#039;&lt;br /&gt;
     m = mass, a = acceleration&lt;br /&gt;
   - &#039;&#039;&#039;Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;&#039;&#039;&#039;&lt;br /&gt;
     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   &#039;&#039;&#039;v = ẋ&#039;&#039;&#039;&lt;br /&gt;
 (the velocity equals the first derivative of x)&lt;br /&gt;
   &#039;&#039;&#039;a = ẍ&#039;&#039;&#039;&lt;br /&gt;
 (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
 -&amp;gt; &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2. Derivation of a computer circuit ==&lt;br /&gt;
At first, we need three basic computing elements which can probably be found on every electrical analog computer:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The coefficient potentiometer&#039;&#039;&#039;, which is used to multiply an input x with the factor a so &#039;&#039;&#039;a*x &#039;&#039;&#039; is generated.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: a can only accept values between 0 and 1!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Can also be used as dividing factor so &#039;&#039;&#039;a/x&#039;&#039;&#039; is generated. (That&#039;s unclear and should be explained)&lt;br /&gt;
&lt;br /&gt;
|| [[File:CoefficientpotentiometerSymbol.png|thumb|300px|Coefficient potentiometer Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;The inverter // summer&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Note: &#039;&#039;&#039;Due to technical reasons the output of a summer is negated! Input: x,y --&amp;gt; Output: -(x+y)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
At the basis of the output inversion &#039;&#039;&#039;a summer with one input functions as inverter&#039;&#039;&#039; and therefore the summer and the inverter share the same circuit symbol.&lt;br /&gt;
||&lt;br /&gt;
[[File:SummerSymbol.png|thumb|300px|Basic Summer Scheme]]&lt;br /&gt;
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;The integrator&#039;&#039;&#039;, the input (or inputs) can be found on the left and the output on the right.&lt;br /&gt;
&lt;br /&gt;
Coming from above you find &#039;&#039;&#039;ẋ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039;, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note: Due to technical reasons the output of an integrator is negated! ẍ --&amp;gt;-ẋ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Electrical analog integrators can only integrate over time.&lt;br /&gt;
|| [[File:IntegratorSymbol_v2.png|thumb|300px|Basic Integrator Scheme]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
With these basic computing elements we are able to generate &#039;&#039;&#039;ẍ = -(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The basic idea is to &#039;&#039;&#039;start with an integrator assuming ẍ as it´s input.&#039;&#039;&#039; From there on you add computing elements do generate the input in the form of &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit&lt;br /&gt;
|-&lt;br /&gt;
|As mentioned above, start with an integrator and assume the highest derivative as input.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ẍ&#039;&#039;&#039; represents the deflection over time. If &#039;&#039;&#039;ẍ&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&#039;&#039;&#039; is set to 1, the damped oscillation starts with maximum velocity.&lt;br /&gt;
||[[File:IntegratorSymbol_v2.png|thumb|300px|Basic integrator]]&lt;br /&gt;
|-&lt;br /&gt;
| When putting another integrator behind the first, you can generate &#039;&#039;&#039;-ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; || [[File:TwoIntegrators_v3.png|thumb|300px|Generating all derivatives]]&lt;br /&gt;
|-&lt;br /&gt;
| To generate &#039;&#039;&#039;ẋ&#039;&#039;&#039; from &#039;&#039;&#039;-ẋ&#039;&#039;&#039;, branch of the circuit behind the first integrator and put the second wire in an inverter.|| [[File:DO part01_v2.png|thumb|300px|Generating all derivatives with correct sign]]&lt;br /&gt;
|-&lt;br /&gt;
| Insert two coefficient potentiometers to give &#039;&#039;&#039;ẋ&#039;&#039;&#039; and &#039;&#039;&#039;x&#039;&#039;&#039; their coefficients.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;k = spring coefficient&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;d = damper coefficient&lt;br /&gt;
&lt;br /&gt;
To generate &#039;&#039;&#039;d*ẋ&#039;&#039;&#039; and &#039;&#039;&#039;k*x&#039;&#039;&#039;&lt;br /&gt;
||[[File:DO part02_v2.png|thumb|300px|Using of coefficient potentiometers to multiply parameters with a constant value]]&lt;br /&gt;
|-&lt;br /&gt;
| Merge the outputs of the coefficient potentiometers in a summer.&lt;br /&gt;
&lt;br /&gt;
Note the sign change, which is rather useful for this case.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x)&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part03_v2.png|thumb|300px|Merging the potentiometer outputs in a summer]]&lt;br /&gt;
|-&lt;br /&gt;
| As last computing part add another coefficient potentiometer to divide the output of the summer with the mass coefficient.&lt;br /&gt;
&lt;br /&gt;
Output: &#039;&#039;&#039;-(d*ẋ + k*x) / m&#039;&#039;&#039;&lt;br /&gt;
|| [[File:DO part04_v2.png|thumb|300px|Adding a potentiometer to add mass coefficient]]&lt;br /&gt;
|-&lt;br /&gt;
| Next to final step is to close the computing circuit by connecting the output of the last potentiometer with the input of the first integrator.&lt;br /&gt;
&lt;br /&gt;
The sign is already correct.&lt;br /&gt;
|| [[File:DO part05_v2.png|thumb|300px|Closing the circuit]]&lt;br /&gt;
|-&lt;br /&gt;
| Lastly, branch of the circuit at a given point to use it later on with a given interface.&lt;br /&gt;
&lt;br /&gt;
In this case the circuit is branched just after the inverter to make the signal (in this case the velocity over time) visible on an oscilloscope later on.&lt;br /&gt;
&lt;br /&gt;
Usually, outputs are drawn as arrows.&lt;br /&gt;
|| [[File:DO part06_v2.png|thumb|300px|Final circuit]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 3. Wiring the circuit on a THAT and adjusting parameters ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Description !! Circuit/Images&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|-&lt;br /&gt;
| Example || Example&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=740</id>
		<title>Damped oscillation</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Damped_oscillation&amp;diff=740"/>
		<updated>2021-12-03T20:06:06Z</updated>

		<summary type="html">&lt;p&gt;MKoch: correct small typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The modeling of a &#039;&#039;&#039;damped oscillation&#039;&#039;&#039; is a good starting point for analog programming beginners. This article shall give a detailed explanation how to implement a simulation on &#039;&#039;&#039;The Analog Thing&#039;&#039;&#039; using the full repatriation method and to get results on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
== Mathematical description of a damped oscillation ==&lt;br /&gt;
[[File:Damped oscillator.png|thumb]]&lt;br /&gt;
The first and often the hardest step of modeling any to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations.&lt;br /&gt;
&lt;br /&gt;
Find all acting forces, three in this case:&lt;br /&gt;
   - Spring  force F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt; = k*x;     k = spring coefficient, x = deflection&lt;br /&gt;
   - Inertia force F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt; = m*a;     m = mass, a = acceleration&lt;br /&gt;
   - Damper  force F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt; = d*v;     d = damper coefficient, v = velocity&lt;br /&gt;
Set the sum of all forces to zero (definition of an isolated system):&lt;br /&gt;
   F&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;  + F&amp;lt;sub&amp;gt;s&amp;lt;/sub&amp;gt;  = 0&lt;br /&gt;
   m*a + d*v + k*x = 0&lt;br /&gt;
Replace the velocity &#039;&#039;&#039;v&#039;&#039;&#039; with &#039;&#039;&#039;ẋ&#039;&#039;&#039; and the acceleration &#039;&#039;&#039;a&#039;&#039;&#039; with &#039;&#039;&#039;ẍ&#039;&#039;&#039;&lt;br /&gt;
   v = ẋ (the velocity equals the first derivative of x)&lt;br /&gt;
   a = ẍ (the acceleration equals the second derivative of x)&lt;br /&gt;
     m*a + d*v + k*x &lt;br /&gt;
   = m*ẍ + d*ẋ + k*x = 0&lt;br /&gt;
Now we have an exact description the damped oscillation in the form of a differential equation. &lt;br /&gt;
&lt;br /&gt;
Lastly, solve this equation for the highest derivative the finish the full repatriation:&lt;br /&gt;
 -&amp;gt; ẍ = -(d*ẋ + k*x) / m&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=718</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=718"/>
		<updated>2021-10-30T10:07:46Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than 10€. Search for &amp;quot;4*24 Rotary Switch&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[File:4x24_rotary_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled to remove the limiter, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
&lt;br /&gt;
[[File:limiter_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° phase shifted from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
&lt;br /&gt;
[[File:contact_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
&lt;br /&gt;
[[File:3_switches.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an input A and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotation_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotator.jpg]]&lt;br /&gt;
&lt;br /&gt;
It doesn&#039;t matter that the outputs X&#039; and Y&#039; are inverted. Just rotate the switch 180° to invert the signs.&lt;br /&gt;
&lt;br /&gt;
Three rotators can be combined for making yaw, pitch and roll rotations:&lt;br /&gt;
&lt;br /&gt;
[[File:Yaw_pitch_roll.jpg]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=717</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=717"/>
		<updated>2021-10-30T10:07:25Z</updated>

		<summary type="html">&lt;p&gt;MKoch: +new picture&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than 10€. Search for &amp;quot;4*24 Rotary Switch&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[File:4x24_rotary_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled to remove the limiter, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
&lt;br /&gt;
[[File:limiter_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° phase shifted from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
&lt;br /&gt;
[[File:contact_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
&lt;br /&gt;
[[File:3_switches.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an input A and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotation_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotator.jpg]]&lt;br /&gt;
&lt;br /&gt;
It doesn&#039;t matter that the outputs X&#039; and Y&#039; are inverted. Just rotate the switch 180° to invert the signs.&lt;br /&gt;
Three rotators can be combined for making yaw, pitch and roll rotations:&lt;br /&gt;
&lt;br /&gt;
[[File:Yaw_pitch_roll.jpg]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=File:Yaw_pitch_roll.jpg&amp;diff=716</id>
		<title>File:Yaw pitch roll.jpg</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=File:Yaw_pitch_roll.jpg&amp;diff=716"/>
		<updated>2021-10-30T10:05:30Z</updated>

		<summary type="html">&lt;p&gt;MKoch: Three rotators can be combined for yaw, pitch and roll rotations&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
Three rotators can be combined for yaw, pitch and roll rotations&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=657</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=657"/>
		<updated>2021-10-25T21:19:37Z</updated>

		<summary type="html">&lt;p&gt;MKoch: Inverted outputs explained&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than 10€. Search for &amp;quot;4*24 Rotary Switch&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[File:4x24_rotary_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled to remove the limiter, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
&lt;br /&gt;
[[File:limiter_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° phase shifted from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
&lt;br /&gt;
[[File:contact_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
&lt;br /&gt;
[[File:3_switches.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an input A and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotation_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotator.jpg]]&lt;br /&gt;
&lt;br /&gt;
It doesn&#039;t matter that the outputs X&#039; and Y&#039; are inverted. Just rotate the switch 180° to invert the signs.&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=656</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=656"/>
		<updated>2021-10-25T21:12:10Z</updated>

		<summary type="html">&lt;p&gt;MKoch: + pictures&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than 10€. Search for &amp;quot;4*24 Rotary Switch&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[File:4x24_rotary_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled to remove the limiter, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
&lt;br /&gt;
[[File:limiter_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° phase shifted from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
&lt;br /&gt;
[[File:contact_in_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
&lt;br /&gt;
[[File:3_switches.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an input A and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotation_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
&lt;br /&gt;
[[File:schematic_rotator.jpg]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=File:Schematic_rotator.jpg&amp;diff=655</id>
		<title>File:Schematic rotator.jpg</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=File:Schematic_rotator.jpg&amp;diff=655"/>
		<updated>2021-10-25T21:12:01Z</updated>

		<summary type="html">&lt;p&gt;MKoch: schematic of the rotator&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
schematic of the rotator&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=File:Schematic_rotation_switch.jpg&amp;diff=654</id>
		<title>File:Schematic rotation switch.jpg</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=File:Schematic_rotation_switch.jpg&amp;diff=654"/>
		<updated>2021-10-25T21:10:23Z</updated>

		<summary type="html">&lt;p&gt;MKoch: schematic of one half of the rotation switch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
schematic of one half of the rotation switch&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=File:3_switches.jpg&amp;diff=653</id>
		<title>File:3 switches.jpg</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=File:3_switches.jpg&amp;diff=653"/>
		<updated>2021-10-25T21:09:00Z</updated>

		<summary type="html">&lt;p&gt;MKoch: 3 rotary switches&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
3 rotary switches&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=File:Contact_in_switch.jpg&amp;diff=652</id>
		<title>File:Contact in switch.jpg</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=File:Contact_in_switch.jpg&amp;diff=652"/>
		<updated>2021-10-25T21:08:20Z</updated>

		<summary type="html">&lt;p&gt;MKoch: contact in rotary switch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
contact in rotary switch&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=File:Limiter_in_switch.jpg&amp;diff=651</id>
		<title>File:Limiter in switch.jpg</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=File:Limiter_in_switch.jpg&amp;diff=651"/>
		<updated>2021-10-25T21:05:06Z</updated>

		<summary type="html">&lt;p&gt;MKoch: limiter in rotary switch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
limiter in rotary switch&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=650</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=650"/>
		<updated>2021-10-25T21:03:51Z</updated>

		<summary type="html">&lt;p&gt;MKoch: + picture&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than 10€. Search for &amp;quot;4*24 Rotary Switch&amp;quot;.&lt;br /&gt;
[[File:4x24_rotary_switch.jpg]]&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled to remove the limiter, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° phase shifted from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an input A and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=File:4x24_rotary_switch.jpg&amp;diff=649</id>
		<title>File:4x24 rotary switch.jpg</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=File:4x24_rotary_switch.jpg&amp;diff=649"/>
		<updated>2021-10-25T21:01:16Z</updated>

		<summary type="html">&lt;p&gt;MKoch: 4x24 rotary switch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
4x24 rotary switch&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD}}&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=643</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=643"/>
		<updated>2021-10-25T07:30:04Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than 10€. Search for &amp;quot;4*24 Rotary Switch&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled to remove the limiter, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° phase shifted from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an input A and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=642</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=642"/>
		<updated>2021-10-24T17:40:21Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than $10.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled and the limiter must be removed, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° phase shifted from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an A input and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
&lt;br /&gt;
(Picture)&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=641</id>
		<title>Rotation matrix</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Rotation_matrix&amp;diff=641"/>
		<updated>2021-10-24T17:39:02Z</updated>

		<summary type="html">&lt;p&gt;MKoch: 3-dimensional matrix rotation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Only two dimensions x,y can be shown on an oscilloscope screen. If you have a circuit with three outputs x,y,z you can see only two of them. But with a rotation matrix you can rotate the x,y,z space so that you can see a two-dimensional image from an arbitrary direction.&lt;br /&gt;
&lt;br /&gt;
A 24-step switch can be used for angle adjustment in 15° steps. These 4x24 switches are available on Aliexpress for less than $10.&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
The switch must be disassembled and the limiter must be removed, so that the axis can be rotated over the full 360° range.&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
In those planes that make the sin() and -sin() signals, the contact must be removed from the A position and inserted in position B, which is 90° from A. For the -sin() signal, the phase shift is in the other direction.&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
For yaw, pitch and roll rotations you need three switches.&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the schematic for half of the switch. It has an A input and two outputs A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
The schematic for the other half is identical, but the contact in the switch is phase shifted in the other direction so that the outputs are -A*sin(alpha) and A*cos(alpha).&lt;br /&gt;
(Picture)&lt;br /&gt;
&lt;br /&gt;
This is the main schematic:&lt;br /&gt;
(Picture)&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Electronics&amp;diff=640</id>
		<title>Electronics</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Electronics&amp;diff=640"/>
		<updated>2021-10-24T17:18:52Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Measurement, Visualization, Postprocessing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is all about &#039;&#039;&#039;Hardware and Electronics&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Analog Computers ==&lt;br /&gt;
[[File:THAT concept rendering.png|thumb|[[The Analog Thing]], concept rendering]]&lt;br /&gt;
* [[The Analog Thing]] (+Schematics, Photos)&lt;br /&gt;
** [[The Analog Thing FAQ]]&lt;br /&gt;
** [[Components of The Analog Thing]]&lt;br /&gt;
*** [[Integrator]], [[Summer]] and [[Inverter]]&lt;br /&gt;
*** [[Coefficients/Potentiometers]]&lt;br /&gt;
*** [[Multiplier]], [[Comparator]], [[XIR]]&lt;br /&gt;
*** [[Capacitor]], [[Diode]], [[Z-Diode]]&lt;br /&gt;
*** [[Output]], [[Power]], [[Minion]], [[Master]], [[Trigger]]&lt;br /&gt;
*** [[Switches]] and [[Modes]], and the [[Voltmeter]]&lt;br /&gt;
** [[Assembly instructions]]&lt;br /&gt;
** [[Testing]]&lt;br /&gt;
&lt;br /&gt;
== Digital Computers ==&lt;br /&gt;
* [[Microcontroller]]s and [[System on Chip]]s&lt;br /&gt;
** [[Arduino]]&lt;br /&gt;
** [[Teensy]]&lt;br /&gt;
** [[Raspberry Pi]]&lt;br /&gt;
* [[Mobile]] devices (Smartphones, Tablets)&lt;br /&gt;
* [[Notebook]]s or [[PC]]s&lt;br /&gt;
* ... and ultimately [[Hybrid Computer]]s&lt;br /&gt;
&lt;br /&gt;
== Measurement, Visualization, Postprocessing ==&lt;br /&gt;
* [[Soundcard]]s (+Buying suggestions)&lt;br /&gt;
* [[Oscilloscopes]] (+Buying suggestions)&lt;br /&gt;
** [[Software Oscilloscopes]]&lt;br /&gt;
* [[Analog Voltmeters or Ammeters]] (+Buying suggestions)&lt;br /&gt;
* [[Data aquisition]] overview&lt;br /&gt;
* xy-[[Plotters]]&lt;br /&gt;
* [[Rotation matrix]] for yaw, pitch and roll rotations  &lt;br /&gt;
&lt;br /&gt;
[[Category:Manual]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=615</id>
		<title>The Analog Thing FAQ</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=615"/>
		<updated>2021-10-11T15:38:31Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Are THAT&amp;#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list of &#039;&#039;&#039;frequently asked questions (FAQ)&#039;&#039;&#039; about [[The Analog Thing]] (in short &#039;&#039;THAT&#039;&#039;). It&#039;s a great entry place to learn about THAT.&lt;br /&gt;
&lt;br /&gt;
== What is analog computing? ==&lt;br /&gt;
[[Analog Computer|Analog computing]] is an alternative to digital computing; ideally suited for dynamic systems modeling; ideally suited for neuromorphic AI applications; much more energy-efficient than digital computing; inherently safer than digital computing in the face of cyber threats; a great, hands-on way to learn about maths, engineering and systems; and simply an eye-opening experience.&lt;br /&gt;
&lt;br /&gt;
== What is THE ANALOG THING? ==&lt;br /&gt;
[[The Analog Thing|THE ANALOG THING]] is a high-quality, low-cost, open-source, and not-for-profit cutting-edge analog computer. You can think of it as a kind of [[Raspberry Pi]] that calculates with continuous voltages rather than with zeroes and ones.&lt;br /&gt;
&lt;br /&gt;
== What is &amp;quot;THAT&amp;quot;? ==&lt;br /&gt;
THAT is an abbreviation of [[The Analog Thing|THE ANALOG THING]].&lt;br /&gt;
&lt;br /&gt;
== Who is the team behind THAT and what is their motivation? ==&lt;br /&gt;
THAT is developed and distributed by the German tech start-up company [https://www.anabrid.com anabrid] under the brand name [https://analogparadigm.com Analog Paradigm]. Anabrid is planning to develop an analog computer on-a-chip to diversify today&#039;s digital computing monoculture with analog-digital hybrid computing. To support this initiative, anabrid uses its Analog Paradigm brand to promote the often much more efficient and safer analog computing paradigm. THAT is Analog Paradigm&#039;s response to the need for education and community activity around analog computing. In contrast to the [https://analogparadigm.com/products.html Analog Paradigm Model 1 analog computer], THAT is small, highly affordable, open-source, and not-for-profit. It is analog computing for the future, for all. Analog Paradigm welcomes community contributions to THAT hardware, accessories and documentation.&lt;br /&gt;
&lt;br /&gt;
== What can I do with THAT? ==&lt;br /&gt;
THAT is typically used to model dynamic systems, i.e., systems that change in time according to some causal relationships. Examples include including market economies, the spread of diseases, population dynamics, chemical reactions, mechanical systems, the firing of neurons, a variety of mathematical attractors, and much more. Technically, THAT solves (sets of) [[differential equation]]s by way of [[Integrator|integration]], and it produces results in the form of graphs representing relationships between dependent and independent variables. If you are not familiar with differential equations, then THAT is an excellent tool to familiarize yourself with them. You can use THAT for a variety of purposes: You can use it to predict in the natural sciences, to control in engineering, to explain in educational settings, to imitate in gaming, or you can use it for the pure joy of it. THAT can help you understand what is (models of), and it can help you bring about what should be (models for). More fundamentally, THAT allows you to explore a non-digital computational paradigm hands-on!&lt;br /&gt;
&lt;br /&gt;
== What do I need to work with THAT? ==&lt;br /&gt;
You need a set of plug cables, which is included with THAT. You also need a [[Power|USB power supply with a USB-C plug]]. Since most people have spare USB power supplies, we decided not to include one with THAT and save the extra cost. You will also need something to read the output of THAT (voltages that change over time), such as a hardware or software [[oscilloscope]]. [[Software Oscilloscopes|Software oscilloscopes]] are software programs that can run on digital desktop or laptop computers and typically read changing voltages through the [[Soundcard|sound card&#039;s audio input]] interface. Software oscilloscopes (including free and open source ones) are available for all major operating systems.&lt;br /&gt;
&lt;br /&gt;
== How does a &#039;&#039;Hello World&#039;&#039; program look like on THAT? ==&lt;br /&gt;
{{todo|write me!}}&lt;br /&gt;
&lt;br /&gt;
== Is THAT a general purpose computer? ==&lt;br /&gt;
Yes and no. The term general-purpose computer usually describes devices that can be programmed to mimic the logical procedures performed by other, comparable devices. THAT is different because it solves (sets of) differential equation(s) instead of processing logical procedures. It is a general-purpose analog computer in as far as it can solve any (set of) partial differential equation(s). In doing so, a single THAT is limited by its number of calculating elements. By connecting multiple THATs in &#039;&#039;[[Minion|minion chains]]&#039;&#039;, it is possible to implement large analog computer programs involving any number of calculating elements.&lt;br /&gt;
&lt;br /&gt;
== How can I program THAT? ==&lt;br /&gt;
Programming [[analog computer]]s is about modeling change in time. Typically, this process starts by translating change in some dynamic systems into one or more differential equations. These equations are then translated into patterns of wire connections between the analog computing elements on THAT&#039;s patch field. These patterns of wire connections are analog computer programs. When a program is run, THAT solves the programmed differential equations and outputs their solutions as time-varying voltages.&lt;br /&gt;
&lt;br /&gt;
== How can I obtain output from THAT? ==&lt;br /&gt;
THAT outputs the solutions of differential equations as time-varying voltages. In control applications, these can be used to drive actuators such as motors or valves. In lab or classroom settings, they are often visualized as graphs using [[oscilloscope]]s or [[plotter]]s. In [[hybrid computing]] (where analog and digital computers work in tandem), analog-to-digital converters and digital-to-analog converters turn time-varying voltages into digital data and vice versa. The simplest way to read the output of your THAT is to connect it to the [[Soundcard|sound card]] of a digital computer which can then be used to visualize the output using digital oscilloscope software and to record, analyze, or otherwise process it.&lt;br /&gt;
&lt;br /&gt;
== Why do the plugs not go all the way into the patch panel? ==&lt;br /&gt;
[[File:Plug depth.jpg|thumb|left|Plugs in the patch panel of THAT.]]&lt;br /&gt;
This is one of several unconventional but intentional design moves that make THAT possible and affordable. The 2&amp;amp;nbsp;mm plug cables are intended by its supplier for use with a particular kind of gold-plated socket. One of these sockets costs close to one USD. Mounting it on a printed circuit board (PCB) costs close to another USD. There are 186 plug holes on THAT&#039;s patch panel. We saved all of that cost by using an extra-thick top PCB and having appropriately-sized through-holes gold-plated. Since the top PCB is less thick than the plugs are long, and since the plugs have small, contact-assuring springs half-way along their length, there are stop-limits below each plug hole to ensure good contacts. The result looks a little unexpected, works just as well and cuts the cost of the overall device by more than half.&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== With outputs varying between -10V to 10V, how can I use THAT to model quantities smaller or greater than that? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of quantities. Quantities are represented on analog computers in a voltage or current interval with fixed boundaries called the [[Machine Unit]]. On THAT, this interval is -10 V to +10 V. For the sake of simplicity, the [[Machine Unit]] is generally thought of as ± 1, regardless of the actual voltage or current interval of a given analog computer. To model arbitrary quantities on THAT, they can be scaled to make efficient use of the [[Machine Unit]]. [[Output]] can then be converted back to the original scale.&lt;br /&gt;
&lt;br /&gt;
== How can I use THAT to create useful models of very fast or very slow phenomena? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of speed. THAT allows compressing or stretching the independent variable time by several orders of magnitude. In this way, the instantaneous decay of a volatile compound can be simulated slowly enough for observation and interactive manipulation, while population dynamics occurring over decades or centuries can be simulated in the blink of an eye.&lt;br /&gt;
&lt;br /&gt;
== What calculating elements are available on THAT? ==&lt;br /&gt;
THAT is designed to allow a wide range of interesting applications with a minimal set of analog calculating elements. It offers five [[integrator]]s, four [[summer]]s, four [[inverter]]s, two [[multiplier]]s, and eight [[Coefficients/Potentiometers|coefficient potentiometers]]. In addition, it offers two [[comparator]]s, two precision [[XIR|resistor networks]] as well as [[capacitor]]s, [[diode]]s, and Zener diodes. Where more calculating elements are needed for a particular application, multiple THATs can be connected in [[minion|minion chains]].&lt;br /&gt;
&lt;br /&gt;
== How precise is THAT? ==&lt;br /&gt;
THAT is precise to about three positions after the decimal point, relative to its [[Machine Unit]]. It is important to note that comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Digital computers handle quantities based on &#039;&#039;counting&#039;&#039; (e.g., &amp;quot;how many siblings do you have?&amp;quot;) as well as quantities based on &#039;&#039;measuring&#039;&#039; (e.g., what is your body height?&amp;quot;). Most of the time, analog computers handle quantities based on measuring only. Consider this: A bank clerk getting the third decimal place of an interest rate wrong commits a severe error, while a tailor being off by a micrometer when taking a client&#039;s measurements has no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors which can quickly add up in iterative loops. Analog computers do not operate numerically and do not round. In this sense, the great precision of today&#039;s digital computers helps minimize a problem that is specific to digital computing. In short, representing quantities as continuous voltages (or currents), analog computers do not suffer from many problems inherent to binary value representations. While analog computer solutions, too, can exhibit instabilities, etc., the precision of THAT is perfectly appropriate for the vast majority of applications.&lt;br /&gt;
&lt;br /&gt;
== What is a minion chain? ==&lt;br /&gt;
THAT is designed to allow an extensive range of applications with a small set of calculating elements. When applications require additional calculating elements, it is possible to link multiple THATs in a &amp;quot;[[Minion|minion chain&amp;quot;]] using their &amp;quot;MASTER&amp;quot; and &amp;quot;MINION&amp;quot; ports. Connecting the MINION port of a THAT to the MASTER port of another THAT with a ribbon cable makes the first THAT the &amp;quot;master&amp;quot; and the second THAT its &amp;quot;minion&amp;quot; so they can work together and share the calculating elements of both devices in the same program. There is no limit to the number of THATs that can be linked in a minion chain.&lt;br /&gt;
&lt;br /&gt;
== 2+2 ≠ 4? ==&lt;br /&gt;
If you wonder why THAT computes something like &amp;lt;code&amp;gt;2+2 = -4&amp;lt;/code&amp;gt;, then you need to familiarize yourself with how the [[Components of The Analog Thing]] work. [[Summer]]s on analog computers are typically &#039;&#039;negating&#039;&#039;. This means they yield the negative of the sum. This is a convention and needs some getting-used-to. If you like, you can simply feed the summer&#039;s output into an [[Inverter]] to obtain the &amp;quot;correct&amp;quot; sign.&lt;br /&gt;
&lt;br /&gt;
== Are THAT&#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? ==&lt;br /&gt;
THAT&#039;s inputs are protected by supressor diodes which begin to conduct at about +-20V. It&#039;s no problem to connect an output from a +-15V circuit to THAT&#039;s inputs. But some inputs will be overloaded if the voltage exceeds about +-11.5V, because THAT&#039;s supply voltage is +-12V.&lt;br /&gt;
&lt;br /&gt;
[[Category:Manual|FAQ]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=614</id>
		<title>The Analog Thing FAQ</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=The_Analog_Thing_FAQ&amp;diff=614"/>
		<updated>2021-10-10T16:41:46Z</updated>

		<summary type="html">&lt;p&gt;MKoch: new question&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list of &#039;&#039;&#039;frequently asked questions (FAQ)&#039;&#039;&#039; about [[The Analog Thing]] (in short &#039;&#039;THAT&#039;&#039;). It&#039;s a great entry place to learn about THAT.&lt;br /&gt;
&lt;br /&gt;
== What is analog computing? ==&lt;br /&gt;
[[Analog Computer|Analog computing]] is an alternative to digital computing; ideally suited for dynamic systems modeling; ideally suited for neuromorphic AI applications; much more energy-efficient than digital computing; inherently safer than digital computing in the face of cyber threats; a great, hands-on way to learn about maths, engineering and systems; and simply an eye-opening experience.&lt;br /&gt;
&lt;br /&gt;
== What is THE ANALOG THING? ==&lt;br /&gt;
[[The Analog Thing|THE ANALOG THING]] is a high-quality, low-cost, open-source, and not-for-profit cutting-edge analog computer. You can think of it as a kind of [[Raspberry Pi]] that calculates with continuous voltages rather than with zeroes and ones.&lt;br /&gt;
&lt;br /&gt;
== What is &amp;quot;THAT&amp;quot;? ==&lt;br /&gt;
THAT is an abbreviation of [[The Analog Thing|THE ANALOG THING]].&lt;br /&gt;
&lt;br /&gt;
== Who is the team behind THAT and what is their motivation? ==&lt;br /&gt;
THAT is developed and distributed by the German tech start-up company [https://www.anabrid.com anabrid] under the brand name [https://analogparadigm.com Analog Paradigm]. Anabrid is planning to develop an analog computer on-a-chip to diversify today&#039;s digital computing monoculture with analog-digital hybrid computing. To support this initiative, anabrid uses its Analog Paradigm brand to promote the often much more efficient and safer analog computing paradigm. THAT is Analog Paradigm&#039;s response to the need for education and community activity around analog computing. In contrast to the [https://analogparadigm.com/products.html Analog Paradigm Model 1 analog computer], THAT is small, highly affordable, open-source, and not-for-profit. It is analog computing for the future, for all. Analog Paradigm welcomes community contributions to THAT hardware, accessories and documentation.&lt;br /&gt;
&lt;br /&gt;
== What can I do with THAT? ==&lt;br /&gt;
THAT is typically used to model dynamic systems, i.e., systems that change in time according to some causal relationships. Examples include including market economies, the spread of diseases, population dynamics, chemical reactions, mechanical systems, the firing of neurons, a variety of mathematical attractors, and much more. Technically, THAT solves (sets of) [[differential equation]]s by way of [[Integrator|integration]], and it produces results in the form of graphs representing relationships between dependent and independent variables. If you are not familiar with differential equations, then THAT is an excellent tool to familiarize yourself with them. You can use THAT for a variety of purposes: You can use it to predict in the natural sciences, to control in engineering, to explain in educational settings, to imitate in gaming, or you can use it for the pure joy of it. THAT can help you understand what is (models of), and it can help you bring about what should be (models for). More fundamentally, THAT allows you to explore a non-digital computational paradigm hands-on!&lt;br /&gt;
&lt;br /&gt;
== What do I need to work with THAT? ==&lt;br /&gt;
You need a set of plug cables, which is included with THAT. You also need a [[Power|USB power supply with a USB-C plug]]. Since most people have spare USB power supplies, we decided not to include one with THAT and save the extra cost. You will also need something to read the output of THAT (voltages that change over time), such as a hardware or software [[oscilloscope]]. [[Software Oscilloscopes|Software oscilloscopes]] are software programs that can run on digital desktop or laptop computers and typically read changing voltages through the [[Soundcard|sound card&#039;s audio input]] interface. Software oscilloscopes (including free and open source ones) are available for all major operating systems.&lt;br /&gt;
&lt;br /&gt;
== How does a &#039;&#039;Hello World&#039;&#039; program look like on THAT? ==&lt;br /&gt;
{{todo|write me!}}&lt;br /&gt;
&lt;br /&gt;
== Is THAT a general purpose computer? ==&lt;br /&gt;
Yes and no. The term general-purpose computer usually describes devices that can be programmed to mimic the logical procedures performed by other, comparable devices. THAT is different because it solves (sets of) differential equation(s) instead of processing logical procedures. It is a general-purpose analog computer in as far as it can solve any (set of) partial differential equation(s). In doing so, a single THAT is limited by its number of calculating elements. By connecting multiple THATs in &#039;&#039;[[Minion|minion chains]]&#039;&#039;, it is possible to implement large analog computer programs involving any number of calculating elements.&lt;br /&gt;
&lt;br /&gt;
== How can I program THAT? ==&lt;br /&gt;
Programming [[analog computer]]s is about modeling change in time. Typically, this process starts by translating change in some dynamic systems into one or more differential equations. These equations are then translated into patterns of wire connections between the analog computing elements on THAT&#039;s patch field. These patterns of wire connections are analog computer programs. When a program is run, THAT solves the programmed differential equations and outputs their solutions as time-varying voltages.&lt;br /&gt;
&lt;br /&gt;
== How can I obtain output from THAT? ==&lt;br /&gt;
THAT outputs the solutions of differential equations as time-varying voltages. In control applications, these can be used to drive actuators such as motors or valves. In lab or classroom settings, they are often visualized as graphs using [[oscilloscope]]s or [[plotter]]s. In [[hybrid computing]] (where analog and digital computers work in tandem), analog-to-digital converters and digital-to-analog converters turn time-varying voltages into digital data and vice versa. The simplest way to read the output of your THAT is to connect it to the [[Soundcard|sound card]] of a digital computer which can then be used to visualize the output using digital oscilloscope software and to record, analyze, or otherwise process it.&lt;br /&gt;
&lt;br /&gt;
== Why do the plugs not go all the way into the patch panel? ==&lt;br /&gt;
[[File:Plug depth.jpg|thumb|left|Plugs in the patch panel of THAT.]]&lt;br /&gt;
This is one of several unconventional but intentional design moves that make THAT possible and affordable. The 2&amp;amp;nbsp;mm plug cables are intended by its supplier for use with a particular kind of gold-plated socket. One of these sockets costs close to one USD. Mounting it on a printed circuit board (PCB) costs close to another USD. There are 186 plug holes on THAT&#039;s patch panel. We saved all of that cost by using an extra-thick top PCB and having appropriately-sized through-holes gold-plated. Since the top PCB is less thick than the plugs are long, and since the plugs have small, contact-assuring springs half-way along their length, there are stop-limits below each plug hole to ensure good contacts. The result looks a little unexpected, works just as well and cuts the cost of the overall device by more than half.&amp;lt;br clear=&amp;quot;all&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== With outputs varying between -10V to 10V, how can I use THAT to model quantities smaller or greater than that? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of quantities. Quantities are represented on analog computers in a voltage or current interval with fixed boundaries called the [[Machine Unit]]. On THAT, this interval is -10 V to +10 V. For the sake of simplicity, the [[Machine Unit]] is generally thought of as ± 1, regardless of the actual voltage or current interval of a given analog computer. To model arbitrary quantities on THAT, they can be scaled to make efficient use of the [[Machine Unit]]. [[Output]] can then be converted back to the original scale.&lt;br /&gt;
&lt;br /&gt;
== How can I use THAT to create useful models of very fast or very slow phenomena? ==&lt;br /&gt;
Translating patterns of change in dynamic systems into mathematical representations and further into analog computer programs commonly involves the scaling of speed. THAT allows compressing or stretching the independent variable time by several orders of magnitude. In this way, the instantaneous decay of a volatile compound can be simulated slowly enough for observation and interactive manipulation, while population dynamics occurring over decades or centuries can be simulated in the blink of an eye.&lt;br /&gt;
&lt;br /&gt;
== What calculating elements are available on THAT? ==&lt;br /&gt;
THAT is designed to allow a wide range of interesting applications with a minimal set of analog calculating elements. It offers five [[integrator]]s, four [[summer]]s, four [[inverter]]s, two [[multiplier]]s, and eight [[Coefficients/Potentiometers|coefficient potentiometers]]. In addition, it offers two [[comparator]]s, two precision [[XIR|resistor networks]] as well as [[capacitor]]s, [[diode]]s, and Zener diodes. Where more calculating elements are needed for a particular application, multiple THATs can be connected in [[minion|minion chains]].&lt;br /&gt;
&lt;br /&gt;
== How precise is THAT? ==&lt;br /&gt;
THAT is precise to about three positions after the decimal point, relative to its [[Machine Unit]]. It is important to note that comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Digital computers handle quantities based on &#039;&#039;counting&#039;&#039; (e.g., &amp;quot;how many siblings do you have?&amp;quot;) as well as quantities based on &#039;&#039;measuring&#039;&#039; (e.g., what is your body height?&amp;quot;). Most of the time, analog computers handle quantities based on measuring only. Consider this: A bank clerk getting the third decimal place of an interest rate wrong commits a severe error, while a tailor being off by a micrometer when taking a client&#039;s measurements has no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors which can quickly add up in iterative loops. Analog computers do not operate numerically and do not round. In this sense, the great precision of today&#039;s digital computers helps minimize a problem that is specific to digital computing. In short, representing quantities as continuous voltages (or currents), analog computers do not suffer from many problems inherent to binary value representations. While analog computer solutions, too, can exhibit instabilities, etc., the precision of THAT is perfectly appropriate for the vast majority of applications.&lt;br /&gt;
&lt;br /&gt;
== What is a minion chain? ==&lt;br /&gt;
THAT is designed to allow an extensive range of applications with a small set of calculating elements. When applications require additional calculating elements, it is possible to link multiple THATs in a &amp;quot;[[Minion|minion chain&amp;quot;]] using their &amp;quot;MASTER&amp;quot; and &amp;quot;MINION&amp;quot; ports. Connecting the MINION port of a THAT to the MASTER port of another THAT with a ribbon cable makes the first THAT the &amp;quot;master&amp;quot; and the second THAT its &amp;quot;minion&amp;quot; so they can work together and share the calculating elements of both devices in the same program. There is no limit to the number of THATs that can be linked in a minion chain.&lt;br /&gt;
&lt;br /&gt;
== 2+2 ≠ 4? ==&lt;br /&gt;
If you wonder why THAT computes something like &amp;lt;code&amp;gt;2+2 = -4&amp;lt;/code&amp;gt;, then you need to familiarize yourself with how the [[Components of The Analog Thing]] work. [[Summer]]s on analog computers are typically &#039;&#039;negating&#039;&#039;. This means they yield the negative of the sum. This is a convention and needs some getting-used-to. If you like, you can simply feed the summer&#039;s output into an [[Inverter]] to obtain the &amp;quot;correct&amp;quot; sign.&lt;br /&gt;
&lt;br /&gt;
== Are THAT&#039;s inputs compatible with (possibly overloaded) outputs from other analog computers with +-15V supply voltage? ==&lt;br /&gt;
{{todo|write me!}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Manual|FAQ]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Talk:Integrator&amp;diff=608</id>
		<title>Talk:Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Talk:Integrator&amp;diff=608"/>
		<updated>2021-10-06T05:50:52Z</updated>

		<summary type="html">&lt;p&gt;MKoch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Attention: Make sure the sum of your inputs does not exceed the machine unit (±10V), otherwise an overload will occur ==&lt;br /&gt;
I don&#039;t think this is correct. An overload occurs when the output exceeds the machine unit. However it should be no problem if the sum of the inputs exceeds the machine unit. {{Unsigned|MKoch}}&lt;br /&gt;
:Well, if the sum of the inputs exceeds the machine unit, the output will also do so, isn&#039;t it? You could think of cancellation of overloads (like in a sum with three inputs, two in overload but opposite sign, like &amp;lt;code&amp;gt;+15V-15V+5V = +5V&amp;lt;/code&amp;gt;). This is a border case similar to saying &amp;lt;code&amp;gt;+infinity - infinity + 5 = 5&amp;lt;/code&amp;gt;, because actually an overload value is typically an illegal value on the computer and the upcoming computation is most likely wrong. --[[User:Sven|Sven]] ([[User talk:Sven|talk]]) 13:51, 1 October 2021 (CEST)&lt;br /&gt;
::No, if the sum if the inputs exceeds the machine unit, that doesn&#039;t mean the integrator&#039;s output will exceed the machine unit. At least not immediately. Your example with +-infinity isn&#039;t applicable, because every signal comes from another output and is always in the -1 to +1 range (or slightly above).--[[User:MKoch|MKoch]] ([[User talk:MKoch|talk]]) 14:04, 1 October 2021 (CEST)&lt;br /&gt;
::When you connect a -1 signal to the input then the output will ramp from 0 to 1 in 1ms. Overload after 1ms. When you connect two -1 signals to two inputs of the same integrator, then the output will ramp from 0 to 1 in half the time. Overload after 0.5ms.--[[User:MKoch|MKoch]] ([[User talk:MKoch|talk]]) 14:15, 1 October 2021 (CEST)&lt;br /&gt;
::The integrator has three &amp;quot;1&amp;quot; inputs with 1MOhm resistance and two &amp;quot;10&amp;quot; inputs with 100kOhm resistance. If all inputs are connected to one machine unit (10V), the input current into the summing junction is 23 * 10µA = 230µA. The output of the TL074 can drive about 25mA into the summing junction (via the capacitor), that&#039;s means there is a safety factor of more than 100. We could connect many more inputs to the same summing junction and it would still work fine.--[[User:MKoch|MKoch]] ([[User talk:MKoch|talk]]) 22:15, 1 October 2021 (CEST)&lt;br /&gt;
:::Thank you for your input. From my perspective, again, these are border cases, as the computing element which outputs a saturated, or overloaded, signal, also triggers the overload signal on the whole board. That is, a LED will pop up, notifying the user that there is something wrong. I made the analogy to a floating point exception in classical digital IEE754 computing. You can instruct your algorithms to stop on such an exception, or you can deal with NaNs and infinities on a one-per-one basis. Of course one can imagine a code where such values correspond to some special, intended meaning and all this is fine. In a similar spirit, inserting an &amp;quot;overloaded&amp;quot; value into some integrator input might be fine, especially for a short time. However, at the moment, I cannot think of a computing circuit where one wants to integrate overloaded values. Do you have one?&lt;br /&gt;
:::All the best, --[[User:Sven|Sven]] ([[User talk:Sven|talk]]) 09:51, 4 October 2021 (CEST)&lt;br /&gt;
::::A simple example is the triangle wave generator. See chapter 5.5 in Bernd&#039;s book. If you want 0.2ms rise time per machine unit, then the input of the integrator must be +-5 machine units. The sum of the inputs exceeds the machine unit by a factor 5, but this is not an overload condition. Also it&#039;s not an overloaded input, because it&#039;s only +-5V connected to the &amp;quot;10&amp;quot; input.--[[User:MKoch|MKoch]] ([[User talk:MKoch|talk]]) 14:34, 4 October 2021 (CEST)&lt;br /&gt;
:::::Thank you for this example. This shows that we have a divergent definition of &#039;&#039;overload&#039;&#039;. Having an input value 0.5 on a weight-10 input is not an overload for me. Instead, an input value of 1.5 on a weight-10 input is an overload in my language. I guess there is little hope for the original sentence to be fixed without a more elaborate language or definition. That&#039;s somehow what we tried to avoid in the last months (making the wiki too complex and too tech- or science-speak), but now that we had such a long discussion, I encourage you to adopt the formulation at the page [[Integrator]] in a way that you are fine with it :-)  --[[User:Sven|Sven]] ([[User talk:Sven|talk]]) 21:16, 5 October 2021 (CEST)&lt;br /&gt;
::::::I did remove the whole sentence because the integrator has no limit for the sum of inputs. At least not in any realistic case. However the same sentence is correct for the summer.--[[User:MKoch|MKoch]] ([[User talk:MKoch|talk]]) 07:50, 6 October 2021 (CEST)&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
	<entry>
		<id>https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=607</id>
		<title>Integrator</title>
		<link rel="alternate" type="text/html" href="https://the-analog-thing.org/w/index.php?title=Integrator&amp;diff=607"/>
		<updated>2021-10-06T05:45:41Z</updated>

		<summary type="html">&lt;p&gt;MKoch: /* Basic Usage of an Integrator on The Analog Thing */ Remove warning about sum of inputs, see discussion page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Integrators&#039;&#039;&#039; are the essential building blocks of analog computers. They perform &#039;&#039;&#039;integration in time&#039;&#039;&#039;, as in &amp;lt;code&amp;gt;c = integral_0^t integrand(t&#039;) dt&#039;&amp;lt;/code&amp;gt;. [[The Analog Thing]] features five integrators. This allows computing five integrals in a program.&lt;br /&gt;
&lt;br /&gt;
Electronic analog computers typically perform integration by charging and discharging capacitors. The key difference between an integrator and a [[summer]] is the capacity in the feedback channel instead of a simple resistance. Accordingly, all integrators are also summing their inputs. For more details, please refer to [[Literature|Analog computing literature]].&lt;br /&gt;
&lt;br /&gt;
== Basic Usage of an Integrator on The Analog Thing ==&lt;br /&gt;
[[File:Integrator.png|thumb|A single integrator]]&lt;br /&gt;
&lt;br /&gt;
* Circles represent inputs, triangles represent outputs&lt;br /&gt;
* Analog integrators sum their inputs. That is, if you have a sum under your integral, you can save a single summer before the integrator. Otherwise, just put your integrand into the upper left input labeled with &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;.&lt;br /&gt;
* There are two output slots. Just use one of them as you like.&lt;br /&gt;
* The &amp;lt;code&amp;gt;IC&amp;lt;/code&amp;gt; slot stands for &#039;&#039;initial conditions&#039;&#039;. It is an input where you have to provide suitable initial conditions. As shorthands, &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+1&amp;lt;/code&amp;gt; are right to the hand. If this slot is left empty, &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; is taken as initial condition.&lt;br /&gt;
* Beginners may ignore the slots &amp;lt;code&amp;gt;SJ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt;.&lt;br /&gt;
* The time constant is 1ms (1MOhm * 1nF = 1ms). That means if you connect a &amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt; signal to the &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt; input, the output will ramp from 0 to 1 machine unit in 1ms.&lt;br /&gt;
&lt;br /&gt;
== Extended Usage of an Integrator ==&lt;br /&gt;
&lt;br /&gt;
{{todo|write this section}}&lt;br /&gt;
&lt;br /&gt;
=== Changing the integration speed ===&lt;br /&gt;
[[File:Slow-integrator.png|thumb|Internal wiring and effect of slowing down integrator.]]&lt;br /&gt;
&lt;br /&gt;
You can change the integration time scale factor &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; of a particular integrator by connecting &amp;lt;code&amp;gt;SLOW&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;OUT&amp;lt;/code&amp;gt;. This effectively decreases the &amp;lt;code&amp;gt;k0&amp;lt;/code&amp;gt; by factor 100. The circuit on the right was taken from [[:File:Anathing v1.0 base 3.pdf]].&lt;br /&gt;
&lt;br /&gt;
=== Making use of the Summing junction ===&lt;br /&gt;
See also [[XIR]].&lt;br /&gt;
&lt;br /&gt;
== Mathematics and Electronics about analog integration ==&lt;br /&gt;
On an electronical level, Integrators work quite similar to [[Summer]]s (and [[Inverter]]s, respectively), given the closed-loop operational amplifier setup. However, they feature a capacitor in the feedback channel which holds the current integration level. This makes an integrator &#039;&#039;stateful&#039;&#039; in contrast to the &#039;&#039;stateless&#039;&#039; Summers.&lt;br /&gt;
&lt;br /&gt;
In the [[THAT]] circuits, you find the integrators on page [[:File:Anathing_v1.0_base_3.pdf]]. As you can see there, they are implemented with ICs called &amp;lt;code&amp;gt;TL074H&amp;lt;/code&amp;gt;. See [https://www.ti.com/lit/ds/symlink/tl074h.pdf?ts=1628761245896&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTL074H] for the datasheet of this chip.&lt;br /&gt;
&lt;br /&gt;
{{todo|write more}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Components of The Analog Thing]]&lt;/div&gt;</summary>
		<author><name>MKoch</name></author>
	</entry>
</feed>