FIRST STEPSFIRST STEPSTHE ANALOG THING – FIRST STEPSEnglish edition, version 2.01

Copyright © 2023 anabrid GmbHThis work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. To view acopy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0 or send a letter toCreative Commons, PO Box 1866, Mountain View, CA 94042, USA.
Authors: Thomas Fischer and Bernd Ulmann
The authors gratefully acknowledge the valuable comments and suggestions they received for this booklet fromKarl-Heinz Dahlmann, Chris Giles, Lars Heimann, Dirk Killat, Michael Koch, Sven Köppel, Max Peschke, and Joost Rekveld.

Analog Paradigm, THE ANALOG THING, and the THE ANALOG THING logo are registered trademarks of anabrid GmbH.
anabrid GmbHAm Stadtpark 312167 Berlin
Germany
Phone: +49 177 5633531
Email: THAT@anabrid.com
Web: https://www.anabrid.com

Never connect this device directly to the main power line. Do not apply
voltages greater than ±12 V to this device. The application of voltages
greater than ±12 V to this device may cause damage to property,
personal injury, or death.
This device is designed for users aged 12 years and older. Users below
the age of 12 require adult supervision.

TABLE OF CONTENTS
1. Welcome.................................................................................7
2. Requirements.........................................................................7
3. What Is in the Box?................................................................7
4. What Is Analog Computing?.................................................8
5. Using THAT.............................................................................9
6. Visual Display System Setup..............................................10
		 6.1 Oscilloscope................................................................10
		 6.2 PC With Audio Input Interface..................................11
7. Features of THAT.................................................................12
8. Types of Plug Board Jacks and Their Uses.......................14
9. Applications..........................................................................15
9.1 Radioactive Decay.........................................................15
9.2 Mass-Spring-Damper System......................................16
9.3 Lunar Landing................................................................17
9.4 Neuronal Bursting.........................................................18
9.5 Euler Spiral.....................................................................19
9.6 Hunter and Prey Population Dynamics......................20
9.7 Lorenz Attractor............................................................21
9.8 Bouncing Ball.................................................................22
9.9 Polynomial Generator..................................................23
10. Helper Functions.................................................................24
10.1 Maximum of Two Values............................................24
10.2 Minimum of Two Values............................................24
10.3 Absolute Value.............................................................24
10.4 Adjustable Value −1 to +1..........................................24
10.5 Non-Negative Values Only.........................................24
11. Frequently Asked Questions..............................................25
12. Useful Resources.................................................................26
13. Further Reading...................................................................26

1. WELCOME
Computing today is a digital monoculture. At anabrid, wewant to see a comeback of analog computing and, eventually,an analog-digital hybrid computing future, because:● Analog computing is vastly more energy-efficient thandigital computing [1], promising to lower our computational CO2 footprint and energy costs significantly.
● As the exponential growth of digital computing power
described by Moore’s Law approaches its limits [2],analog-digital hybrid technology promises to sustain
growth in computer performance for decades to come.
● Analog computing may protect critical infrastructure by
reducing attack surfaces of online operational technology
and by offering failover options. [3]● Analog computing is a fascinating intellectual and artistic
activity. As a computing paradigm it is radically different
from Turing machine-type thinking, offering an excellent
way to learn about mathematics, science, and engineering. [4] It also enables creative expression when used, forinstance, in conjunction with voltage-controlled audio
synthesizers.
You are invited to join the quest to bring analog computing
back. THE ANALOG THING (or simply THAT) is here to getyou started. THAT is a high-quality, low-cost, open-source,

not-for-profit cutting-edge analog computer. It computes
with continuous voltages rather than with zeroes and ones.
Capable of solving (sets of) differential equations, it enables
the modeling of a broad range of dynamic systems. Thisbooklet offers guidance to users taking first steps with THAT,
focusing on the qualitative rather than quantitative aspectsof analog computing. We hope you find this booklet, alongwith THAT, its online resources, and its community of users
enjoyable resources in your learning inquiries and in ourshared quest to make computing more diverse!
[1] Jennifer Hasler (2016). Opportunities in physicalcomputing driven by analog realization, 2016 IEEE Int’lConference on Rebooting Computing, San Diego, CA.
[2] John L. Hennessy and David A. Patterson (2019).
Computer Architecture. A Quantitative Approach, 6thedition, Morgan Kaufmann, Cambridge, MA, p. 3.
[3] Daniel E. Geer Jr. (2018). A Rubicon, Hoover Working
Group on National Security, Technology, and Law,
Aegis Paper Series No. 1801.
[4] George F. Lang (2000). Analog was not a computer
trademark! Sound and Vibration, August 2000, 16–24.

2. REQUIREMENTS
To get started with THAT, the following items are required:● a system to display the output of THAT (time-varying
voltages). See Section 6 of this guide for options.
● a USB power supply such as a phone charger with a
USB-C plug (not included)● suitable cables and adapters to connect THAT to the
output display setup used (not included)● a set of 2 mm banana plug patch cables (included)

3. WHAT IS IN THE BOX?
THAT ships in a box that contains:● 1 power cord: USB-A to USB-C● 1 stereo RCA-to-RCA cable● 1 set (30 pcs.) 2 mm banana plug patch cables● 1 master-to-minion ribbon cable● The First Steps booklet

The box does not include:● an oscilloscope or other visual display system● a USB power supply (many people have spare ones)● BNC adapters/cables to connect THAT to an oscilloscope

For a more comprehensive details and documentation of THAT, please check https://the-analog-thing.org/docs.
For accessories, please check the THAT shop at https://shop.anabrid.com.

7

