Analoogarvuti

**Analoogarvuti** (inglise *analog computer*, vene *аналоговый компьютер*) on arvuti, mis analoogsignaalide manipuleerimise teel modelleerib uuritava süsteemi või võrrandi käitumist. Analoogarvutis toimuvad kõik operatsioonid mingi kindla signaaliga praktiliselt paralleelselt. Vastandina digitaalarvutites käsitletakse andmeid digitaalsignaali kujul ning operatsioonid tehakse üksteise järel loogikatehete jadana.

Matemaatiliselt on analoogarvutid kirjeldatavad mingi teatava diferentsiaalvõrrandi abil. Analoogarvuti on iga sellise süsteemi analoog, mida saab kirjeldada sellesama diferentsiaalvõrrandiga, ning lahend kehtib samuti igale sellisele süsteemile. Seega võib analoogarvutina käsitleda suvalist füüsilist protsessi, mis modelleerib mingit arvutust. Näiteks peotäie spagettide abil on lihtne modelleerida lineaarse keerukusega arvude sorteerimist; lauajupi, naelte ning kummipaelaga on lihtne leida kumer hulknurk, mis sisaldab kõiki punkte tasandil (mida esindavad naelad lauajupis).

Lihtsaimad mehaanilised analoogarvutid on nomograafid ja arvutuslükatid, keerulisimad tegelesid 20. sajandi keskpaigas laevadel, lennukitel ja kindlustustes tulejuhtimise ja ülikoolides teadusarvutustega. 
Rollides väljaspool rakendusi, kus mehaanika töökindlus ja lihtsus on vooruseks (tulejuhtimine, sihtimine, asukohamääramine), asendas elektrooniline, operatsioonivõimenditel põhinev analoogarvuti mehaanilised arvutid kiiresti. Integreerimine üle mõne ajast erineva muutuja jäi siiski mehaaniliste integraatorite pärusmaaks.

Analoogarvutit programmeeritakse, pannes paika võrrandi konstandid ja muutujate algväärtused (seades paika nt hammasülekannete ülekandetegurid või ühendades arvuti sõlmi juhtmetega). See töö moodustab enamiku üldotstarbelise analoogarvuti kasutamise ajast. Kui mudel on üles seatud, käib lahendi arvutamine väga kiiresti.

## Analoogarvutite areng
* Antikýthira masin arvatakse olevat esimene mehaaniline analoogarvuti. Tegu on seadmega, mis arvutas planeetide asendeid. See avastati 1901. aastal Antikýthira vrakilt Kýthira saare ja Kreeta vahel asuva samanimelise Antikýthira saare lähedalt, ning see arvatakse pärinevat 2. sajandi lõpust eKr. Tegu on keerukaima antiikajast teadaoleva mehhanismiga, millele tuhande aasta jooksul midagi vastu pole panna. See on ka varaseim tõendusmaterjal muutuva pikkusega kuudega kalendrist.
* Astrolaab on Hellenismi lõpupoole, 1. või 2. sajandil eKr leiutatud lihtne astronoomiline tööriist, millega saab olenevalt konkreetse aparaadi märgetest lahendada sfäärilise astronoomia probleeme. 
* Abi Bakr Isfahanist leiutas 1235. aastal mehaanilise kalendrikalkulaatoriga astrolaabi.
* Abū Rayhān al-Bīrūnī leiutas esimese mehaanilise, hammasrataste ja traadiga kuu- ja päikesekalendrikalkulaatoriga astrolaabi, u 1000 a pKr. Tema nimele kuulub ka planisfääri leiutamine 11. sajandi alguses.
* Lossikell, astronoomiline kell, mille leiutas Al-Jazari 1206. aastal, võib olla esimene programmeeritav analoogarvuti. See näitas sodiaaki, geotsentrilisi päikese ja kuu orbiite, ning veerandkuukujuline osuti liikus värava kohal, avades iga tund ühe kaheteistkümnest uksest, mille taga oli skulptuur. Värava juurde kuulus ka viis animatroonilist muusikut, mille mängimist juhiti kangide ja nukkvõlli kaudu vesirattalt. Päeva ja öö pikkust sai ja tuli iga päev muuta, kuna aasta jooksul need muutusid. Aega mõõdeti vesikellaga, reguleeriti kraaniga.

