How Do Analog Computers Handle Complex Computations?

In summary, analog computers are programmable circuits that use analog signals to perform operations like addition and subtraction through amplifiers. However, unlike digital information, storing analog signals would require an infinite amount of bits. There are different types of analog computers, including electrical and mechanical ones, and they are well-suited for representing situations described by differential equations. They do not have traditional memory like digital computers, but information can be stored temporarily using capacitors. Nowadays, analog computers have been incorporated into signal processing chips and can also utilize newer technologies like memristors for storage.
  • #1
Avichal
295
0
I don't know if analog computers exist or not but if they were to be made, how would they work?
I have idea of how digital computers work, how memory, processor etc. work.

With analog signals, you can perhaps do basic operations like addition, subtraction using amplifiers but how about storing them? Unlike digital information, you will need an infinite amount of bits to store it.
Surely, there must be other ways. Any idea?
 
Computer science news on Phys.org
  • #2
Avichal said:
Any idea?

Yes, I have an idea. How about you do at least a trivial amount of research on your own. Google search will point you immediately to articles on analog computers. Read a few and if there are confusing things, come back and ask specific questions. This is likely to give you more targeted information, since your post above is very general and basically asks us to write you a textbook on analog computers.
 
  • #3
phinds said:
Yes, I have an idea. How about you do at least a trivial amount of research on your own. Google search will point you immediately to articles on analog computers. Read a few and if there are confusing things, come back and ask specific questions. This is likely to give you more targeted information, since your post above is very general and basically asks us to write you a textbook on analog computers.

True, I was trying to avoid reading about analog computers. I googled and didn't get any straight-forward answer. I hoped to get it here but it seems it's a rather general question with not so easy answer. I'll try to read about analog computers then.
 
  • #4
A "classic" electrical analog computer is basically a programmable circuit with a range of voltage and accuracy, for example from -100 volts to +100 volts with an optional digital readout perhaps to the nearest 1/10th of a volt, and attached to an oscilloscope like crt for display. Key components are the op amps which integrate (sum) voltage inputs over time.

A typical circuit could be used to implement an ordinary differential equation, or perhaps a second order using feedback into integrators. There's also the ability to set the initial voltage state.

For a cosine wave, the circuit would be [itex]\ddot x = -x[/itex], meaning that the second derivative input is set to -x output. These would be connectors on the analog computer plug board type front panel with connections made by pluging in wires, and the initial voltage would be set to some non-zero value v0. The analog computer's circuit voltage would ideally oscillate between +v0 and -v0. The frequency would depend on the analog computers effective rate of integration.

There were(are?) also mechanical analog computers that used(/use?) cables, cams, gears, pulleys, spinning discs, ... in order to perform similar differential equation type operations.

Wiki article, directed to electrical analog computer section, includes this statement:

Analog computers are especially well-suited to representing situations described by differential equations.

wiki_electronic_analog_computers.htm
 
Last edited:
  • #5
rcgldr said:
Key components are the op amps which integrate (sum) voltage inputs over time.
I forgot to mention that the op amps that perform integration (summation over time) use feedback from capicitors. It's the capacitor feedback (basically a resistor - capacitor circuit) that performs the integration, since the voltage on the capacitor would be a function of input voltage and time. The op-amps without capacitor feedback would be used for normal voltage addition or subtraction (no time factor other than the response time of the op-amps).
 
  • #6
Yes, I studied how analog computers would do operations like addition, subtraction, multiplication and more complicated ones.

What I don't understand is the memory part. How would they store information? Using digital logic, you only have to store 1 or a 0 but using analog I have no idea how you would store any information
 
  • #7
You "input the program" by physically connecting the various parts of the computer as required, adjusting variable components like potentiometers to set the value of constants, etc.

The simulation runs in real time (but not necessarily the same time-scale as the physical process you are modeling). You get the output as a trace on an oscilloscope, a line on a pen plotter, or whatever.

Apart from that, there is no "memory" involved.

For example in real life, the solar system doesn't have any "memory" of what it has to do to make the planets orbit the sun. An analog computer model of the solar system doesn't have any "memory" either. You set up some initial conditions, start it running, and it does whatever it does, in real time.
 
  • #8