4. WHAT IS ANALOG COMPUTING?
Analog computing is one of the three computational paradigms: analog, digital, and quantum computing. Each of theseparadigms has its own strengths and weaknesses, and they differ in both their development and prevalence. Digitalcomputing is ubiquitous today, while quantum computing is in its infancy. Analog computing is tried and tested, yet has
fallen out of fashion and is largely unknown today. THAT is here to change this because analog computing offers exceptional
power efficiency and performance, both of which are much needed as the limits of Moore’s Law are approaching.
Generally speaking, analog computing is about modeling dynamic systems, i.e., systems that change over time according
to known relationships. Examples include market economies, the spread and control of diseases, population dynamics,
nutrient absorption, nuclear chain reactions, and mechanical systems. Models of dynamic systems are useful similarly to
how architectural models are useful in building design and crash test dummies are useful in car safety engineering. They
offer insights into matters that would be too difficult, laborious, expensive, or harmful to study directly. Analog computing
can serve a variety of purposes. It may help understand what is (models of), or it may help bring about what should be(models for). It may be used to explain in educational settings, to imitate in gaming, to predict in the natural sciences, andto control in engineering – or it may be pursued for the pure joy of it. Analog computing is also a great way to learn about
calculus, science, and engineering.
Analog computers are modular and analog computer “programming” is a process of translating the behavior of a given
system into patched connections between computing elements – the modules that make up an analog computer. As
intermediate steps, this process requires that temporal behavior be described mathematically in the form of differential
equations and, in turn, that these equations be converted into patch diagrams. While solutions of algebraic equations
are single values, solutions of differential equations are functions – i.e., relationships that can be presented as graphs.
Consequently, analog computers produce output in the form of (typically two-dimensional) graphs. All differential equations
can be modeled with just a few kinds of computing elements: inverters, summers, multipliers, and, crucially, integrators.
Analog computing has one of its major roots in the invention of the mechanical“disk-globe-and-cylinder” integrator. Comparable to how interlocked,
different-sized gears multiply rotation rates and can thus be seen as performing
cylindermathematical multiplication, the disk-globe-and-cylinder integrator can becseen as performing mathematical integration by computing the area under acurve in x/y space. The disk-globe-and-cylinder, shown in the figure on the left,
sphereconsists of a disk, a sphere (or globe), and a cylinder, each mounted to rotate.
Disk, sphere, and cylinder are configured with the circular surface of thedisk touching the sphere and the sphere, in turn, touching the curved surface
disk
aof the cylinder such that rotating either one of the three will, under mostcircumstances, turn the other two. In addition to its ability to rotate, the sphereb
can also be moved linearly back and forth along its rotational axis, which runs
parallel to the disk’s diameter, without ever losing contact with either disk or
cylinder. With the disk rotating at a constant rate a to mark the passage of time,the input rotation b is made to follow a curve that changes over its horizontal
time axis, moving the sphere across the diameter of the disk. The resulting
output rotation c of the cylinder is then the integral of the area under curve b.
c
By feeding the output rotation of the cylinder c back to drive the input
rotation b, the integrator can be used, in principle, to solve first-orderdifferential equations and plot their solution graphs. Two integrators in series
with the output of the second integrator fed back to drive the input of thefirst one allows a second-order differential equation to be solved, and so on.
bThis working principle of mechanical analog computers can be implemented
more efficiently using analog electronics, specifically by patching operationalaamplifiers such that they integrate their electrical inputs over time by charging
and discharging capacitors.

8

5. USING THATTHAT is an electronic analog computer designed for desktop
use to solve (sets of) differential equations. With its patch
panel instead of keyboard, mouse, and monitor, its user interface differs noticeably from those of its digital stored-program cousins. The patch panel is divided into groups of analog computing elements such as integrators, summers, andmultipliers. These are listed and explained in Section 7. Each
computing element on THAT has one or more inputs and an
output, accessible via jacks on the plug board. Input jacks
are marked with circles, and output jacks are marked withtriangles as shown below. See Section 8 for more details on
the different types of jacks on the patch panel.

input
outputTHAT is patched by connecting computing elements into
feedback circuits via patch cables – single-wire cables withbanana plugs on both ends. Note that patch cable plugs
do not insert completely into THAT’s patch panel as shownin the image below. This is explained in more detail on
page 25. Multiple patch cable plugs may be stacked in order
to connect multiple cables to the same jack.

The output of each computing element can be fed to one
or more inputs of other elements. However, an input of acomputing element may only take a single signal, such as an
output of another computing element. To solve differential
equations, chains of connected computing elements must
contain at least one closed feedback loop. Feedback around
one integrator allows first-order differential equations to besolved, feedback around two integrators allows second-order differential equations to be solved, and so on.
THAT represents quantities as time-varying voltages in arange with fixed boundaries. This range, called the machine

unit, is thought of as –1 to +1. The actual voltage range THAT
uses is –10 V to +10 V. Translating patterns of change indynamic systems into differential equations and further into
analog computer patches commonly involves the scaling ofspeed and quantities.
Scaling speed allows users to compress or stretch theindependent variable time, typically by several orders ofmagnitude, to fit patch runtimes into convenient timeframes for observation and measurement. In this way, therapid 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. Scaling quantities
is about multiplying all values occurring in a given patch
uniformly, such that the greatest value occurring in thepatch fits into and makes good use of the machine unit
interval. A model of the global human population size, forexample, representing millions of individuals, would not
involve millions of volts but be scaled to fit within –1 to +1(i.e., –10 V to +10V).
THAT outputs solutions of differential equations in theform of time-varying voltages. These can be captured by anattached digital computer for further processing, or they canbe studied visually and interactively using an oscilloscope ora similar display system. Just as single-board digital computers allow “headless” operation without a monitor, THAT
can operate without a visual display. Often, however, andespecially when taking first steps with THAT, using a visualdisplay system is advisable. Section 6 shows several options.
Once THAT is connected to a power supply and a display
system, it is ready to be patched. This typically begins withan understanding of the quantitative relationships that arepresent in some dynamic system, expressed in the formof one or more differential equations. This then guides
the development of a patching diagram that can then be
implemented on THAT’s patch panel. Quantities enter thepatch via coefficient potentiometers. These can be set at the
beginning of the patching process by connecting the inputof each potentiometer used to +1, setting the mode selector
to COEFF, selecting the potentiometer using the coefficient
selector knob, monitoring its output on the panel meter,
and turning the potentiometer knob until the desired value
is shown.
Setting THAT to OP, REP, or REPF mode will then start thepatch to compute the unknown solution(s) of the differential
equation(s) and output them as time-varying voltages that
correspond to the temporal change in the modeled dynamic
system. The most immediate way to read these solutions
and manipulate them interactively is to visualize them liveon an oscilloscope or a similar setup.