* Arvutuslükati on käsitsi kasutatav analoogarvuti mis leiutati umbes 1620–1630, pärast logaritmi avastamist. Lükati arenedes lisandusid võimalused arvutamaks pöördväärtusi, astendamiseks ja juurimiseks ning transtsendentsete funktsioonide, näiteks logaritmide, trigonomeetriliste ja hüperboolsete funktsioonide arvutamiseks.
* Diferentsiaalanalüsaator on mehaaniline analoogarvuti, mis on ehitatud diferentsiaalvõrrandite lahendamiseks integreerimise teel. Integreerimiseks kasutatakse mehhanismi, mis koosneb vedavast kettast ning veetavast silindrist, mida ühendab kera. Kera kaugust ketta pöörlemisteljest ehk keskpunktist saab muuta. Need leiutas 1876. aastal James Thompson. Mitmed edasiarendused olid aluseks mehaaniliste tulejuhtimisarvutite komponentidele.
* Teise maailmasõja aegsed tulejuhtimis-, suunamis- ja pommisihtimisarvutid kasutasid küllaltki keerukaid mehaanilis-optilisi ja elektrilisi analoogarvuteid.

* FERMIAC ehk "Monte Carlo käru" oli analoogarvuti, mille leiutas Enrico Fermi 1947. aastal neutronilevi uurimiseks. Tähelepanuväärne on masin seetõttu, et kasutab Monte Carlo meetodit. Seadet kasutati u. 2 a. jooksul, kuni ENIAC, mille jaoks meetod välja oli töötatud, asukohta vahetas ja seetõttu kasutusvalmis ei olnud.

* MONIAC oli analoogarvuti, mis modelleeris raha liikumist ja aktsiaturgu värvitud vee ning reservuaaride, kraanide jaoturite ja torude kombinatsioonina. Selle leiutas Bill Phillips, insenerist majandustudeng, selgitamaks enesele majandusteooriat. Arvuti oli 4% määramatusega, ent võimaldas selle piires väga hästi demonstreerida majandussüsteemide dünaamilisust ning majandusteooriate erinevusi. Arvuti täiustatud mudelit Mark II ehitati kokku tosinkond, ning need leidsid kasutust õppevahendina paljudes Briti ülikoolides. Lisaks kasutasid (või vähemalt omasid) arvuteid Melbourne'i ülikool Austraalias, Roosevelti kolledž Harvardi ülikoolis, Ford Motor Company USA-s ja Guatemala Keskpank. Ehkki arvuti määramatus oli suurevõitu, tehti sellega ka teadustööd.
* Computer Engineering Associates oli USA California Tehnoloogiainstituudist välja kasvanud ettevõte, mis pakkus simulatsiooniteenust väljaprobleemide lahendamiseks. Selleks kasutati California Tehnoloogiainstituudis 1950. aastal välja töötatud nn otsese analoogia elektrilist analoogarvutit (inglise *Direct Analogy Electric Analog Computer*) ("suurim ja muljetavaldavaim üldotstarbeline analoogarvuti väljaprobleemide lahendamiseks"), mille töötasid välja Gilbert D. McCann, Charles H. Wilts ja Bart N. Locanthi.
* Heathkit EC-1 oli 199 $ haridusotstarbeline analoogarvuti, mida valmistas Heath Company 1960. aastate alguses. Programmeerimiseks ühendati esipaneelil juhtmetega 9 operatsioonivõimendit ülejäänud komponentidega. Reaalseks arvutamiseks oli see arvuti liiga ebatäpne, ent lihtsus ja odavus tegid sellest hea õpetamisvahendi.

## Elektrilised ja elektroonilised analoogarvutid

#### Mehaanika ja elektri vaheline side
Lineaarsete mehaaniliste (vedru, amortisaator, mass) ja elektriliste (vastavalt kondensaator, takisti, induktiivpool) elementide kirjeldamiseks kasutatakse identset matemaatilist mudelit.

See võimaldab sellise mehaanilise süsteemi kohta konstrueerida elektrilise analoogi, mis simuleerib mehaanilise süsteemi käitumist. Oluline on aga see, et elektrilist mudelit on üldjuhul lihtsam koostada ning ohutum ja mugavam kasutada. Selleks et muuta vedru jäikust, on mehaanilise süsteemi puhul tihti vaja valmistada uus vedru. Elektrilises analoogis võime muuta kondensaatori mahtuvust või kondensaatori lihtsalt teise vastu välja vahetada. Samuti on elektriahel enamasti võimeline töötama kõrgematel sagedustel kui mehaaniline, võimaldades simulatsiooni kiiremini läbi viia.
Samuti võime simuleerida hüdrodünaamikat: Kui me esitame rõhku pingena ning vooluhulka voolutugevusena, siis simuleerimaks horisontaalset toru on vaja vaid õige väärtusega takistit ning mahuti altpoolt täitumist või vertikaalset toru on võimalik modelleerida kondensaatori laadimisena.