Sure there is "memory" in an analog computer in a sense. You can store a voltage on a capacitor for a short time (depending on the leakage of the capacitor). This "analog memory" is the very basis of switched-capacitor circuits which are in widespread use for signal processing inside integrated circuits. My current project is a pipelined analog-to-digital converter that has an analog memory circuit in each stage because it does its internal signal processing in the discrete-time domain.

In some sense very simple analog computers have been subsumed into front-ends of signal processing chips. You would be hard-pressed to find a stand-alone analog computer these days.

As an interesting aside regarding the "memory", up until maybe 10 years ago hard disk read channels and Ethernet transceivers regularly used analog equalizers on the front end to detect the bits. One approach was to implement a finite impulse response feedforward filter (with either a slicer or decision feedback equalizer on the back end). These were discrete time, so analog memory was essential! Cool stuff.
 
  • #10
It's been decades since I operated an analog computer.
The one I remember the most was similar to a "pong" game.
Two oscillators, 90 degrees out of phase and operating at about 100 Hz would be used to trace out the image of the ball on the oscilloscope.

One potentiometer controlled gravity. Gravity was integrated to produce velocity (voltage at a capacitor) and then vertical position - which was then added to the vertical trace of the ball.

When the ball reached the floor or either wall, it flattened and bounced. Another potentiometer controlled the elasticity of the collision.

Reducing gravity would allow the ball to reach higher positions. Turning the gravity up while the ball was high would cause it to speed toward the floor. It was easy to get the ball well over the top of the oscilloscope. Too high and you would trip a circuit breaker and have to start over.
 
  • #11
Avichal said:
Yes, I studied how analog computers would do operations like addition, subtraction, multiplication and more complicated ones.

What I don't understand is the memory part. How would they store information? Using digital logic, you only have to store 1 or a 0 but using analog I have no idea how you would store any information

Capacitors can store information.
Inductors can briefly delay information for use in continuous analog calculations.
Analog sample and hold devices can lock to a voltage when triggered.
 
  • #12
There were a lot of analog computers in airplane flight controls and flight simulators 30-40 years ago. They were the only way to do real-time simulation involving equations of motion. They were also the only way to do the more complicated flight controls that were being developed then.
 
  • #13
Avichal said:
I don't know if analog computers exist or not but if they were to be made, how would they work?
I have idea of how digital computers work, how memory, processor etc. work.

With analog signals, you can perhaps do basic operations like addition, subtraction using amplifiers but how about storing them? Unlike digital information, you will need an infinite amount of bits to store it.
Surely, there must be other ways. Any idea?
Basically, an analog computer consists of:

  1. Signal generators(sine wave oscillators and noise sources)
  2. Operational amplifiers
  3. Active/op-amp filters

They were developed in the 1950s as a tool for solving numerical problems involving non-linear dynamical systems but entirely analog computers were phases out in the early 80s with the advent of supercomputers(which are less efficient as they have power consumption in the megawatts and generate copious amounts of waste heat).

Analog computers are still in use. One usage for them is in regulated power supplies. And analog computer ICs have made a resurgence due to their usefulness in solving problems that involve statistical computations(including pattern recognition), like the Lyric semiconductor probability chip.They were never intended to be a substitute for digital computers but to be used as a tool for solving computational problems which can exhaust the memory of a digital computer due to excessive variables.
 
  • #14
BTW program storage is not hard on an analog computer. For early analog computers the "program" was embodied in the patch cord configuration and this was stored by writing down the configuration on a piece of paper. For a modern analog computer (eg internal to an ADC), the configuration is either fixed or changed digitally by driving switches.

Short term data storage is more difficult and is almost always done by storing charge proportional to some desired value on a capacitor. Long term storage isn't really possible in the modern sense. Values could be written on paper using a pen recorder or xy plotter. This value could the be used as an initial condition sometime in the future.
 
Last edited by a moderator:
  • #15