96. VISUAL DISPLAY SYSTEM SETUP
Patches running on THAT produce output in the form oftime-varying voltages at various places on the patch panel.
The most immediate way to read these solutions and manipulate them interactively is to visualize them on an oscilloscope or a similar visual display system. Up to four values
can be selected and connected to a visual display system.
This section describes several ways to set up THAT witha visual display system. These vary considerably in terms ofcapabilities and affordability. Ideally, visual display systems
used with THAT should be capable of visualizing multiple(two or ideally four) channels, frequencies of 200 kHz, andsupport x/y display mode. Less capable but more affordable
systems such as software oscilloscopes with a single
channel and a 20 kHz frequency limit offer less than ideal
yet satisfactory performance for the applications covered inthis guide.

6.1 OSCILLOSCOPE
THAT can be used with various kinds of oscilloscopes, suchas conventional cathode ray tube oscilloscopes, digital
oscilloscopes, and USB oscilloscopes in conjunction with
PCs. Connect one or more of the outputs X, Y, Z, and U on
the back of THAT directly to the inputs of the oscilloscope.
Use suitable cables such as the included RCA-to-RCA cablein combination with RCA-to-BNC adapters (not included).
Up to four channels can be connected if supported by theoscilloscope. Refer to your oscilloscope manual for setting
the display mode, channel sensitivity, and time deflection.
Connect the USB-C IN on the back of THAT to a USB power
supply using a USB-C cable.

Using a desktop oscilloscope

Using a PC with an external USB oscilloscope10

6.2 PC WITH AUDIO INPUT INTERFACE
Audio input interfaces contain capacitors thatalter signal waveforms by filtering out DC and
low frequency components. Note the difference
between the original waveform and the
waveform measured using a sound card andsoftware oscilloscope shown here:
original:

measured:As qualitative demonstrations, the applications
discussed in this guide are not seriously affectedby this.

L

IN

R

L

OUT

R

THAT can be used in conjunction with software oscilloscopes
running on PCs and taking input via audio input interfaces,such as external USB audio interfaces and standard soundcards. Connect one or two of the outputs X, Y, Z, and U on
the back of THAT to the RCA audio inputs of the audio interface using suitable cables and adapters. The RCA-to-RCA
cable included with THAT is suitable for connections to USB
audio interfaces with RCA jacks. Soundcards with a 3.5 mm
jack require cables or adapters that are not included with
THAT. The number of audio input channels available (typically two: one left and one right) determines the number ofvalues that can be monitored. Install an oscilloscope software application on the digital computer and select the audio input interface as its input device. Connect the USB-C IN
on the back of THAT to a USB power supply using a USB-C
cable.

Using a PC with an external USB audio interface

Using a PC with a soundcard

11

7. FEATURES OF THAT
1. USB-C Power In

2. MINION IN Port

3. RCA Out

4. RCA Trigger Out

5. HYBRID Port 6. MASTER OUT Port

23. Coefficients
7. Integrators
IC
1
1
1
10
10

22. Summers
1
1
1
1
10
10
10

8. Inverters

21. Comparators
9. Resistor Networks
10. Diodes

20. Multipliers

11. Output Jacks
12. Panel Meter

19. Machine Units

18. Capacitors

13. State LEDs

14. Mode Selector

17. Coefficient Potentiometers

12

16. Coefficient Selector

15. OP-Time Potentiometer1. USB-C Power In. Power input jack (the USB data pins are notused). Use a USB power supply unit such as a phone charger or any
other USB outlet with a USB-C cable.
2. MINION IN Port. When applications require more computing
elements than are available on a single THAT, multiple THATs canbe linked in a “minion chain” using their “MASTER OUT” and “MINION IN” ports. Connecting the MASTER OUT port of a THAT to the
MINION IN port of another THAT with the included ribbon cablemakes the first THAT the “master” and the second THAT its “minion.” There is no limit to the number of THATs that can be linked ina minion chain.
3. RCA Out. The four RCA jacks labeled X, Y, Z, and U provide thesignals plugged to the x, y, z, and u jacks on the patch field, attenuated to a ±1 V range, which is compatible with audio hardware suchas sound cards, allowing software oscilloscopes to be used.
4. RCA Trigger Out provides a trigger signal for oscilloscopes when
THAT is used in REP (repeat) or REPF (repeat fast) mode.
5. HYBRID Port allows THAT to be controlled from digital devices,
enabling the development of analog-digital hybrid programs. Outputs on the HYBRID Port are attenuated and shifted to 0 V to 3.3 V
to facilitate analog/digital conversion.
6. MASTER OUT Port. See 2. MINION IN Port.
7. Integrators integrate the sum of their (weighted) input values
over time. Each integrator has five inputs (two of which are weighted by factor 10) and one output via two output jacks. The IC (initialcondition) input allows the start value of an integration to be set.
Integrators change the sign of their output values implicitly.
8. Inverters yield the input value with the opposite sign.

12. Panel Meter displays values or operation times, depending on
the Mode Selector position. In COEFF mode, the output value of thecoefficient potentiometer selected using the Coefficient Selector isshown in the unit range 0 to 1. In the MINION, IC, OP, or HALT
modes, the value patched into the U OUTPUT jack is shown in theunit range –1 to 1. In REP mode, the OP TIME is shown in the 0 to
10 sec range. In REPF mode, the OP TIME is shown in the 0 to 100
ms range.
13. State LEDs display device states: OP=patch running, IC=initialcondition mode, OL=overload.
14. Mode Selector controls the operational mode of THAT: In COEFF mode, the value of the coefficient selected using the COEFFICIENT selector is displayed on the Panel Meter. In IC mode, theoutputs of the integrators are set to the values applied to their respective IC (initial condition) inputs (with the opposite sign) to set
the stage for a patch run. In OP (operate) mode, the current patch
is run. In HALT mode, integration is suspended and outputs areheld at their last values. In REP (repeat) mode, THAT repeatedly
follows a process of briefly entering IC mode, then OP mode. This
allows steady graphs to be displayed on an oscilloscope. REPF: As
REP mode, but 100 times faster. In MINION mode, THAT is controlled by another THAT that operates as the MASTER.
15. OP-Time Potentiometer sets time spent in OP mode between
0 and 10 seconds in REP (repeat) mode and between 0 to 100 milliseconds in REPF (repeat fast) mode.
16. Coefficient Selector selects the coefficient potentiometer value displayed on Panel Meter in COEFF mode.
17. Coefficient Potentiometers are used to change the values ofcoefficients (see 23. Coefficients).
18. Capacitors support various applications.
19. Machine Units provide –1 and +1 unit values.
20. Multipliers multiply values supplied to their inputs.