Reaalselt sellist üks ühele vastavust ei kasutata, kuna induktorite kõrvalekalded ideaalsest on liiga suured, suure mahtuvusega muudetavaid kondensaatoreid on raske teha ning suurte vooludega opereerimine teeks aparatuuri raskeks ja kalliks. Praktilistes elektroonilistes analoogarvutites kasutatakse muutujate esitamiseks pinget, ning kui analüüsitakse mõnda kindlat mehaanilist süsteemi, siis arvuti skeem koostatakse pigem diferentsiaalvõrrandite, mitte ülalkirjeldatud analoogide kaudu.

#### Üldotstarbelised elektroonilised analoogarvutid
Elektroonilise analoogarvuti tegi praktiliseks transistori areng. Transistor- või mikroskeem-operatsioonivõimendi on nende arvutite peamine ehituskivi, võimaldades võrdlemisi lihtsalt koostada ahelaid, mis teostavad mingit konkreetset tehet ning mida on lihtne omavahel ühendada. Nende abil koostatakse süsteemi kirjeldava diferentsiaalvõrrandite süsteemi elektrooniline analoog, ning kasutatakse arvutit selle käitumise modelleerimiseks. See võimaldab konstandid siduda potentsiomeetrite takistustega, vähendada energiakulu ning lihtsustada tulemuste esitamist. Lahend esitatakse kas ostsilloskoobi, graafikuplotteri või voltmeetri abil.

Sellised analoogarvutid on võimelised simuleerima väga laia valikut protsesse. Analoogarvuti lahendab diferentsiaalvõrrandeid sõltumata keerukusest, kuni antud võrrandite esitamine arvutil on võimalik. Konstantide muutmine kajastub tulemuses praktiliselt reaalajas, mis võimaldab lihtsalt uurida süsteemi käitumist eri juhtudel.

#### Konstruktsioon
Üldotstarbelised elektroonilised analoogarvutid koosnevad üldiselt operatsioonimoodulitest, potentsiomeetritest, ühenduspaneelist ning tugistruktuurist, mis tagab eri komponentidele toite ning ühendused paneeliga. Suures arvutis võib olla paarsada operatsioonivõimendit ning potentsiomeetrit ning komponentide ühendamiseks paneelil umbes 1000 pistikupesa.

Elektroonilise analoogarvuti tähtsamad ehitusdetailid on

*täpsed kondensaatorid ja takistid;
*operatsioonivõimendid;
*korrutid;
*täppispotentsiomeetrid;
*signaaligeneraatorid.

Neist koostatakse peamised tehtesõlmed:

*summeerimine;
*integreerimine aja järgi;
*vastandsuuruse leidmine;
*korrutamine;
*astendamine;
*logaritm;
*jagamine.

Diferentseerimist aja järgi analoogarvutites välditakse, kuna see kannab ohtu võimendada kõrgsageduslikku müra.

Fail:What's That (30).jpg|Analoogarvuti, mille ühenduspaneeli sai vahetada ja ühendused teha eemal. Nii lühenes arvuti kasutult seismise aeg
Fail:NUSSE.jpg|Esimene Norras ehitatud arvuti, 1952


## Analoog-digitaal-hübriidarvutid
Hübriidarvutid kasutasid ära kummagi arvutitüübi tugevusi. Analoogarvutid olid võitmatud võrrandite kiires ja korratavas lahendamises, digitaalarvutite tugevusteks olid täpsus ja loogika. Digitaalarvuteid kasutati kas analoogarvuti tulemuse rafineerimiseks vajaliku täpsuseni kasutades iteratiivseid algoritme, mille algväärtus saadi analoogarvuti tulemustest ja/või analoogarvutil jooksva võrrandi parameetrite muutmiseks saavutamaks soovitud lahendit (vt geneetiline algoritm).

## Mehaanilised analoogarvutid

Mehaanilised analoogarvutid kasutavad oma süsteemi detailide kuju ja vastasmõju matemaatiliste operatsioonide kirjeldamiseks. Nende tippaeg oli 1920. aastatel, mil ehitati mitmeid universaalseid mehaanilisi diferentsiaal-analüsaatoreid. Sellest rollist tõrjuti mehaanilised arvutid elektrooniliste poolt küllalt kiiresti välja. Küll leidsid elektromehaanilised arvutid laialdast kasutust sõjaväes, sihtimaks ja suunamaks laevakahureid ning ajastamaks pommitamist lennukitel. Siin oli hinnas nende masinate töökindlus ning analoogarvutile iseloomulik võime tagada "lahendi" ehk torude suuna õigsuse pidevus ajas. Selles rollis olid analoogarvutid kasutusel veel 1970. aastate keskpaigas, mil miniarvutid piisavalt võimsaks, väikeseks ning töökindlaks muutusid.

