# Circuit Theory/Analog Computer
## Goal

Design an analog computer that generates a solution to this differential equation:
    $a_{2}{d^{2}v(t) \over dt^{2}}+a_{1}{dv(t) \over dt}+a_{o}v(t)=f(t)$
    f(t) is the input, the bump the car is going over
    v(t) is the output, the vertical motion of the car in response to the bump
    a$_2$ is related to the spring constant of a shock absorber
    a$_1$ is related to the damping coefficient and viscosity of the oil
    a$_o$ is varied depending upon the desired ride
    The goal is to vary a$_2$, a$_1$, and a$_o$ electronically, rather than build many models physically. This is modeling as done before WWII instead of using matlab or similar software.
    Modern applications of this include control systems (opening and closing valves in an industrial process, turning off and on motors, controlling a nuclear power plant).

## Organizing

At first glance, need 6 op-amps, 2 for differentiation, 3 for scaling, 1 for adding.
But the adder can do scaling also.
Need to think about the overall circuit design too. The desired output is v(t). The function f(t) is an input. The derivatives are temporary values that are built from the output being feed back. So the math is going to look something like this:
    ${\frac {a_{2}}{a_{o}}}{d^{2}v(t) \over dt^{2}}+{\frac {a_{1}}{a_{o}}}{dv(t) \over dt}-{\frac {1}{a_{o}}}f(t)=v(t)$
Need to feed the output back into the input also ... and will take first derivative, then second, then feed into the adder with f(t). So the math would look more like this:
    $-(-{\frac {a_{1}}{a_{o}}}{dv(t) \over dt}-{\frac {a_{2}}{a_{o}}}{d^{2}v(t) \over dt^{2}}+{\frac {1}{a_{o}}}f(t))=v(t)$
* this takes the input and differentiates it so output is $-{dv(t) \over dt}$
* this takes output of the first derivative which is negative and makes it positive again, so the second derivative will be negative also
* this generates the second derivative ${d^{2}v(t) \over dt^{2}}$ which is now negative like the first derivative
* this will take the negative ${dv(t) \over dt}$ and the negative (because was inverted) $-{d^{2}v(t) \over dt^{2}}$ terms and adds them to a positive f(t), scaling appropriately to generate $v(t)$

## Simulating

Assume the output of OA4 is v(t).
Then the output of OA1 is:
    $-R_{1}C_{1}{dv(t) \over dt}$
The output of OA2 is:
    $-{\frac {R_{3}}{R_{2}}}(-R_{1}C_{1}{dv(t) \over dt})={\frac {R_{3}R_{1}}{R_{2}}}C_{1}{dv(t) \over dt}$
The output of OA3 is:
    $-R_{4}C_{2}{d({\frac {R_{3}R_{1}}{R_{2}}}C_{1}{dv(t) \over dt}) \over dt}=-{\frac {R_{4}R_{3}R_{1}}{R_{2}}}C_{1}C_{2}{d^{2}v(t) \over dt^{2}}$
Assume V$_{14}$ is f(t). Then the output of OA4, the adder is:
    $-R_{8}({\frac {f(t)}{R_{7}}}+{\frac {-{\frac {R_{4}R_{3}R_{1}}{R_{2}}}C_{1}C_{2}{d^{2}v(t) \over dt^{2}}}{R_{5}}}+{\frac {-R_{1}C_{1}{dv(t) \over dt}}{R_{56}}})={\frac {R_{8}R_{1}}{R_{56}}}C_{1}{dv(t) \over dt}+{\frac {R_{8}R_{4}R_{3}R_{1}}{R_{5}R_{2}}}C_{1}C_{2}{d^{2}v(t) \over dt^{2}}-{\frac {R_{8}}{R_{7}}}f(t)$
Comparing this to:
    ${\frac {a_{1}}{a_{o}}}{dv(t) \over dt}+{\frac {a_{2}}{a_{o}}}{d^{2}v(t) \over dt^{2}}-{\frac {1}{a_{o}}}f(t)=v(t)$
We can see that:
    ${\frac {a_{1}}{a_{0}}}={\frac {R_{8}R_{1}}{R_{56}}}C_{1}$
    ${\frac {a_{2}}{a_{o}}}={\frac {R_{8}R_{4}R_{3}R_{1}}{R_{5}R_{2}}}C_{1}C_{2}$
    ${\frac {1}{a_{0}}}={\frac {R_{8}}{R_{7}}}$
There are three knowns a$_0$, a$_1$, and a$_2$, 10 unknowns and 3 equations. So the problem is under constrained, meaning that other requirements can be used to pick the resistor and capacitor values.