9. Resistor Networks can be used to add inputs to an integrator,
summer, or inverter by connecting the SJ jack of a resistor networkwith the SJ jack of the computing element.

21. Comparators allow conditional switching. If A+B>0, then the
input to > is available at the two output jacks, otherwise the input
to < is available at the two output jacks.

10. Diodes and 10 V Zener Diodes support various applications.

22. Summers add up values supplied to their inputs. Each summer
has seven inputs (three of which are weighted by factor 10) and
one output via two output jacks. Summers invert the sign of their
output values implicitly.

11. Output Jacks. Patch cable connections from any output on thepatch panel into these jacks make those outputs available at the
RCA Out ports as well as via the HYBRID port at the back of THAT,
shifted to a narrower voltage range (see 3. RCA Out above).

23. Coefficients. Input and output jacks of the Coefficient Potentiometers.

13

8. TYPES OF PLUG BOARD JACKS AND THEIR USES
This section describes the different jacks
on the plug board of THAT. As alreadymentioned in Section 5, input jacks are
input output marked with circles, and output jacks aremarked with triangles.
Jacks marked with diamond shapes
split horizontally into a white and a black
half provide machine unit values. The-1unit value −1 is provided via jacks marked
with diamond shapes whose lower halves
are black. The unit value 1 is provided via
jacks marked with diamond shapes whose+1
upper halves are black. These jacks areavailable in the machine unit section of theplug board (see Item 19 in Section 7 above)and grouped with the integrators.
1
The integrators, summers, and resistor
networks (XIR) have inputs marked withwhite circles and the number 1 and inputs
unweighted
marked with black circles and the number
10. The numbers indicate weightings, i.e.,
input
factors by which input signals are multiplied. Signals plugged to inputs marked
10with white circles and the number 1
remain unchanged. Signals plugged into
input weighted inputs marked with black circles, and thenumber 10 are multiplied by factor ten.
by factor 10
For example, a signal with the value −0.02
plugged into an input marked with a black
circle, and the number 10 will be converted
internally to the value −0.2.
IC
Each integrator has a jack marked witha white diamond shape and the label IC.
This jack is used to set the initial condition(IC) of the respective integrator, i.e., that
integrator’s (inverted − see Item 7 in
Section 7) output value at the beginning ofa patch run.
SLOW
Each integrator has a jack labeled
SLOW. Connecting an integrator’s output
to its SLOW jack, as shown in the patch
diagram on the left here, reduces theintegrator’s operating speed to 0.01 of its
regular speed. Without this connection, i.e.,at the normal operating speed, an input of−1 and a run beginning at IC=0 leads tothe (inverted) output of +1 in 1 ms. With
this connection, i.e., in the slow operationmode, the input of −1 and a run beginning
at IC=0 lead to the output of +1 in 100 ms.

14

Each integrator, summer, inverter, andresistor network (XIR) has a jack labeled
SJ, which is the abbreviation for Summing
Junction. The following two circuit diagrams
show the summing junctions between aresistor network that sums the inputs to an
operational amplifier (the core componentof integrators, summers, and inverters) as
well as in a stand-alone resistor network(XIR):

SJ

summingjunctions

The SJ jacks on integrators, summers,
and inverters allow adding further inputs
to these elements by connecting thesumming junction of a given element to thesumming junction of a resistor network.
The patch diagram on the right here shows
the addition of inputs to a summer by way
of connecting a resistor network (XIR) via
their summing junction jacks.
Each of the summers has a jack marked
with a white diamond shape and the label
FB (feedback), as well as a jack marked
with the ground symbol (�), which gives
access to THAT’s ground. In combination,these two jacks can be used to disable agiven summer’s feedback resistor, turning
it in effect to an open amplifier. For thispurpose, the FB Jack needs to be connectedto the ground (�) jack, as shown in thepatch diagram here on the right. Openamplifiers are typically used to implement
inverse functions. Combinationed with amultiplier, for example, an open amplifier
can implement a division or a square root.

FB�9. APPLICATIONSThis section presents six analog computer applications from several fields, exemplifying typical modeling workflows fromthe translation of differential equations into patch diagrams to patch panel connections and parametric exploration.

9.1 RADIOACTIVE DECAY
A minimal analog computer patch consists of an integrator whose output is fed backas its input. Imagine rotation c in the image in Section 4 being fed back to drive rotation b. Depending on the rotational direction of this feedback, c plotted over a results
in an either exponentially growing or exponentially decaying curve and thus offers amodel for phenomena with exponential dynamics. Let’s give this a try electronicallyby setting up an analog computer patch to model the decay in a radioactive sample.
Exponential decay can be described with the first-order differential equation shownhere.
.

N = −Nλdifferential equation

coefficient+1 potentiometer1

inverterλintegrator

.
N

N

N0

−N

2

coefficient
potentiometer

feedback loop.

In this equation, λ denotes the decay coefficient. Note that N in Newton’s notation isthe equivalent of dN/dt in Leibniz’s notation. To translate this equation into a patching
diagram, the Kelvin feedback technique can be used. As a first step, this techniquetypically requires arranging the equation(s) suchthat the highest derivative is isolated.
on the left side of the equal sign. Showing N isolated on is left, the equation aboveis already arranged in this way. Establishing the feedback loop required to solve theequation can now take advantage of the equality of both sides of the equation. For
this purpose, the highest derivative on the left of the equal sign is, for the time being,assumed to be known. The term on the right of the equal sign –Nλ is then modeledwith a suitable chain of computing elements. In the radioactive decay example, thisis simply an integrator connected to a potentiometer that implements the decaycoefficient. The output of this chain of computing elements, known to be equal tothe highest derivative, is then connected to the input of the first computing elementin the chain, closing the feedback loop. In the radioactive decay example, a second
potentiometer is needed to set the size of the sample at the start of the patch run(i.e., the initial condition of the integrator).
As integrators change the signs of their output, feeding an integrator’s output backto its input is sufficient to model decay (i.e., negative exponential growth). To display
diminishing positive values, however, the initial value of the integrator’s output must
be negative, and the sign of the output must be changed using an inverter. Twocoefficient potentiometers allow the initial number of molecules N0 and the decaycoefficient λ to be adjusted.
To run this patch, put THAT in COEFF mode. Plug cable connections on the patch
panel as shown in the patch diagram. Use the coefficient selector to select coefficient
potentiometers 1 and 2 in turn and set both to 0.5. Connect your display system
to RCA Out X on the back of THAT. Run the patch in REP (repeat) mode to display a
flicker-free image on the display system. As the patch runs, change coefficients 1 and
2 and observe how the graph changes. Also, adjust the OP-Time and run the patch in
REPF mode to observe how these changes affect the output.