Tänapäeval on mehaanilised analoogarvutid kasutusel veel lihtsamates relvasüsteemides, näiteks ka Eesti Kaitseväe relvastuses oleva ZU-23-2 õhutõrjekahuri sihik ZAP-23, millesse käsitsi sisestatakse radarilt saadud andmed lennuki suuna, kiiruse ja kauguse kohta, ning mis seejärel korrigeerib sihikut nii, et sihtija mürsu lennuajaga arvestama ei peaks.

#### Konstruktsioon
Operatsioonideks kasutatakse erinevaid sõlmi:
*Liitmiseks-lahutamiseks kasutati diferentsiaale (tööpõhimõte sama nagu auto passiivsel ülekandediferentsiaalil).
*Korrutamiseks-jagamiseks kasutati mehhanismi, mis toetus sarnastele täisnurksetele kolmnurkadele. Lähiskaatet on konstantse pikkusega 1, vastaskaateti pikkust saab muuta (enamasti ka negatiivseks). Vastaskaatet määrab ühe teguri, teguriks on 1 kui vastaskaatet on sama pikk kui lähiskaatet, st pikkusega 1. Teine tegur määratakse valides mingi punkt lähiskaatetil, siis selle ja vaadeldava nurga (mille lähiskaatetiga on tegu) vaheline kaugus on teiseks teguriks. Korrutiseks on lõigu pikkus sellest punktist hüpotenuusini, lähiskaatetiga risti.

*Integreerimiseks kasutati ketta ja kera meetodit: muutuja, mille järgi integreeritakse, on ketta pöörlemine, ning kera veereb ketta pinnal. Kera radiaalne kaugus ketta pöörlemisteljest on proportsionaalne integreeritava funktsiooniga. Kera on kontaktis silindriga, mis on paralleelne ketta keskpunkti kera puutepunktiga ühendava raadiusega, kuid kettaga kontaktis ei ole. Kera veab seega silindrit, ning silindri pöörlemine on funktsiooni integraal.
*Koordinaatteisendusteks kasutati mehaanilisi resolvereid.
*Suvalisi funktsioone on võimalik esitada kahe- või kolmemõõtmeliste nukkide abil.
*Muutujaid kanti ühelt mehhanismilt teisele servomootorite ja võllide abil.
 
Mõningate rakenduste puhul on osutunud kasulikuks kasutada teistsuguseid mehhanisme: nt loodete ennustamise masinad 19. ja 20. sajandi vahetusel, olemuselt Fourier' süntesaatorid, kasutasid tsükliliste loodekomponentide liitmiseks üle vabalt pöörlevate hammasrataste jooksvat ketti. Iga hammasratta asukoha muutus andis oma panuse keti otsas rippuva sule asukoha muutusse, mis joonistas ennustatava veetaseme graafikuna rullpaberile.

Fail:Cambridge differential analyser.jpg|Cambridge'i diferentsiaal-analüsaator
Fail:AA-Predictor-Nr1MarkIII-001.jpg|Nr 1 Mk. III Predictori õhutõrjekahuri sihtimise arvuti
Fail:Mark 1A Fire Control Computer Controls.jpg|Mark 1A tulekontrolliarvuti, mida kasutati pärast II maailmasõda hävitajatel ja suurematel laevadel
Fail:DSCN1739-thomson-tide-machine.jpg|Loodete ennustamise masin, mis summeerib 10 loodete komponenti. Seade väljastas 1 aasta loodete ennustused 4 tunniga


## Piirangud
Analoogarvutid on piiratud oma detailide valmistamise täpsuse ning dünaamilise ulatuse poolest. Dünaamilise ulatuse piiridest saab üle suurusi antud töötsükli jaoks skaleerides, detailide täpsuse mõju vähendamiseks tuleb võimalikult vähendada kasutatavate komponentide hulka.
Analoogarvutites osutub väga oluliseks ka müra. Digitaalseadmete puhul ei ole müra niivõrd oluline, kuna teatavates piirides müra ei muuda suuruse väärtust. Seega ei muutu ka arvutuse tulemus ja müra ei tekita tulemuses viga. Analoogsüsteemis aga on signaal, millele liitub müra, sama kehtiv, kui mürata signaal, ning seega kandub mürast tingitud viga süsteemis edasi. Selle vältimiseks on oluline konstrueerida süsteem sellisena, et suurema müraga komponendid oleksid ahelas lõpu pool, ning et see sisaldaks võimalikult vähe võimendavaid komponente.

Parimad analoogarvutid annavad tulemusi umbes nelja tähendusega kümnendkoha piires, samas kui digitaalsete arvutite täpsus on piiratud sõna pikkusega (tänapäeval 64 bitti, ehk umbes 16 tähendusega kümnendkohta), või vajadusel piiramatu.

## Viited