analogdesign said:
program storage is not hard on an analog computer. For early analog computers the "program" was embodied in the patch cord configuration and this was stored by writing down the configuration on a piece of paper.
We used to have large removable patch panels (about 3 ft x 3 ft) with a spaghetti of wires several inches thick. We would store them and swap them out for each program. They were hard for one person to handle.
Short term data storage is more difficult and is almost always done by storing charge proportional to some desired value on a capacitor.
A sample and hold circuit can retain the value on the capacitor for some time, but I assume there would be some drift rate.

On another subject, one of the main advantages of analog computers is its ability to handle frequency-related calculations that are harder for digital computers. Much of control analysis is frequency oriented. The analog computer can manipulate frequency content (delay, amplify, attenuate) without having to retain "memory".
 
  • #16
FactChecker said:
On another subject, one of the main advantages of analog computers is its ability to handle frequency-related calculations that are harder for digital computers. Much of control analysis is frequency oriented. The analog computer can manipulate frequency content (delay, amplify, attenuate) without having to retain "memory".

That's true, but it really doesn't make that much difference anymore. Analog computers are more efficient than digital in the type of computations you describe but digital techniques are so much faster and easier and more accurate that everyone now uses a digital computer to "simulate the simulations". I still design small single-function analog computers that integrate, differentiate, add, etc for the front end of systems where the power, area, and noise overhead of an ADC doesn't make sense. Analog preprocessing can reduce the requirements on the following ADC so it still does make a lot of sense in a lot of cases.
 
  • #17
analogdesign said:
That's true, but it really doesn't make that much difference anymore. Analog computers are more efficient than digital in the type of computations you describe but digital techniques are so much faster and easier and more accurate that everyone now uses a digital computer to "simulate the simulations".
It does make a difference. Modern fighter airplanes use digital computers, but many had trouble getting the calculations done at the rate desired. Suppose a flight control runs at 50 Hz. At 10 samples per cycle, that would only handle frequencies of 5 Hz with a lot of amplitude and phase uncertainty. Analog computers easily handle frequencies 100 times higher than that. The current digital solution is to design systems with separate digital processors to handle the high frequencies. They have a minimal computational load so they can run at high frames per second. But that adds a lot of complexity, redundancy, fault checking and signal voting. And those digital computers need to run in hard real time. That forces constraints on their design.
 

1. How do analog computers differ from digital computers?

Analog computers use continuous signals and physical quantities to represent and manipulate data, while digital computers use discrete values and binary code. This means that analog computers are better suited for solving complex equations and simulating physical systems, while digital computers excel at processing and storing large amounts of data.

2. How do analog computers perform calculations?

Analog computers use electronic or mechanical components, such as resistors, capacitors, and gears, to manipulate analog signals in real-time. These signals are continuously varying and can represent physical quantities such as voltage, current, or position. By combining and manipulating these signals, analog computers can perform calculations and solve equations.

3. What are the advantages of using analog computers?

Analog computers are faster and more efficient than digital computers when solving differential equations and simulating physical systems. They also have the ability to handle continuous data, making them ideal for real-time applications such as control systems and simulations. Additionally, analog computers are less prone to errors and can operate without the need for complex programming or software.

4. What are the limitations of analog computers?

One of the main limitations of analog computers is their lack of flexibility and inability to store data. They are also less precise and accurate than digital computers, as their calculations are influenced by factors such as temperature, noise, and component tolerances. This makes them unsuitable for tasks that require high levels of precision and accuracy.

5. Are analog computers still used today?

Yes, analog computers are still used today in specialized applications such as aerospace engineering, weather forecasting, and control systems. They are also used in research and development to model and simulate complex physical systems. However, digital computers have become more prevalent due to advancements in technology and their ability to handle larger and more diverse datasets.

Similar threads

  • Computing and Technology
Replies
13
Views
2K
Replies
26
Views
2K
Replies
1
Views
770
  • Programming and Computer Science
Replies
10
Views
2K
  • Programming and Computer Science
Replies
2
Views
2K
Replies
19
Views
2K
Replies
9
Views
1K
  • Computing and Technology
Replies
4
Views
2K
  • Programming and Computer Science
Replies
3
Views
1K
  • Programming and Computer Science
Replies
29
Views
2K
Back
Top