Output: decay curve159.2 MASS-SPRING-DAMPER SYSTEM
Vehicle suspensions absorb bumps in the road to provide comfortable and safe
rides. A typical suspension system includes a spring and a damper, which support
the mass of the vehicle, its passengers, and cargo. By selecting the ideal spring anddamper settings for a given mass and impact force, suspensions systems are tuned
to a “sweet spot” called critical damping. In this condition, the suspension absorbs
as much impact energy as possible
and returns to equilibrium without+yovershooting and oscillating. Testing
suspension characteristics for varying
masses and impact forces tends
Fm
to be infeasible in the field, whichmakes analog computer modeling an–yexcellent alternative. As a first step,
this requires a description of the system of interest in the form of one ormore differential equations arrangedFsFDsuch that the highest derivative is isolated on the left of each equation. To
describe a suspension system in thisway, we start by noting that the sumof the forces exerted by mass, spring,and damper is zero at all times:–1
y0=0.5 1
.
−y

y
y

s=0.5
2
D=0.053

1 (–(Dy. + sy))
m

1
=0.5
m

4

.
–(Dy + sy)

Fm + F s + F D = 0
According to Newton’s second law of motion, Fm is mass m times acceleration a. The
force with which the damper resists movement FD is a damping coefficient D times
the speed v of its vertical displacement. The force exerted by the spring Fs is a springcoefficient s times its vertical displacement y. The speedv is the first derivative of ver.
tical displacement over time, which we denote by y, and the acceleration..a is the secondof vertical displacement over time, which.. derivative.
.. we denote by y. This yields
my + Dy + sy = 0 or, resolved for the highest derivative y:

Developing a patching diagram from this second-order differential equation
takes..
advantage of the equality of both sides of the equal sign. Assuming that y is known,
we model the term on the right of the equal sign using two integrators and feed theresulting lower derivatives, with coefficients applied and summed, back to the inputof the first integrator, as shown in the diagram on the top right.
Run the patch in REPF (repeat fast) mode at 80 ms OP-Time to view a flicker-free
image on the display system. As the patch runs, change the settings of coefficient
potentiometers 1 through 4 and observe the suspension dynamics change. This
patch also applies to damped oscillators in scenarios other than vehicle suspension
tuning, for example in earthquake safety engineering and electronic circuit design.

16

Output: displacement of an underdamped suspension

9.3 LUNAR LANDING“Houston, Tranquility Base here. The Eagle has landed.” Neil Armstrong radioed to
Houston Mission Control after landing the Apollo 11 Lunar Module on the surfaceof the Moon on July 20, 1969. Spacecraft Communicator Charles Duke replied from
Houston, “Roger, Tranquility. We copy you on the ground. You got a bunch of guys
about to turn blue. We’re breathing again. Thanks a lot!” Commander Neil Armstrong
flew the lunar landing approach in tight interaction with pilot Buzz Aldrin and theLunar Module Guidance Computer. Descending from a lunar orbit, the lander moved
on an initially near-horizontal but soon increasingly steep downward trajectory. As
lunar surface features came into view ever more clearly from lower and lower altitudes, Armstrong repeatedly used a joystick to redesignate the targeted landing site,
aiming for terrain features suitable for a safe landing.
Meanwhile, the computer ensured a steady descent rate, which Armstrong could
adjust using an (increase)-neutral-(decrease) toggle switch. Controlling the rate ofdescent in this way, Armstrong was able to trade fuel for time during which safer
landing sites could be spotted and reached. In doing so, he had to use the fuel conservatively, to ensure a safe touchdown. After Armstrong decided to fly beyond aboulder field, the lander finally touched down with less than 5 percent fuel left in its
descent stage. To make matters worse, sloshing motions of the fuel inside the tanks
caused false, even lower fuel level readings, and the computer threw up a total of fivefalse program alarms during the landing approach, turning the first manned lunar
landing into one of the most hair-raising maneuvers of NASA’s lunar program.
The analog computer patch shown here simulates the powered descent of a lunar
lander during its final approach, putting you in charge of the descent engine throttle.
A system of three differential equations models vertical velocity v under the influenceof lunar gravity g, altitude h, and fuel level F remaining from a limited initial supply.
Coefficient potentiometer 1 is your descent engine throttle. Set coefficient
potentiometers 2 through 7 to the values shown in the diagram below. Connect h to
OUT X, v to OUT Y. Connect F to OUT U to monitor the fuel level on the panel meter.
Connect your oscilloscope or other display system to RCA Out X and Y on the back of
THAT. Set the display system to “roll mode.” Run the patch in THAT’s OP mode anduse coefficient potentiometer 1 to control your descent engine’s burn rate and thrust.
Watch your altitude and vertical velocity on the display system and monitor your fuellevel on the panel meter. Touch down as gently as you can. Good luck and Godspeed!

fuel eﬃciency a = 0.5

+1

>0
<0

A

B

thrust T 0.1
–1

1

2

3

4

0.05 0.05
gravity g–1

Output: spacecraft altitude and vertical velocityv(t) = ∫ (g – T) dt

h(t) = ∫ v dt + h(0)fuel level F

F(t) = F(0) – ∫ αT dt

5vertical velocity v

>0

A

6

<0

–1

0.05 0.05
7

altitude h
SJ

B

17

9.4 NEURONAL BURSTING
to Iext. The variables x, y, and z correspond to the neuron’s(bursting) output potential, the transport of sodium andpotassium through fast ion channels, and the transport ofother ions through slow channels, respectively.
To add a 10-weighted input to the first (red) integrator,
a resistor network is connected to its summing junction (SJ)
jack. To operate the second (blue) integrator more slowly
than the other two, its output is patched to its SLOW jack.
Set the coefficient potentiometers to the values shown in
the patching diagram. Connect x (the output of the inverter)
to OUT X and connect your oscilloscope or other display system to RCA Out X on the back of THAT. If more channels areavailable on your visual display system, connect y and -z accordingly. Run the patch in OP mode and observe the image
on the display system while connecting and disconnecting
Iext to and from +1.

Neurons in the central nervous system receive nerve impulses from other “upstream” neurons and, if such inputs
exceed their firing thresholds, give off nerve impulses to“downstream” neurons. Computationally speaking, the aggregation of incoming nerve impulses (also referred to assummation) is a process of integration, albeit within a limited time window, such that incoming impulses soon expire,and only the most recent ones carry weight in the integration as time passes. A few sporadic impulses are usually
not enough to exceed the firing threshold. Instead, it takes
either multiple upstream neurons to fire together at leastnear-simultaneously, or a single upstream neuron to send
multiple impulses in short bursts. James L. Hindmarsh and
R. Malcolm Rose proposed a model for this neuronal bursting in 1984. The model, consisting of the three first-orderdifferential equations shown below, responds to inputs

1

b=0.6
–1

2

c=0.066

7

a=0.4

–1

+1

κ0 = 1031010

Iext= +1810

d=0.133

κ0 = 103–zx100r=0.1

5 100rs=0.4

0.75

3

10

y

4
+1
100rsxr=0.32
κ0 = 1018

6+1

Output: neuronal burst pattern9.5 EULER SPIRALThe Euler spiral is defined as a curve whose curvature increases linearly with its length. With the sign of its curvature following the sign of its length, the Euler spiral takes the shape of a double spiral with point-symmetry around the origin. Besides
its visual appeal, the Euler spiral can be used to design smooth transitions between straight lines and circular arcs in two
dimensions, which has practical value in several fields. An obvious and immediate application area is graphic design. The
design of typography, in particular, requires numerous smooth transitions between straight and circular line segments.
Another application area is road and rail traffic network design. To appreciate the benefits the Euler spiral offers in thisarea, imagine, as an alternative, the immediate tangential connection between straight and circular road segments. This
would require motorists to change steering radii instantaneously, which is not onlyTphysically impossible but uncomfortable and dangerous to attempt. For similar reasons, the Euler spiral is used to generate movement paths in high-speed machinery
t2 dtx(t) = cos ―and robotics. It has also been found to offer a good description of the curvature of20
rat whiskers.
To display the Euler spiral, a display system capable of visualizing two channels
Tin x/y mode is required. Set the coefficient potentiometers 1 through 5 to the values
t2 dt
shown in the patching diagram. Connect x (the output of the inverter shown in bluey(t) = sin ―in the patching diagram) to OUT X and connect y (the output of the inverter shown
2
0
in green in the patch diagram) to OUT Y. Connect your oscilloscope or other display
system to RCA Out X and Y on the back of THAT. Set the display system to x/y modeand run the patch in REPF (repeat fast) mode. Vary the settings of the coefficient
potentiometers 1 through 5 as well as the OP-Time potentiometer and observe thechanging image on the display system.

∫

( )

∫

( )

+1
3
+1

0.87
x

0.6
2

10

10

+1
+1
–1

0.1
1

4

0.75

5 0.6
y

Output: Euler spiral199.6 HUNTER PREY POPULATION DYNAMICS
How do the population sizes of hunter and prey species interact? An initial quantitative insight into this question was found in the early 20th century in the trading
records of the Hudson’s Bay Company, a Canadian-based fur trading business at
the time. The company recorded the numbers of lynx and snowshoe hare pelts itbought from trappers, thereby creating an indicative historical documentation of thechanging sizes of Canadian lynx and snowshoe hare populations. These records – the1845 to 1935 data is shown in on the right – reveal a curious pattern of periodic andtemporally related increases and decreases in both population sizes.
As the lynx prey almost exclusively on the snowshoe hare, it was unsurprising
to see the size of the hare population affected by the size of the lynx population.
It seemed puzzling, however, that the size of the lynx population also seemed tobe affected by the size of the hare population, leading some to ask: “Do hare eat
lynx?” An explanation for these predator-prey population dynamics was proposed
independently by Alfred J. Lotka in 1925 and Vito Volterra in 1926 in the form of thefollowing two first-order differential equations:

hare
lynx

+1

Variable h refers to the size of the hare population, while variable α refers to thegrowth rate of the hare population (based on their consumption of plant life, which isassumed to be abundantly available in the environment). Variable l refers to the sizeof the lynx population, and variable δ refers to the growth rate of the lynx population(based on their consumption of the changing hare population). The natural death
rate of lynx is denoted by variable γ, and the rate at which hare are killed by lynx isdenoted by variable β. As it turns out, hare do, of course, not eat lynx, but an excessively large lynx population will overhunt the hare population, thereby depleting thelynx’s food source, which, in turn leads to a decimation of the lynx population.
To display the changing population sizesof both the predator and the prey species
simultaneously, a visual display system capable of visualizing at least two channels is
required. Set the coefficient potentiometers
1 through 6 to the values shown in the patch
diagram on the right. Set THAT to OP modeand your visual display system to "roll mode.”
To explore the dynamics of both interacting
populations further, change the settingsof coefficient potentiometers 1 through 6
interactively as the patch runs. If possible,
also try visualizing the output in x/y mode on
your display system. The result is a so-calledphase-space plot for the modeled predator
prey relationship. This patch can be used
to model competitive relationships beyond
ecological systems, for example in economic
systems and communicable diseases.

20

1 h0=0.6h
α=0.36545
β=0.952

γ=0.09+1
3 0=0.6

6
δ=0.84

Output: changing population sizes

9.7 LORENZ ATTRACTOR
Until the mid-20th century, it was generally thought that the accuracy of model-based
predictions depended entirely on the quality of the models used and the accuracyof their input data. Consequently, feeding roughly accurate input into a good model
was assumed to yield roughly accurate output. This assumption was challenged in1961 when Edward Norton Lorenz tested a weather model described by a set of
coupled differential equations.
Having run the model (on a digital computer) and reviewed an output plot,
Lorenz decided to produce a more extended plot by running it again with the same
input data for a longer duration. He restarted the model and went for a cup of coffee.
Upon his return, Lorenz found a surprise: Initially, the new plot resembled the firstplot closely, but it soon deviated and took on a distinctly different shape, as shownon the top right of this page. The first program run read an input value of 0.506127
from the computer’s memory. Lorenz entered this value manually for the second run,reading it from the first plot, which showed it
rounded to three places: 0.506. This deviationof less than of one part in a thousand caused
the two plots to soon take on rather different
shapes. Instead of attributing the difference
between the two plots to a glitch, and despite
his weather model being rather simplistic,
Lorenz realized that the dissimilar plots exemplified why it is so difficult to predict theweather and complex dynamic systems ingeneral. In such systems, tiny differences inearlier states can lead to vast changes in later
states: the butterfly effect!
Lorenz’s model is one of many chaotic(or “strange”) attractors that have since
been found. You can implement it on THAT,
as shown in the diagrams on this page. To
visualize the characteristic three-dimensional
pattern of the Lorenz Attractor, switch yourdisplay system to x/y mode and visualize any
two of the values x, y, and z marked below.

–x = – ∫1.8y – x dt + C–z = – ∫1.5xy – 0.2667z dt
s = – (1 – 2.68z)
r = – xs–y = – ∫1.536r – 0.1y dt

+1
–x
0.15

10

2
1

0.18

–y

xy

–z

4

10

+1

s

r

5

0.2667

Output in the z/x plane: front view

–y

10

3
y

Output in the x/y plane: top view

0.15360.268

10Data plots of Lorenz’s two program runs
with near-identical initial coefficients

0.1

6Output in the z/y plane: side view21

9.8 BOUNCING BALLAs an archetypal theme in computational physics simulation, game and demo
development, and programming education, bouncing balls occupy a special placein the history and culture of computing. Here, we simulate the motion path of abouncing ball dropping in a two-dimensional “box” with machine unit width andheight, taking into account gravity and drag due to air resistance.
Assuming the horizontal x and the vertical y components of the ball’s movig position to be independent from one another, these can be computed by two seperate
circuits. The circuit computing the x-component of the ball’s position (shown on theleft below) changes the ball’s horizontal direction each time the ball hits either the leftor the right wall of the box. Its horizontal position is obtained by the second (green)
integrator, which begins on the left of the screen (IC=+1) and integrates over the ball’s
velocity v, which, in turn, is decreased linearly over time by the first (red) integrator.

A
–1
+1

>0

1

A

B

>0
<0

4

<0

B

–1

+1
–1

–1

+1

v = 0.36

10x

The y-component of the ball’s position is that of a free-falling object bouncing backelastically when hitting the floor. It is computed by the circuit shown in the diagramon the right above and can be described with the following differential equation:..
.
y = –g + dy–c(y – 1)

if y > 1+c(–y – 1)

if y < 1

The term on the left of this equation describes the ball’s free fall under the influenceof gravity g and drag d due to air resistance. The two conditions shown on the right ofthis equation are satisfied when the ball hits either the floor or the ceiling of the box,
respectively. Beginning its fall at the ceiling (IC=−1 at the fourth, red integrator) andthen losing energy due to drag, the ball will not reach the ceiling again, such that thelower condition on the right of the formula will never be satisfied. The upper condition, however, will be satisfied repeatedly each time the ball hits the floor. The Zener
diode becomes conductive at that instant and momentarily adds upwards velocity
to the third (green) integrator. Connect the TRIG output of THAT with the external
trigger input of your oscilloscope (if available) and run the analog computer in REPF
(repeat fast) mode.

22

10

3

g = 0.162∆vx = 0.11

d = 0.2

10
SJy9.9 POLYNOMIAL GENERATOR
Polynomials are a family of functions that are sums of power functions. Their graphs
are smooth, differentiable curves without discontinuities such as gaps, or sharp
turns. A polynomial whose highest power is three is called a cubic polynomial. Its
general form is:p(x) = ax3 + bx2 + cx + d
Choosing suitable degrees of polynomials and manipulating their coefficients (a,b, c, and d in the above example) allows approximating a wide variety of smoothgraphs within certain value ranges. This process is useful in numerous scientific andengineering contexts and beyond. For example, it allows modeling smooth motion
paths in robotics, interpolating sampled or otherwise incomplete data, reconstituting
noisy signals, and synthesizing various timbres of sound.
Polynomial functions can relate to analog computing in two basic ways. They canbe used to feed varying inputs into analog computer programs, or, as solutions ofdifferential equations solved using analog computers, they can be outputs of analog
computer programs. Here, we focus on the second scenario and program a polynomial
generator – a utility for the flexible modeling of arbitrary cubic polynomials, with thevalues of a, b, c, d as well as the polynomial being restricted to the machine unit
interval −1 to +1.
The wiring of the coefficient potentiometers 2 through 5 corresponds to thehelper function described in Section 10.4, allowing to set the values of a, b, c, and dwithin the entire machine unit range of −1 to +1. Connect the TRIG output of THAT
with the external trigger input of your oscilloscope (if available) and run the analog
computer in REPF (repeat fast) mode.
+1

+1

τ
–1

–x2

x3

+1

Output: basic term for x3

d 2

3
–x
–1

Output: basic term for x2

+1

x

1

Output: basic term for x

cx

c

bx2

b
4

a

5

–x3
ax3

p(x)
p(x) = −0.3x3 + 0.4x2 + 0.7x + 0.1

23

10. HELPER FUNCTIONSThis section presents five helper functions that allow shaping values in various analog computer applications. Besides theirutility in larger applications, these helper functions also make for good beginner’s exercises − each standing alone or invarious combinations. The five circuit diagrams shown here correspond to the setups in the two patch diagrams using thesame cable colors.

10.1 MAXIMUM OF TWO VALUESThis function takes two input values A and B and gives as its
output whichever of the two input values is greater.
out = max(A, B)

A
B

A

>0
<0

B

10.2 MINIMUM OF TWO VALUESThis function also takes two input values A and B. As its output, it gives whichever of the two input values is smaller.

AB

out = min(A, B)

A

>0
<0

B

10.3 ABSOLUTE VALUEThis function takes one input value A and gives as its output
the absolute value of A. In other words, it gives A when A
is positive, the positive value of A when A is negative and 0
when A is 0.
out = abs(A)

A

A

>0
<0

B

10.4 ADJUSTABLE VALUE -1 to +1

While the conection of a coefficient potentiometer to themachine units supply gives an adjustable value in a range ofeither −1 to 0 or 0 to +1, this function offers an adjustablevalue within the entire machine unit range of −1 to +1.

+1
–1

1
1
1

out = –1...+1

10.5 NON-NEGATIVE VALUES ONLYThis function takes one input value A and gives as its output
A when A is greater than 0. Otherwise, it gives 0.
out = A if A>0
out = 0 if A≤0

24

A

>0
<0

A

B

11. FREQUENTLY ASKED QUESTIONSIs THAT a general-purpose computer?
Yes and no. The term general-purpose computer is commonlyused to describe digital stored-program computers that can
execute arbitrary algorithms. While THAT does not belong
in this category, it is a general-purpose analog computer inthat it can solve any (set of) differential equation(s) within themeans of its computing elements. By connecting multiple
THATs in master/minion chains, it is possible to implement
arbitrarily large analog computer patches involving any
number of computing elements.

THAT is switched on, but the display is blank. Why?
This can happen when one or more patch connections
create short circuits. Ensure that none of the outputs ofcomputing elements are connected to ground or each otherand that the +1 signal is not connected to ground (�).

Why do the plugs not go fully into the patch panel?
The 2 mm plug cables were originally designed to plug
entirely into a corresponding type of gold-plated socket.
One of these sockets plus mounting costs about USD 1.00,
which would add up significantly for the 186 plug positions
on THAT’s patch panel. We saved most of this cost by using
an extra-thick top circuit board with appropriately-sized,
gold-plated through-holes. Since the length of the plugs isgreater than the thickness of the circuit board, we placed
stop-limits below the patch field to ensure that the small,contact-assuring springs halfway along the length of eachplug make reliable contact.

If THAT is powered by USB, i.e., by 5 V−, then how is it
possible that its machine unit is physically ±10 V?
Powered via a USB-C socket, THAT is indeed supplied with
5 V− in the first instance. The relatively bulky, cuboid-shaped
component near to the USB-C socket on the upper left of
THAT’s base PCB, is a DC/DC converter, which turns a 4.5 V−
to 5.5 V− input into a ±12 V output. This output powers all
the main functions of THAT, allowing its ±10 V machine unit.

How precise is THAT compared to a digital computer?
THAT is precise to about two positions after the decimal
point, relative to its machine unit (±1). Comparing the precision of analog and digital computers is a bit like comparing apples and oranges. Analog computers usually handle
quantities based on measuring only (“What is your bodyheight?”). Digital computers, however, also handle quantities based on counting (“How many siblings do you have?”),which requires strict numerical precision. 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
few micrometers when taking a client’s measurements has
no such problem. Furthermore, numerical digital computing involves rounding, and hence rounding errors, which
can add up quickly in iterative loops. Analog computers do
not operate numerically and do not round. In this sense, thegreat precision of today’s digital computers helps minimize a
problem that is specific primarily to digital computing. Representing quantities as continuous voltages, THAT does not
suffer from many issues that are inherent to binary value
representations. While analog computer solutions can be affected by noise and instabilities, the precision of THAT is perfectly appropriate for most analog computer applications.

The integrators run into overload too quickly. Why?
This can happen when there are conductive fingerprints or
dirt on the patch panel. Gently cleaning the panel should
resolve the issue.

With outputs varying between −10 V to 10 V, how can
THAT model smaller or greater quantities?
Translating patterns of change in dynamic systems into
mathematical representations and further into analog
computer programs commonly involves the scaling ofquantities. 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 thoughtof 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 theoriginal scale.
How can I use THAT to create useful models of very fastor very slow phenomena?
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 rapid 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.

25

12. USEFUL RESOURCES
Various resources are available to make your explorations and use of THAT enjoyable and rewarding. Here are several
related web and social media references. These will help you stay up-to-date with all things THAT and get in touch withother members of the analog computing community.
THAT Online

Social Media● THE ANALOG THING:● THAT on Facebook:● Analog Paradigm:● Analog Paradigm on Twitter:● anabrid GmbH:● anabrid GmbH on LinkedIn:● THAT Shop:● THAT Open Hardware on GitHub:

https://the-analog-thing.org
https://analogparadigm.com
https://www.anabrid.com
https://shop.anabrid.com

https://www.facebook.com/groups/theanalogthinghttps://twitter.com/analogparadigm
https://www.linkedin.com/company/anabrid
https://github.com/anabrid/the-analog-thing

Sometimes, when we are out and about, when there is no THAT at hand, or as a matter of personal preference, it can be
useful to have a way to think through analog programming projects on paper before implementing them. For this purpose,
you can download a printable paper template from the THAT website at this URL:
https://the-analog-thing.org/THAT_template.pdf

13. FURTHER READING
Books

Online● Bernd Ulmann (2023). Analog and Hybrid Computer Programming, DeGruyter, Berlin.
● Bernd Ulmann (2023). Analog Computing, Oldenbourg
Wissenschaftsverlag, Munich.
● Bruce J. MacLennan (2012). Analog Computation. In:
Meyers Robert A., ed., Computational Complexity. Theory,
Techniques and Applications, Springer, New York, pp. 151–
184.
● Charles Care (2010). Technology for Modelling. Electrical
Analogies, Engineering Practice, and the Development of
Analogue Computing, Springer, London.
● James S. Small (2001). The Analogue Alternative. The
Electronic Analogue Computer in Britain and the USA, 1930–
1975, Routledge, London and New York.

● THE ANALOG THING online documentation:

26

https://the-analog-thing.org/docs/dirhtml● Thomas Fischer (2021). The Analog Way to Compute:
https://medium.com/@7f15ch3r/b8a2ca4a762d● Charles Platt (2023). The Unbelievable Zombie Comebackof Analog Computing, WIRED:
https://www.wired.com/story/unbelievable-zombie-comeback-analog-computing● Veritasium (2022). Future Computers Will Be RadicallyDifferent (Analog Computing):
https://youtu.be/GVsUOuSjvcg