• Ei tuloksia

Tietokoneohjelma epälineaaristen elektroniikkapiirien simulointiin

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "Tietokoneohjelma epälineaaristen elektroniikkapiirien simulointiin"

Copied!
73
0
0

Kokoteksti

(1)

elektroniikkapiirien simulointiin

Matias Pekkarinen

25. huhtikuuta 2014

Pro Gradu tutkielma

Jyväskylän yliopisto,Fysiikanlaitos

25.huhtikuuta 2014

Ohjaaja: Kari Loberg

(2)
(3)

Tässä työssä esitetään kuinka lineaarisissa ja epälineaarisissa elektroniik-

kapiireissätoimivapiirisimulaattoriohjelmavoidaantoteuttaaoliokielellä.Työ

aloitettiin itse kehitetyn TICER-yksinkertaistusalgoritminpohjaltaja yhtenä

työn motivaationa olikin tutkia kuinka kyseistä algoritmia voi käyttää mui-

denanalysointimenetelmienapuna.Työnedetessäosoittautuikin,ettäTICER-

yksinkertaistusta kannattaa käyttää muiden analysointimenetelmien apuna,

sillä se voi nopeuttaa huomattavasti RC-piirien analysointia. TICER ei kui-

tenkaan nopeuttanut ohjelman toimintaa poikkeuksetta,mutta seei hidasta-

nutkaan analysointia koskaan niin paljon, etteikö sitä olisi kannattanut käyt-

tää. Ohjelman pääasiallisena analysointimenetelmänä käytettiin solmupistea-

nalyysiä ja sillä muodostetut yhtälöryhmät ratkaistiin lineaarisissa piireissä

yleensä LU-hajotelmalla tai Gaussin eliminoinnilla, sekä epälineaarisissa pii-

reissä Newton-Raphsonin menetelmällä. Ohjelma ohjelmoitiin javalla ja se

kykenee suorittamaan elektroniikkapiireille niin tasavirta-, vaihtovirta-, kuin

myöstransienttianalyysejä.

(4)
(5)

1 Johdanto 1

2 Piiriyhtälöiden muodostaminen 2

2.1 Solmupisteanalyysi . . . 2

2.2 TICER . . . 5

3 Piiriyhtälöiden ratkaiseminen 8 3.1 Lineaariset yhtälöryhmät . . . 8

3.1.1 Gaussin eliminointi . . . 9

3.1.2 LU-hajotelma . . . 11

3.1.3 Permutaatiomatriisi. . . 12

3.1.4 Gauss-Jaobinmenetelmä . . . 14

3.1.5 Gauss-Seidelinmenetelmä . . . 17

3.2 Epälineaarisetyhtälöryhmät . . . 19

3.2.1 Yksiulotteinen Newtonin menetelmä . . . 19

3.2.2 MoniulotteinenNewtonin menetelmä . . . 21

3.2.3 Piirinlinearisointi . . . 25

3.2.4 Jyrkän kasvun menetelmä (Steepest Desent method) . . . 26

4 Piirin analysointi 29 4.1 Tasavirta-,eliDC-analyysi . . . 29

4.2 Vaihtovirta-eliAC-analyysi . . . 30

4.3 Transienttianalyysi . . . 31

4.3.1 Eulerin menetelmät . . . 33

4.3.2 Puolisuunnikassääntö . . . 36

5 Ohjelman toiminta 39 5.1 Piirintopologia . . . 39

5.1.1 Kytkentämatriisi . . . 39

5.1.2 Kytkentäoliot . . . 41

5.2 Piirinkomponentitja niiden ominaisuudet . . . 42

5.3 Ohjelmanmatemaattisetmuuttujat . . . 42

(6)

5.4.2 LU-hajotelmanalgoritmi . . . 44

5.4.3 Moniulotteisen Newtoninmenetelmän algoritmi . . . 45

5.5 Ohjelmanpiirialgoritmit . . . 45

5.5.1 Solmupistealgoritmi. . . 45

5.5.2 TICER-algoritmi . . . 46

5.6 Piirialgoritmiennopeus . . . 48

6 Ohjelman käyttö 50 6.1 Piirinkuvantamiskäskyt . . . 50

6.1.1 Vastukset . . . 50

6.1.2 Riippumattomatlähteet . . . 51

6.1.3 Kondensaattorit ja induktorit . . . 51

6.1.4 Riippuvaisetlähteet . . . 52

6.2 Piirinanalysointikäskyt . . . 52

6.2.1 Tasavirta-ja vaihtovirta-analyysi . . . 52

6.2.2 Transienttianalyysi . . . 53

7 Johtopäätökset 54

A Liite: Gaussin-eliminointi algoritmi 59

B Liite: Newtonin menetelmän algoritmi 61

C Liite: Vahvistin 63

D Liite: Lineaarinen piiri 65

E Liite: Epälineaarinen piiri 67

(7)

Tämäntyöntarkoituksena onkehittää tietokoneohjelma, jotavoidaankäyttääapu-

na, sekä lineaaristen, että epälineaaristen piirien tutkimisessa. Ohjelma ohjelmoi-

daan oliokielellä. Työn lähtökohtana on ohjelman edellinen kehitysvaihe, eli työs-

sä [13℄ kehitetty TICER-yksinkertaistusalgoritmi, jota voidaan soveltaa yksinker-

taistuksen lisäksimyös erilaisissapiirianalyyseissä. Tarkoituksena ei kuitenkaan ole

pelkästään jatkokehittääkyseistä algoritmia,vaan myöstutkiakuinkamuitapiirien

analysointimenetelmiävoidaantoteuttaaoliolähtökohtaisesti.Sekätutkiakuinkahy-

vinyksinkertaistustoimiiniidenapualgoritmina.Käytännössäyksinkertaistettupiiri

on yleensä aina helpompi analysoida, mutta siitä ei kuitenkaan ole aina varmuut-

ta, että maksaako yksinkertaistuksen tuoma helpotus analyysiin itse yksinkertais-

tuksen vaivan. Eli voidaanko ensin yksinkertaistus ja sen jälkeen yksinkertaistetun

piirin analysointi suorittaaniin nopeasti, että se on nopeampi menetelmä kuin yk-

sinkertaistamattoman piirin suora analysointi. Myös ohjelman toiminta-aluetta on

tarkoitus laajentaa. Ohjelman edellisessä versiossa voitiin suorittaa vain tasavirta-

analyysejä lineaarisillepiireille, mutta tässä työssä kehitetyn ohjelman tarkoitukse-

naontoimia myösepälineaarisissapiireissä,sekätarjota mahdollisuudettasavirta-,

vaihtovirta-ja transienttianalyyseihin.

(8)

2.1 Solmupisteanalyysi

Solmupisteanalyysionpiirianalyysi,missäpiiristävalitaanyksikytkentäpistevertai-

lukohteeksi ja muut piirin kytkentäpisteiden jännitteetlasketaanverrattuna siihen.

Vertailupisteeksi valitaan usein maadoitettu kytkentäpiste, silläsen jännite tunne-

taan joennaltajasilleeitarvita omaajännitemuuttujaa.Piiriyhtälöidenmuodosta-

minen aloitetaanmuodostamallavirtayhtälöpiirin jokaiselle kytkentäpisteelle. Vir-

tayhtälömuodostetaan Kirhonvirtalainmukaan,jonkamukaankaikkienkytken-

täpisteeseen saapuvien virtojen summa on nolla. Eli esimerkiksi kuvan 1 mukaisen

kytkennän kytkentäpisteen 4 virtayhtälö voidaan kirjoittaa.

i 14 + i 24 + i 34 = 0

(1)

Kuva1: KCL-yhtälö

Tämänjälkeensaadutyhtälötpyritäänmuokkaamaansiten,ettäsiinäkäytetään

muuttujinavainjännitemuuttujia.MuokkausonnistuuKirhonjännitelainavulla,

jonka mukaan esimerkiksi kytkentäpisteiden 1, 4 välinen jännite on

v 14 = v 1 − v 4

ja siten virtayhtälön muuttuja

i 14

voidaan korvata yhtälöllä

i 14 = V 1 R 14 V 4

. Sama

voidaan toistaa jokaisen virtamuuttujan kohdalla ja kun yhtälöstä (1) korvataan

kaikki virtamuuttujat jännitemuuttujilla,saadaan

V 1 − V 4

R 14

+ V 3 − V 4

R 34

+ V 2 − V 4

R 24

= 0.

(9)

kohdalla,niistä voidaan muodostaayhtälöryhmä,jonkaratkaisustasaadaan selville

kaikkien kytkentäpisteiden jännitteet.

Solmupistemenetelmänkäyttäminenedellyttääuseinpiirinmuokkausta,silläjos-

kuskytkentäpisteen virtayhtälöäeivoidasuoraanmuuntaa pelkästäänjännitemuut-

tujistariippuvaiseksi.Näinonesimerkiksikuvan2mukaisenjännitelähteenkohdalla,

koskakytkennän virtayhtälön

i 1 + i 2 + i 3 = 0

muuttujaa

i 2

eivoida suoraankuvan-

taa kytkentävälin1,2jännitemuuttujilla.Käytännössäjokaisellajännitelähteelläon

kuitenkin myös oma sisäinen vastus ja siten kytkentä voidaan korvata. Esimerkik-

si jos oletetaan, että kuvan 2 mukaisen jännitelähteen

V 1

sisäinen vastus on

R in

,

niinse voidaan korvata kuvan3mukaisellakytkennällä [3℄. Tämäei kuitenkaan ole

ratkaisu ongelmaan,silläsimulointiohjelmanonkyettävä analysoimaanmyösideaa-

lilähteitä.Ongelmavoidaankorjatakäsittelemälläkuvan2mukaistajännitelähdettä

ns. superkytkentäpisteenä, jolloinkytkentäpisteistä 1, 2 vain toista käsitellään ver-

tailupisteenä [15℄. Eliyhtälöt muodostetaan oikeastaan kuvan 4mukaisesta piiristä

ja kyseisen kytkennän yhtälövoidaankirjoittaamuotoon

V 1 − V 3 R 1

+ V 1 − V 4 R 2

+ V 1 − V a − V 5 R 3

+ V 1 − V a − V 6 R 4

= 0.

Tällainen kytkennän korvaaminen on kuitenkin turhaa, sillä usein etenkin laa-

joissapiireissäsiitävoitulla hyvin monimutkaista.Parhaanaratkaisunaongelmaan

toimiianalysointimenetelmänmuokkaaminenjakäytössäolevienmuuttujienmäärän

lisääminen. Esimerkiksi kuvan 2mukaisenkytkennän virtayhtälöön

i 1 + i 2 + i 3 = 0

voidaan

i 2

jättäämuuttujaksija näinongelmaohitetaanlisäämällätuntemattomien määrää yhdellä. Kyseistä analysointimenetelmää kutsutaankin muokatuksi solmu-

(10)

Kuva 4:Kuvan2 kytkennän muunnos

pisteanalyysiksi.

Muokattu solmupisteanalyysi on nimensä mukaisesti solmupisteanalyysistä ke-

hitetty analyysimenetelmä.Muokattu solmupisteanalyysi eipaljoa eroa tavallisesta

solmupisteanalyysistä.Ainoanaeronavoidaanpitääsitä,että kaikkiaKirhonvir-

talain mukaisesti muodostetuita yhtälöitä ei muokata pelkästään jännitemuuttujis-

ta riippuvaisiksi, vaan jännitemuuttujien lisäksi muuttujina käytetään myös virta-

muuttujia. Kyseisten lisämuuttujien tarkoituksena ei kuitenkaan ole helpottaa yh-

tälöryhmien ratkaisua vaan niiden muodostamista [11℄. Lisämuuttujat itse asiassa

useimmiten vain vaikeuttavat yhtälöryhmän ratkaisua, mutta algoritmitasolla laa-

jatyhtälöryhmäteivätoleniinsuuriongelmakuintulkinnanvaraisetjamuokattavat

kytkennät.Edelläosoitettiinkinjokuinkariippumattomanjännitelähteentapaukses-

sa lisämuuttujaksi jätetty virta helpottaa solmupisteyhtälön muodostamista. Sama

ideapätee myösuseillemuillekomponenteille,kutenriippuvaisillejännitelähteilleja

induktoreille.Piiriinjätetäänmuokatussasolmupisteanalyysissätavallisestimyösne

(11)

2.2 TICER

TICER onpiirien yksinkertaistusmenetelmä, jotavoidaan käyttääapuna piiriyhtä-

löidenmuodostamisessa.TICERiäsovelletaanyleensävainRC-piireissä,koskaRLC-

piireissäTICERissäkäytettäväkolmio-tähtimuunnosmuuttaapiirinominaisuuksia

[14℄. Yksinkertaistaminen aloitetaan kaikista rinnan- ja sarjaankytketyistä passiivi

komponenteista, koskaniiden yksinkertaistaminenvoi luodauusia tähti-ja kolmio-

kytkentöjä.Tämänjälkeenyksinkertaistamistajatketaanns.kolmio-tähtimuunnok-

senavulla.Kolmio-tähtimuunnoksessakuvassa5olevakolmionmuotoinenkytkentä

muunnetaan saman kuvantähtikuvion mukaiseksikytkennäksi tai toisinpäin.

Kyseinenmuunnoskolmiostatähdeksiyksinkertaistaapiiriä,silläsolmupisteiden

määrä voi vähentyä kahdella. Muunnosta voidaan käyttää kytkentäpisteissä, joihin

onkytketty vainvastuksia taikondensaattoreita. Muunnos onnistuu yhtälöillä [4℄

R 14 = R 12 · R 13

R 12 + R 23 + R 13

R 24 = R 12 · R 23

R 12 + R 23 + R 13 R 34 = R 13 · R 23

R 12 + R 23 + R 13

ja muunnettaessa tähtikytkentä kolmiokytkennäksi voidaan käyttääseuraavia.

R 12 = R 12 · R 13 + R 12 · R 23 + R 13 · R 23

R 34

(12)

R 13 = R 12 · R 13 + R 12 · R 23 + R 13 · R 23

R 24

R 23 = R 12 · R 13 + R 12 · R 23 + R 13 · R 23

R 14

Vaikka TICER on edellä mainitun mukaisesti yksinkertaistusmenetelmä, sovel-

tuu se myös RC-piirienanalysointiin,joissa sitäsovelletaan superpositiopiireittäin.

Superpositiopiireittäin käytettynä TICER yksinkertaistaa piirit niin pitkälle, että

yksinkertaistetussa piirissä ei ole enää yhtään tuntematonta muuttujaa. Yksinker-

taistamisen jälkeen piirin yksinkertaistusvoidaan purkaa ja samalla voidaan laskea

palautetun piirin tuntemattomat tekijät. Lopulta kun koko superpositiopiirin yk-

sinkertaistus on palautettu, ei superpositiopiirissä ole enää yhtään tuntematonta

muuttujaa. Superpositiopiireittäin soveltaminen ei rajoita TICERin käyttöä vain

riippumattomiinjalineaarisiinpiireihin.Silläpiirejävoidaan,sekälinearisoida,että

analysoida riippuvuuksienmukaan. Tuohonpiirin linearisointiinpalataanmyöhem-

min, mutta jos analysoitavana on liitteen C mukainen piiri, jossa ilmenee riippu-

vuuksia, niinanalysointikannattaa aloittaariippumattomista superpositiopiireistä.

Riippumattomatsuperpositiopiiritlasketaankutentavallisesti,muttariippuvaisista

lähteistä muodostetuissa superpositiopiireissä riippuvaisten lähteiden arvot käsitel-

lään symbolisina. Esimerkiksi lähteen

e1

arvona käytetään muuttujaa

999000V 12

,

koska se on riippuvainen kytkentävälin (1,2) jännitteestä ja sen kerroin on

999000

.

Lopuksi kaikkiensuperpositiopiirienarvotsummataan yhteen ja jos oletetaan, että

V 1 = 3

V niinvaikuttavilla väleillä(1,2), (4,5), (8,7) superpositiopiirienjännittei- densummatovat

3−666000V 12 −333000V 45 −0V 87

,

5−333000V 12 −666000V 45 +0V 87

,

0 − 499500V 12 + 499500V 45 − 499500V 87

. Kyseisistä arvoista voidaan edelleen muo-

dostaa yhtälöryhmä

V 12 = 3 − 666000V 12 − 333000V 45 − 0V 87

V 45 = 5 − 333000V 12 − 666000V 45 + 0V 87 . V 87 = 0 − 499500V 12 + 499500V 45 − 499500V 87

Yhtälöryhmän ratkaisemisenjälkeen vaikuttavientekijöiden arvot tunnetaan

V 12 =

(13)

1.00101·10 6

V,

V 45 = 6.99997·10 6

V,

V 87 = 6.00598·10 6

Vjanevoidaansijoittaa.

Esimerkiksi sijoitettaessa arvot riippuvaisten jännitelähteiden yhtälöihin saadaan

V 3 = 999000V 12 = 1, 00001

V,

V 6 = 999000V 45 = 6, 99999

V,

V 9 = 999000V 87 = 5, 99997

V.

Edellä osoitetun mukaisesti TICER onkätevä analysointimenetelmä,mutta sen

avulla suoritettava yksinkertaistus, sekä nopeuttaa että helpottaa myös muiden

analysointimenetelmien käyttöä. Esimerkiksi solmupisteanalyysissä yhtälöryhmän

muuttujienmäärä riippuvainen solmupisteiden määrästäja TICERiävoidaankäyt-

tää niiden vähentämisessä. Siihen kuinka paljon TICER nopeuttaa solmupisteana-

lyysissä palataanluvuissa 5.5.2 ja 5.6.

(14)

3.1 Lineaariset yhtälöryhmät

Lineaarisestapiiristäsolmupistemenetelmällämuodostettuyhtälöryhmäonainamuo-

toa

 

 

 

 

 

 

 

 

N 1 : a 11 V 1 + a 12 V 2 + ...+ a 1n V n = b 1

N 2 : a 21 V 1 + a 22 V 2 + ...+ a 2n V n = b 2

.

.

.

N n : a n1 V 1 + a n2 V 2 + ...+ a nn V n = b n

(2)

, missä

V 1 , V 2 , ..., V n

ovatsolmupisteiden tuntemattomia jännitteitä.Kyseinen yhtä- löryhmä voidaanesittää myösmuodossa

Ax = b

(3)

, missä

A

on yhtälöryhmän muuttujien kertoimien arvoja esittävä matriisi,

x

on

muuttujien

V 1 , V 2 , ..., V n

vektori ja

b

onvakioarvojen

b 1 , b 2 , ..., b n

vektori. Yhtälöryh-

män ratkaisemiseksiyhtälöryhmäon yksinkertaistettava muotoon

 

 

 

 

 

 

 

 

N 1 : V 1 0 · · · 0 = r1 N 2 : 0 V 2

.

.

. .

.

.

= r 2

.

.

. .

.

. .

.

. .

.

.

0

...

N n : 0 · · · 0 V n = r n

, missä

a ii = 1

ja

a ij = 0

, kun

i 6= j

. Lineaarisen yhtälöryhmän ratkaisemises- sa voidaan käyttää, sekä ns. suoria, että iteratiivisia menetelmiä. Suorissa mene-

telmissä yhtälöryhmä ratkaistaan äärellisellämäärällä lineaarisia laskutoimituksia.

Suorilla menetelmillä saatu tulos on teoreettisesti tarkka, mutta pyöristysvirheet

vaikuttavat kuitenkin osittain tulokseen. Suorat menetelmät eivät tarkkuudestaan

huolimatta kuitenkaan ole aina se paras vaihtoehto yhtälöryhmän ratkaisemiseksi,

vaan ne kannattaa korvata ns. iteratiivisilla menetelmillä. Iteratiivisissa menetel-

missä oikean ratkaisun etsiminen aloitetaan ns. alkuarvauksesta ja alkuarvauksen

(15)

alkuarvausonoikeaa tulostaja esimerkiksigraaenpisteitälaskettaessa laskettavan

pisteen arvo ei yleensä ole kovin kaukana edellisestä. Tämän takiaainakin graafeja

laskettaessa suoratmenetelmätkannattaa useinkorvata iteratiivisilla.Iteratiivisten

menetelmien etuna graafeissa on myös se, että se on tarkka vain haluttuun pistee-

seen asti ja koska graat voidaan esittää vain tiettyyn tarkkuuteen asti, ei suorien

menetelmien tarkkuudesta ole hyötyä. Iteratiivisia menetelmiä ei kuitenkaan voida

soveltaaihan jokatilanteessa,silläedellytyksenä iteratiivistenmenetelmienkäytölle

on, että yhtälöryhmän(3) kerroinmatriisi

A

suppenee [6℄. Suppenemiseen vaikutta- vat diagonaaliarvojensuuruus muihin arvoihin verrattuna ja suppeneminen onsitä

nopeampaa, sekä varmempaa mitä suurempia diagonaalielementit ovat verrattuna

muihin arvoihin. Suppenemisen varmistamiseksi ja nopeuttamiseksi yhtälöryhmää

tavallisesti muokataankin siten, että diagonaaliarvot ovat suuria. Muokkaus onnis-

tuu mm. permutaatiomatriisinavulla. Iteratiivisia menetelmiä ei kannata soveltaa,

jos tälläinenmuokkaus eionnistu.

3.1.1 Gaussin eliminointi

Gaussin eliminointion ns. suoramenetelmä yhtälöryhmänratkaisemiseksi.Gaussin

eliminoinnissayhtälöryhmä(2) saatetaan lineaarisialaskutoimituksia

N i = λN i

(4)

N i = N i ± N k λ

(5)

hyödyntäen yläkolmiomuotoon

 

 

 

 

 

 

 

 

N 1 : a 11 V 1 + a 12 V 2 + ...+ a 1n V n = y 1

N 2 : 0 a 22 V 2 + ...+ a 2n V n = y 2

.

.

.

.

.

.

.

.

. .

.

.

N n : 0 · · · 0 a nn V n = y n

,missä

a ij = 0

, kun

i > j

. Kunyhtälöryhmä onsaatu tähänyläkolmiomuotoon,on

V = y /a

(16)

saadaan edelleen ratkaistua yhtälö

N n − 1

ja sijoituksia jatkamalla on lopulta koko yhtälöryhmä ratkaistu.

Esimerkki Gaussin eliminoinnista Ratkaistaaksemme yhtälöryhmän

 

 

 

 

 

 

N 1 : 3V 1 + V 2 + 2V 3 = 1 N 2 : 3V 1 + 5V 2 + V 3 = 2 N 3 : 3V 1 + 2V 2 + 8V 3 = 3

Gaussinmenetelmälläonkyseinenyhtälöryhmäensinsaatavamuokattuayläkolmio-

matriisiksi.Muokkaus onnistuu eteenpäin etenevillä lineaarisillalaskutoimituksilla.

N 2 = N 2 − N 1

N 3 = N 3 − N 1

 

 

 

 

 

 

N 1 : 3V 1 + V 2 + 2V 3 = 1 N 2 : 0+ 4V 2 − V 3 = 1 N 3 : 0+ V 2 + 6V 3 = 2

N 3 = N 3 − 1 4 N 2

 

 

 

 

 

 

N 1 : 3V 1 + V 2 + 2V 3 = 1 N 2 : 0+ 4V 2 − V 3 = 1 N 3 : 0+ 0+ 6.25V 3 = 1.75

Nyt on matriisisaatu yläkolmiomuotoonja muokkausta jatketaan tästä taaksepäin

etenevillä sijoituksillatavoitteena tehdäkerroin matriisistayksikkömatriisi.

N 3 = N 3 /6.25

 

 

 

 

 

N 1 : 3V 1 + V 2 + 2V 3 = 1 N 2 : 0+ 4V 2 − V 3 = 1

N : 0+ 0+ V = 7/25

(17)

N 2 = N 2 + N 3

4

 

 

 

 

 

 

N 1 : 3V 1 + V 2 + 2V 3 = 1 N 2 : 0+ V 2 + 0 = 8/25 N 3 : 0+ 0+ V 3 = 7/25

N 1 = N 1 − N 2 − 2N 3

3

 

 

 

 

 

 

N 1 : V 1 + 0+ 0 = 1/25 N 2 : 0+ V 2 + 0 = 8/25 N 3 : 0+ 0+ V 3 = 7/25

3.1.2 LU-hajotelma

LU-hajotelmaontoiminnaltaanhyvin paljonGaussineliminoinninkaltainen.Kum-

massakin menetelmässä yhtälöryhmää muokataan lineaarisillaoperaatioilla, mutta

kunGaussineliminoinnissaetsitäänratkaisuayhtälöryhmälle(3),niinLU-hajotelmassa

etsitään ratkaisua yhtälöryhmälle

Ax = LUx = b

(6)

,missä

LU

onmatriisin

A

kolmiohajotelmaeli

A = LU

[2℄.Kolmiohajotelmanmat- riiseista

L

on alakolmiomatriisi ja

U

on yläkolmiomatriisi. Niiden laskemiseen on olemassa useita eri menetelmiä ja ne saadaan laskettua myös Gaussin eliminointia

hyödyntäen. Gaussineliminoinnillalaskien LU-hajotelman yläkolmio matriisiU on

sama,jokasaadaanGaussineteenpäin eliminoinnissaja alakolmiomatriisionniiden

kerrointen matriisi, joilla kerroinmatriisia

A

muokattiin eteenpäin eliminoinnin ai- kana [16℄. Esimerkiksi jos kappaleessa 3.1.1 esitetyn Gaussin eliminointi esimerkin

mukaisesta kerroinmatriisista muodostetaan yläkolmio ja alakolmio matriisit. Niin

(18)

U =

3 1 2 0 4 −1 0 0 6.25

, eli se onsama kuinGaussin eliminointiesimerkissä eliminointivaiheenjälkeen tu-

lokseksi saatu yläkolmiomatriisi.Kyseisen esimerkinLU-hajotelman alakolmiomat-

riisi taas on eteenpäin suoritettujen eliminointien

N 2 = N 2 − N 1 , N 3 = N 3 − N 1

,

sekä

N 3 = N 3 − 1 4 N 2

mukainen.

L =

1 0 0 1 1 0 1 1 4 1

Ylä- ja alakolmio matriisien muodostamisen jälkeen yhtälö (6) ratkaistaan kuten

Gaussin eliminoinnissa,mutta eteenpäin eliminointivaihe suoritetaanyhtälölle

Ly = b

ja sen jälkeen taaksepäin sijoitusyhtälölle

Ux = y.

3.1.3 Permutaatiomatriisi

Permutaatiomatriisionmatriisi,jossaonyksi nollastapoikkeavaalkiojokaistariviä

jasaraketta kohti,sekäjokaisennollastaeroavanalkionarvoon1.Permutaatiomat-

riisitoteuttaa seuraavatyhtälöt

n

X

i=1

p ij = 1, 1 ≤ j ≤ n

n

X

j=1

p ij = 1, 1 ≤ i ≤ n

(19)

tiomatriisi onkuten yksikkömatriisi, mutta permutaatiomatriisinjokainen nollasta

poikkeva alkioei sijaitse matriisindiagonaalilla,kuten yksikkömatriisissa. Siten jo-

kainenpermutaatiomatriisivoidaanjohtaa yksikkömatriisistamuuttamallayksikkö-

matriisinrivien järjestystä.

Permutaatiomatriisiatarvitaaniteratiivisissamenetelmissä,kundiagonaaliluku-

ja on tarve muuttaa. Sitä käytetään myös joskus Gaussin eliminoinnissa tai LU-

hajotelmassa, kun jokin matriisin diagonaalialkioista

a ii

on arvoltaan 0. Tällöin

yhtälöryhmä on mahdotonta ratkaista muokkaamatta sitä, koska tuntemattoman

muuttujankerroinon0.Gaussineliminoinnissatilanteenpystyy kylläkinsitätoden-

näköisemminkorjaamaanpermutaatiomatriisinlisäksimyösyhtälöillä(4),(5), mitä

varhaisemmassa vaiheessa yksinkertaistus on. LU-hajotelmassa tilanteen korjaami-

nenpelkästäänyhtälöitä(4),(5)käyttäen onkuitenkin mahdotonta,koskamatriisit

Lja U ovat kolmiomatriiseja.Tilanteen korjaamiseksi tarvitaanrivienvaihtoa, joka

onnistuu juuri permutaatiomatriisinavulla.Jos esimerkiksi rivien1 ja 2 järjestystä

täytyy muuttaa, onpermutaatiomatriisimuotoa

P =

0 1 0 . . . 0 1 0 0 . . . 0 0 0 1

.

.

. .

.

. .

.

.

0 0 1

.

Rivienjärjestysmuuttuukertomallayhtälöryhmä(3)permutaatiomatriisillasenva-

semmaltapuolelta

P Ax = P b.

Permutaatiomatriisiavoikäyttäämyössarakkeidenjärjestyksenmuuttamiseen,mut-

tasilloinyhtälöryhmä(3)kerrotaanpermutaatiomatriisillasen oikealtapuolelta,ei-

kä vakioarvoja kerrota

AxP = b.

Permutaatiomatriisia voidaan käyttää myös suorien ja iteratiivisten menetelmien

(20)

naalielementtienarvotkasvavatverrattunamuihinarvoihinjapermutaatiomatriisin

avulla diagonaaliarvoja voidaanjoskus suurentaa verrattuna muihinarvoihin.

3.1.4 Gauss-Jaobin menetelmä

Gauss-JaobinmenetelmäeioleGaussineliminoinninjaLU-hajotelmantavoinsuora

menetelmä, vaan se on iteratiivinen menetelmä. Yhtälöryhmän (3) kerroinmatriisi

A hajotetaanmuotoon

A = L + D + U

[19℄, missä

L =

0 0 · · · 0 a 21 0

... ...

.

.

. .

.

. .

.

.

0

a n1 · · · a n,n − 1 0

D =

a 11 0 · · · 0 0 a 22

.

.

. .

.

.

.

.

. .

.

. .

.

.

0 0 · · · 0 a nn

U =

0 a 12 · · · a 1n

0 0

... ...

.

.

. .

.

. .

.

.

a n − 1,n

0 · · · 0 0

 .

Kyseisessä hajotelmassa esiintyvät matriisit

L

,

U

eivät kuitenkaan ole samat kuin

kappaleessa 3.1.2 esitetyt LU-hajotelman

L

,

U

matriisit. Yhtälön

A = L + D + U

avulla yhtälö(3) saadaanmuotoon

(L + D + U )x = b

(7)

Dx = b − (L + U )x

(21)

x = D 1 b − D 1 (L + U )x

(8)

ja johonsijoitetaanalkuarvaus mahdollisenratkaisunarvoista.Yleensä alkuarvauk-

sena käytetään arvoja

x = [0, ..., 0] T

. Alkuarvaus sijoitetaan yhtälöön (8) ja lasku- vaiheen k iteraatiovoidaan esittääseuraavasti

x (k) = D 1 b − D 1 (L + U )x (k 1)

(9)

Suoraankerroinmatriisin

A

kertoimillalaskettunayhtälö(9)voidaankirjoittaamyös muotoon

x (k) i = 1 a ii

n

X j = 1 j 6= i

(−a ij x (k j 1) ) + b i

, i = 1, 2, ..., n.

Esimerkki Gauss-Jaobin menetelmän käytöstä

3 1 2 3 5 1 3 2 8

 x =

 1 2 3

Yhtälöryhmän ratkaiseminen aloitetaantekemällä kerroinmatriisistahajotelma.

L =

0 0 0 3 0 0 3 2 0

, D =

3 0 0 0 5 0 0 0 8

, U =

0 1 2 0 0 1 0 0 0

Hajotelman tekemisen jälkeen on valittava alkuarvaus

x (0) = [0, 0, 0] T

, joka sijoite-

taan yhtälöön (9)ja saatu yhtälöryhmä ratkaistaan.

(22)

Dx (1) = b − (L + U )x (0)

3 0 0 0 5 0 0 0 8

 x (1) 1 x (1) 2 x (1) 3

=

 1 2 3

0 1 2 3 0 1 3 2 0

 x (0) 1 x (0) 2 x (0) 3

3 0 0 0 5 0 0 0 8

 x (1) 1 x (1) 2 x (1) 3

=

 1 2 3

0 1 2 3 0 1 3 2 0

 0 0 0

3x (1) 1 0 0 0 5x (1) 2 0 0 0 8x (1) 3

=

 1 2 3

 x (1) 1 = 1/3 x (1) 2 = 2/5 x (1) 3 = 3/8

Yhtälöryhmän ratkaisemisen jälkeen saatu tulos sijoitetaan uudelleen yhtälöön (9)

ja yhtälöryhmä ratkaistaan.

3 0 0 0 5 0 0 0 8

 x (2) 1 x (2) 2 x (2) 3

=

 1 2 3

0 1 2 3 0 1 3 2 0

 x (1) 1 x (1) 2 x (1) 3

3x (2) 1 0 0 0 5x (2) 2 0 0 0 8x (2) 3

=

 1 2 3

 1.15 1.375

1.8

3x (2) 1 0 0 0 5x (2) 2 0 0 0 8x (2) 3

=

−0.15 0.625

1.2

x (2) 1 = −0.05

x (2) 2 = 0.125

x (2) = 0.15

(23)

3.1.5 Gauss-Seidelin menetelmä

Gauss-SeidelinmenetelmäonGauss-Jaobinmenetelmäntavoiniteratiivinenjamuu-

tenkin hyvin samankaltainen kuin Gauss-Jaobin menetelmä. Ainoana erona voi-

daan pitää sitä, että yhtälön (8) sijastaratkaistaanyhtälö

(L + D)x = b − Ux

x = (L + D) 1 b − (L + D) 1 x

(10)

, eli yhtälöä (7) muokataan vain toisin ja siten yhtälöryhmän ratkaisulle saadaan

erilaiset lähtökohdat, kuin Gauss-Jaobin menetelmässä. Yhtälö (10) voidaan kir-

joittaakerroinmatriisin

A

kertoimienavulla myös muotoon[7℄.

x (k) i = 1 a ii

b i −

i − 1

X

j=1

(a ij x (k) j ) −

n

X

j=i+1

(a ij x (k j 1) )

!

Kyseisestä yhtälöstä voidaan havaita, että iteraatioissa hyödynnetään myös saman

iteraatiovaiheenaiemmin laskettuja arvoja

x (k) j

. Eli myös tältä osin Gauss-Seidelin menetelmäpoikkeaaGauss-Jaobinmenetelmästä,silläGauss-Jaobinmenetelmäs-

sä hyödynnetään jokaisessa iteraatiossa vain edellisessä iteraatiovaiheessa saatuja

arvoja.

Esimerkki Gauss-Seidelin menetelmän käytöstä Yhtälöryhmänratkaisemi-

nenGauss-SeidelinmenetelmälläeteneehyvinsamanlaisestikuinGauss-Jaobinme-

netelmässä. Vain yhtälö (10), johon hajotelman osat ja alkuarvaus sijoitetaan on

erilainen.

3 1 2 3 5 1 3 2 8

 x =

 1 2 3

(24)

L =

0 0 0 3 0 0 3 2 0

, D =

3 0 0 0 5 0 0 0 8

, U =

0 1 2 0 0 1 0 0 0

(D + L)x (1) = b − Ux (0)

3 0 0 3 5 0 3 2 8

 x (1) 1 x (1) 2 x (1) 3

=

 1 2 3

0 1 2 0 0 1 0 0 0

 x (0) 1 x (0) 2 x (0) 3

3x (1) 1 0 0 3x (1) 1 5x (1) 2 0 3x (1) 1 2x (1) 2 8x (1) 3

=

 1 2 3

 x (1) 1 = 1/3

x (1) 2 = (2 − 1)/5 = 1/5 x (1) 3 = (3 − 1 − 2/5)/8 = 0.2

3 0 0 3 5 0 3 2 8

 x (2) 1 x (2) 2 x (2) 3

=

 1 2 3

0 1 2 0 0 1 0 0 0

 x (1) 1 x (1) 2 x (1) 3

3x (2) 1 0 0 3x (2) 1 5x (2) 2 0 3x (2) 1 2x (2) 2 8x (2) 3

=

 1 2 3

 0.6 0.2 0

3x (2) 1 0 0 3x (2) 1 5x (2) 2 0 3x (2) 1 2x (2) 2 8x (2) 3

=

 0.4 1.8 3

 x (2) 1 = −2/15

x (2) 2 = (1.8 − 0.4)/5 = 0.28

x (2) 3 = (3 − 0.4 − 2 · 0.28)/8 = 0.255

(25)

3.2 Epälineaariset yhtälöryhmät

3.2.1 Yksiulotteinen Newtonin menetelmä

Newtonin menetelmä on Sir Isaa Newtonin kehittämä iteratiivinen laskumenetel-

mäfunktioidennollakohtienetsimiseksi.SetunnetaanmyösNewton-Raphsoninme-

netelmänä ja sitä sovelleteen usein erityisesti epälineaarisissa yhtälöissä. Sitä voi-

daan käyttää yhtälöiden ratkaisemiseen muuttamalla yhtälö

f (x) = a

muotoon

f (x) − a = 0

, jolloin funktion

f (x) − a = 0

nollakohta on samalla myös yhtälön

f (x) = a

ratkaisu. Edellytyksenä menetelmän käytölle on kuitenkin, että funktio

on juuren läheisyydessä kahdesti derivoituva ja että

f

´

(x) 6= 0

. Menetelmä lähtee

liikkeelle alkuarvauksesta, jonka arvoa parannetaan iteratiivisesti vaihe vaiheelta.

Graasesti kuvan6 mukaan tarkasteltuna arvonparantaminentapahtuu seuraavas-

ti. Funktiolle

f(x)

lasketaan tangentti

g(x)

alkuarvauspisteessä

x 0

. Tangentti voi-

daan laskea yhtälön (11) mukaisesti

g(x) − f(x 0 ) = f (x 0 )(x − x 0 )

(11)

ja saadaan

g(x) = f (x 0 )(x − x 0 ) + f (x 0 ).

(12)

Lähtöarvauksen parantamiseksi täytyy saada selville tangenttiyhtälön

g(x)

nolla-

g(x) = 0

(26)

x = x 1 = x 0 − f(x 0 ) f (x 0 ) .

Saatu luku

x 1

on uusi ja samalla todennäköisesti myös tarkempi approksimaatio funktion

f (x)

nollakohdalle. Approksimaation parantamiseksi iteraatio toistetaan jalasketaannollakohtafunktion

f (x)

,kohdan

x 1

tangentille.Samaatoistetaankun- nes

x n+1 − x n < haluttu tarkkuus

.Yleisesti iteraationeteneminen voidaan esittää

seuraavassa muodossa.

x n+1 = x n − f (x n )

f (x n )

(13)

Newtoninmenetelmässäkäytettyalkuarvaus

x 0

voiollasatunnainen,mutta me- netelmätoimiisitävarmemminmitälähempänäalkuarvausonfunktionnollakohtaa.

Esimerkiksi kuvan 7mukaisessagraassaalkuarvaus on liiankaukana oikeasta juu-

restajayhtälön(13)mukaanlaskettulukujonoeisuppene kohtifunktionf(x)oikeaa

juurta.

Menetelmän toimivuusonsiishyvin riippuvainen siitä,mikäalkuarvaus juurelle

asetetaan.Alkuarvonasettaminenonuseinmyösmenetelmänsoveltamisenhankalin

vaihe, etenkin tietokoneella sovellettuna ja epälineaaristen yhtälöiden tapauksessa.

Epälineaaristenyhtälöidenkohdallaalkuarvauksenasettamisentekee hankalaksise,

että niillä on hyvin tavallisesti useampi kuin yksi juuri ja jokaista juurta kohden

tarvitaanvähintään yksialkuarvaus.Yksi alkuarvausjokaistajuurta kohden eiepä-

lineaarisilla yhtälöillä kuitenkaan aina riitä, sillä kaksi eri alkuarvausta voi johtaa

(27)

jyrkänkasvun menetelmää.

3.2.2 Moniulotteinen Newtonin menetelmä

Edellä Newtoninmenetelmääsovellettiinyhden muuttujan yhtälöissä. Sitävoidaan

kuitenkin käyttää myös useamman muuttujan yhtälöiden ja yhtälöryhmien ratkai-

suissa. Oletetaanesimerkiksi, ettäfunktio

F (x) = 0

onuseammanmuuttujanyhtä-

löryhmä

f 1 (x 1 , x 2 , ..., x n ) = 0 f 2 (x 1 , x 2 , ..., x n ) = 0

.

.

.

.

.

. .

.

.

f n (x 1 , x 2 , ..., x n ) = 0

(14)

,jonkanollakohtaaapproksimoidaanNewtoninmenetelmällä.Moniulotteisennolla-

kohdan löytämiseksi yhtälö (12) on kuitenkin täydennettävä moniulotteiseen muo-

toon, eli jokaiselle funktiolle lasketaan tangettiviivan sijasta tangenttitaso ja funk-

tiosta onlaskettavatangentti sen jokaisen muuttujanmukaan.

g i (x) = f i (x (k) )+ ∂f i

∂x 1

x ( k )

(x 1 −x (k) 1 )+ ∂f i

∂x 2

x ( k )

(x 2 −x (k) 2 )+· · ·+ ∂f i

∂x n

x ( k )

(x n −x (k) n ), i = 1, ..., n

Kyseinen yhtälövoidaan esittäämyös muodossa [17℄

G k (x) = f (x (k) ) +

∂f 1

∂x 1

∂f 1

∂x 2 · · · ∂x ∂f 1 n

∂f 2

∂x 1

∂f 2

∂x 2 · · · ∂x ∂f 2 n

.

.

. .

.

.

.

.

.

∂f n

∂x 1

∂f n

∂x 2 · · · ∂f ∂x n n

(x − x (k) ) = f(x (k) ) + J (x (k) )(x − x (k) )

(15)

, missä matriisi

J (x)

tunnetaan Jaobianmatriisina. Tangenttitasojen yhtymäkoh- tien

x

selvittämiseksi 0-tasossavoidaan asettaa

G k (x) = 0

, ja yhtälö (15) saa muo-

don

(28)

x = x (k) − f(x (k) ) J (x (k) )

ja yleisemminpätevänä iteraatioyhtälönäse voidaan esittää muodossa

x (k+1) = x (k) − f (x (k) )

J(x (k) ) .

(16)

Yhtälön(16)mukaanlaskettunaJaobianmatriisistatäytyisikuitenkinlaskeakään-

teismatriisi, joka on aikaa vievää ja yhtälö kannattaa ennemmin kertoa Jaobian

matriisilla.

J(x (k) )(x (k+1) − x (k) ) = −f(x (k) )

(17)

Saatuyhtälöryhmä(17)onkätevämpijanopeampiratkaista,josyhtälöönsijoitetaan

y (k) = x (k+1) − x (k)

(18)

ja yhtälöryhmä (17) saa muodon

J (x (k) )(y (k) ) = −f(x (k) ).

(19)

Kyseessäonlineaarinenyhtälöryhmä,jokavoidaanratkaistaesimerkiksijotakinsuo-

raa menetelmä, kuten Gaussin eliminointiakäyttäen. Yhtälöryhmän ratkaisun jäl-

keensaatutulos

y (k)

voidaansijoittaayhtälöön(18)javaiheen

(k+1)

approksimaatio saadaan lasketuksi. Tämän jälkeen tulokseksi saatu approksimaatio sijoitetaanyhä

uudelleen yhtälöön (17), kunnes approksimaatioon niintarkka,kuin ontarpeen.

TeoreettisestitarkasteltunaNewtoninmenetelmäsaattaavaikuttaahyvinkinmo-

nimutkaiseltamenetelmältäepälineaaristenyhtälöryhmienratkaisemiseksi.Käytän-

nössä Newtoninmenetelmä eikuitenkaan olekovinkaan monimutkainen ja pieniai-

heenmukainenesimerkkiosoittaasenparhaiten.Oletetaanesimerkiksi,ettäratkais-

tavana on kuvan 8 mukaisesta epälineaarisesta piiristä muodostettu epälineaarinen

yhtälöryhmä.

(29)

f (v 1 , v 2 , v 3 , i 3 ) =

 

 

 

 

 

 

 

 

v 2 − v 1

1 + v 2 1 − 2 = 0

v 2 − v 3

4 + v 2 1 v 1 + v 2 2 = 0

v 3 − v 2

4 + v 4 3 − i 2 3 = 0

v 2

2 − i 3 = 0

YhtälöryhmänlinearisoimiseksionyhtälöryhmästälaskettavaJaobianmatriisi,jo-

ka voidaan laskea yhtälön (15) mukaisesti ja Jaobian matriisinyleiseksi muodoksi

saadaan

J(x (n) ) =

1.5 −1 0 0

−1 1.75 −0.25 0 0 −0.25 0.5 −2I 3

0 0, 5 0 −1

 .

Ennen Newtoninmenetelmän soveltamista onratkaisullekuitenkin vielä asetettava

alkuarvaus, joka onhyvä asettaanollapisteeseen

x (0) = (0, 0, 0, 0).

Tämän jälkeen ensimmäisen approksimaation laskemiseen voidaan käyttääyhtälöä

(30)

J(x (0) )y (0) = −f (x (0) )

1.5 −1 0 0

−1 1.75 −0.25 0 0 −0.25 0.5 −2 · 0

0 0.5 0 −1

 y 1 (0) y 2 (0) y 3 (0) y 4 (0)

=

 2 0 0 0

Kyseisen yhtälöryhmän ratkaisuksi saatu tulos,

y (0) =

2.260870, 1.391304, 0.695652, 0.695652

sijoitetaan lausekkeeseen(18) ja ensimmäisen approksimaationarvoksisaadaan,

x (1) = x (0) + y (0) =

2.260870, 1.391304, 0.695652, 0.695652

.

Saatu tulos voidaan sijoittaa uudelleen yhtälöön(19)

J(x (1) )y (1) = −f (x (1) )

ja toisen approksimaationarvoksi saadaan

x (2) = x (1) + y (1) = (2.525094, 1.787640, 2.413108, 0.893820).

Tätä voidaantoistaa yhä uudelleen, mutta jo neljännessä iteraatiossa saatu tulos

x (4) = (2.55, 1.83, 2.58, 0.91)

, onlähtöarvojen tarkkuuksienmukainen.

(31)

Luvussa 3.2.2 Newtonin menetelmää käytettiin epälineaaristen yhtälöryhmien rat-

kaisussa. Yhtälöryhmien ratkaisussa tarvittiin Jaobinmatriisia,jokavoitiinlaskea

epälineaarisesta yhtälöryhmästä. Piirin linearisointi vastaa Newtonin menetelmää

lähes täysin, mutta piirin linearisoinnissa Jaobian matriisia ei lasketa epälineaa-

risesta yhtälöryhmästä, vaan se muodostetaan linearisoidusta piiristä. Menetelmä

lähtee liikkeelle Newtoninmenetelmäntavoinalkuarvauspisteestäja piirilinearisoi-

daan kyseisessä pisteessä. Esimerkiksi jos tarkastellaan kuvan 8 mukaisesta piiriä

ja sen ainoata epälineaarista komponenttia, virtariippuvaista virtalähdettä, jonka

virtaa

i 2 3

kuvaava yhtälö voidaan linearisoida yhtälön (12) mukaisesti. Tulokseksi saatu tangenttiyhtälö

g(x) = 2x 0 (x − x 2 0 ) + x 0

kuvaa virtalähteen käyttäytymistä pisteen

x 0 = i (0) 3

läheisyydessä. Luvun 3.2.2 mukaisessa esimerkissäalkuarvaus ase- tettiin kyseisen arvon kohdalla arvoon

i (0) 3 = 0

. Asettamalla nyt sama alkuarvaus saadaantangenttiyhtälöksi

g(x) = 0

,elipisteessä

i (0) 3 = 0

linearisoitupiirionkuvan 9 mukainen.

Kuva9: Kuvan8 mukainen piirilinearisoitunapisteessä

i (0) 3 = 0

Piirinlinearisoinnintuloksenasaadusta lineaarisestapiiristävoidaanmuodostaa

(32)

f (v 1 , v 2 , v 3 , i 3 ) =

 

 

 

 

 

 

 

 

v 2 − v 1

1 + v 2 1 − 2 = 0

v 2 − v 3

4 + v 2 1 v 1 + v 2 2 = 0

v 3 − v 2

4 + v 4 3 = 0

v 2

2 − i 3 = 0

,jostavoidaanhavaita,että sevastaatäysinluvussa 3.2.2esitetynesimerkinensim-

mäisen approksimaatiovaiheen mukaista yhtälöryhmää. Yhtälöryhmän ratkaisusta

saadaan ensimmäisen iteraation arvo

i (1) 3

ja piiri voidaan linearisoida saadulla ar- vollataas uudelleen. Tätä toistetaan yhä uudelleen kuten Newtonin menetelmässä,

kunnes tulos on riittäväntarkka.

3.2.4 Jyrkän kasvun menetelmä (Steepest Desent method)

Piirin linearisointija Newtonin menetelmä ovat, sekä nopeita, että tarkkoja mene-

telmiäepälineaaristenyhtälöryhmienratkaisussa.Neovatkuitenkintarkkuudestaan

ja nopeudestaan huolimatta toiminnaltaanepävarmoja. Niiden toiminnan varmuus

riippuu hyvin pitkälti alkuarvauksesta ja mitä lähempänä alkuarvaus on ratkaisua,

sitävarmempiane toiminnaltaanovat.Joskus alkuarvausvoiollaliianhuonoratkai-

sun löytämiseksi ja sen takia ne tarvitsevatkin tuekseen laskentamenetelmän, jota

voidaan käyttää paremman alkuarvauksen tuottamiseen. Tällaiseksi menetelmäk-

si sopii hyvin jyrkän kasvun menetelmä. Jyrkän kasvun menetelmä ei kuitenkaan

ole toiminnaltaan yhtä nopea ja yksinkertainen ratkaisumenetelmä kuin Newtonin

menetelmäon jasen takiaalkuarvausta kannattaakin tarkentaa sillävainparinite-

raationverran. Nopeankasvunmenetelmälähtee Newtoninmenetelmäntavoinliik-

keellealkuarvauksesta,muttaratkaisuaeilähdetäetsimäänsuoraanyhtälöryhmästä

(14) vaan yhtälöryhmästä johdetusta funktiosta [18℄

g(x 1 , x 2 , ..., x n ) =

n

X

i=0

[f i (x 1 , x 2 , ..., x n )] 2

(20)

, jonka nollakohta on samassa pisteessä kuin yhtälöryhmän (14) ratkaisu. Nolla-

kohdan selvittämiseksi on ensin laskettava suunta, johon funktion (20) arvo lähtee

(33)

∇g(x) =

∂g(x)

∂x

1

, ∂g(x)

∂x

2

, ..., ∂g(x)

∂x

n

t

Funktion gradienttikertookuitenkin vasta suurimman muunnoksen suunnan jasen

takia on vielä laskettava kuinka suurella kertoimella

α > 0

alkuarvauksen arvoa kannattaa muuttaa.

x (n+1) = x (n) − αz = x (n) − α ∇g(x (n) )

|∇g(x (n) )|

(21)

Kyseisen

α

muuttujan arvo voitaisiinlaskea suoraanyhtälöstä

h(α) = g

x (n) − α ∇g(x (n) )

|∇g(x (n) )|

(22)

, mutta arvon suoramäärittelydierentiaalin avullaolisikuitenkin todennäköisesti

liian työlästä. Sen takia funktion (20) käyttäytymistä alkuarvauksen läheisyydessä

kannattaa vainapproksimoida.Approksimointionnistuu parhaiten Newtonininter-

polaation toisenasteen polynomin avulla

P (α) = g(x (n) ) + h 1 α + h 3 α(α − α 2 )

(23)

, missä

h 1 = g(x (n) − α 2 z) − g(x (n) − α 1 z) α 2 − α 1

h 3 = h 2 − h 1 α 3 − α 1

h 2 = g(x (n) − α 3 z) − g(x (n) − α 2 z) α 3 − α 2

jajokainterpoloifunktion(22)pisteissä

α 1 , α 2

ja

α 3

.Kyseisetkolmefunktion(22)in-

terpolaatiopistettäonvalittavasiten,ettäehdot

α 1 = 0

,

h(α 3 ) < h(α 1 )

ja

α 2 = α 3 /2

toteutuvat.Näin ollen

α 1

onaina arvoltaan0 ja

α 3

onalkuarvaus, jokavalitaansi- tenettäehtototeutuu

h(α 3 ) < h(α 1 )

.Tämänjälkeenvielälopuksiviimeinenkerroin

α 2

sijoitetaanarvojen

α 1

, sekä

α 3

puoliväliinja koska

α 1 = 0

niin voidaan suoraan

laskea

α 2 = α 3 /2

. Kyseiset arvot määrittelevätfunktion (23) ja paras yhtälön (21)

α α P (α ) = 0 α α

(34)

ja

α 3

parempi on se, joka tuo yhtälölle (22) pienemmän arvon. Paremman arvon

määrittelemisenjälkeen parempisijoitetaanyhtälöön(21) jaiteraationseuraavaar-

vo voidaan laskea. Tämän jälkeen lasketaan taas paras

α

:n arvo, sekä sen avulla

seuraavaniteraationarvo ja tätä toistetaan kunnes haluttu tarkkuus saavutetaan.

(35)

Elektroniikkapiirien käyttäytymistä voidaan analysoida usealla eri tavalla. Näitä

analysointitapoja ovat mm. tasavirta-, vaihtovirta-, transientti-, herkkyys- ja häi-

riöanalyysi. Nimensä mukaisesti jokainen näistä on kehitetty tietyn tilanteen simu-

loimistavarten.Tässätyössä kehitettyohjelmaosaasoveltaatasavirta-,vaihtovirta-

ja transienttianalyysejä.

4.1 Tasavirta-, eli DC-analyysi

Analogistenelektroniikkapiirienkäyttäytymisen simulointialoitetaantavallisestiai-

natasavirta-analyysistä.Analyysinavullasaadaanselvillepiirinoperaatiopiste.Tasavirta-

analyysissä kaikki lähteet on tasavirtaisia, joten piirin jännitteet tai virrat eivät

muutu ajan myötä ja energiaa varaavat komponentit voidaan korvata. Esimerkiksi

kondensaattorinläpikulkevavirtaonriippuvainensen yliolevanjännitteenmuutok-

sista

i = C dv

dt

(24)

ja koskajännite on aina vakio.

i = C dv

dt = C · 0 = 0

Eli kondensaattorin läpiei kulje koskaan virtaja se voidaan korvata virtalähteellä,

joka ei tuota virtaa ollenkaan, eli

i = 0

A. Induktoria sen sijaan ei voi korvata

virtalähteellä, sillä sen yli oleva jännite on riippuvainen sen läpi kulkevan virran

muutoksista

v = L di

dt

(25)

ja koskavirta onaina vakio

v = L di

dt = L · 0 = 0

Eli induktorinyli olevajännite onaina nolla ja se voidaan korvata jännitelähteellä,

(36)

yhtälöt. Yhtälötvoidaanmuodostaaesimerkiksisolmupisteanalyysinmukaisesti.Li-

neaarisesta piiristä muodostetut yhtälöt ovat lineaarisia ja niiden ratkaisemiseen

voidaan käyttää sekä suoria, että iteratiivisia menetelmiä.Työssä toteutettu ohjel-

maratkaisee lineaariset yhtälöryhmättavallisesti suoria menetelmiä kuten Gaussin

eliminointia ja LU-hajotelmaa soveltaen, mutta käyttää myös iteratiivisiamenetel-

miä, kun ratkaisun nopeus on ratkaisun tarkkuutta merkitsevämpi tekijä. Epäline-

aarisista piireistä muodostetut yhtälöt ratkaistaan sen sijaan vain iteratiivisia me-

netelmiä käyttäen. Ohjelmassa ne yritetään aluksiratkaista Newtonin menetelmän

avulla, mutta jos iteraatioissa saadut tulokset lähtevät hajaantumaan sovelletaan

jyrkän kasvun menetelmää muutaman iteraationverran ja lopuksi arvoa tarkenne-

taan Newtonin menetelmänavulla.

4.2 Vaihtovirta- eli AC-analyysi

Tasavirta-analyysin jälkeen tiedossa on jo piirin operaatiopiste, eli piirin kaikkien

kytkentäpisteidenjännitteettunnetaan.Tämänjälkeenonuseinvieläsaatavaselvil-

lepiirintaajuusriippuvuus,elimitenvaihtovirtaisenjavakaansignaalintaajuusvai-

kuttaa piirin käyttäytymiseen. Kyseinen analysointionnistuu vaihtovirta-analyysin

avulla.Vaihtovirta-analyysinsuorittamisenehtonaonkuitenkin,ettäkaikkienpiiris-

sä olevien vaihtovirtaisten lähteiden signaalitovat sinusoidaalisiaja niiden taajuus

on sama. Vaihtovirta-analyysi aloitetaan luvussa 4.1 esitellyn tasavirta-analyysin

mukaisesti. Operaatiopisteen laskemisen jälkeen esimerkiksi diodit korvataan ope-

raatiopisteen mukaan lasketuilla sijaiskytkennöillä. Myös taajuusriippuvaiset kom-

ponentitkorvataan kuvan10 mukaisillalinearisoiduillasijaiskytkennöillä.

(a)Kondesaattorinsijaiskytkentä (b)Induktorinsijaiskytkentä

Kuva10: Taajuusriippuvaisten komponenttien sijaiskytkennät

(37)

analyysissä. Ainoana erona tavalliseen tasavirta-analyysin voidaan pitää sitä, että

kun tasavirta-analyysissä yhtälöt muodostettiin kokonaan reaalisista arvoista niin

vaihtovirta-analyysissämukana on myös kompleksisia arvoja. Ohjelman toiminnan

laajentaminentasavirta-analyysistävaihtovirta-analyysiineituoohjelmankoodauk-

seen kovin suuria muutoksia. Vaihtovirta-analyysin toteuttamiseksi ohjelmaan on

vain lisättävä mahdollisuus piensignaalimallin luomiseen sekä kompleksisten arvo-

jen käsittelyyn.

4.3 Transienttianalyysi

Vaihtovirta- ja tasavirta-analyysissä analysoidaan miten piiri käyttäytyy vakaassa

tilassa. Piiri ei kuitenkaan aina ole vakaassa tilassa. Piirissä voi esiintyä häiriösig-

naaleja,jotkahäiritsevätjamuuttavatpiirinkäyttäytymistä.Vaikkahäiriösignaaleja

ei olisi, niin piiri ei kuitenkaan saavuta vakaata tilaa välittömästi virran kytkemi-

senjälkeen.Piirinsuunnittelussaonotettavahuomioonmyösmahdollisetepävakaat

tilatjatutkittavamitenpiiriniissäkäyttäytyy.Epävakaidentilojensimulointiinkäy-

tetään aikakehitys eli transienttianalyysiä, joka tutkii miten piirin käyttäytyminen

muuttuu aikakehityksen myötä. Resistiivisissä piireissä aikakehityksen tutkiminen

on melko helppoa ja tavallisesti niiden aikakehitys voidaan hahmottaa jo nopealla

päättelyllä, sillä niissä kaikki piirin arvot hetkellä

t

ovat suoraan riippuvaisia läh- teiden arvoista hetkellä

t

. Resistiivisillä piireillä ei kuitenkaan ole kovinkaan laaja sovellettavuus ja sen takia usein käytetään myös energiaavaraavia komponentteja,

kutenkondesaattoreitajainduktoreita,joissajännitteenjavirranvälinenriippuvuus

on lineaarisen sijasta dierentiaalinen (24), (25). Kyseiset yhtälöt voidaan esittää

myös integraalisessamuodossa

v(t) = 1 C

ˆ t

−∞

i(t)dt

(26)

i(t) = 1 L

ˆ t

−∞

v (t)dt

(27)

ja ne osoittavat, että kondensaattorin jännite, sekä induktorin virta hetkellä

t

on

t

Viittaukset

LIITTYVÄT TIEDOSTOT

Ida Aalle huomautti, että sosialidemokratisen liikkeen on m ah ­ doto n ottaa itselleen mitään erikoisuskontunnustusta suosiakseen, koska liike on kansainvälinen, ja

Laske piirin j¨annite u(t) ajan funktiona ja vastuksessa kuluva teho... Laske piirin j¨annite u(t) ajan funktiona ja vastuksessa

Stabiilin piirin siirtofunktion navat eli piirin ominaistaajuudet sijaitsevat vasemmassa s- puolitasossa tai jω -akselilla yksinkertaisina. T¨am¨a piiri on

Esimerkiksi vapaa- muurarit oli äärioikeistolaisissa piireissä Hanskin mukaan myös helppo nähdä juutalaisten maail- manlaajuisena metkuiluna ja syypäänä moniin

”Uskon nimittäin, että mo- nilla on ’konstituutioteoriaa’ kohtaan saman- kaltaisia epäilyjä kuin minulla ja että julkinen keskustelu asiasta – saanen sanoa: meidän

Määrättiin 1813 ylöskantokirfori'ksi 'Kajaanin kihla- kunnassa ja nimitettiin Hyrynsalmen piirin nimismiehei ksi 23.. Utafär- jän varusmestarin Mats Henir1k Spoof- ven

olivat piirin mestaruuskilpailut Laitilassa, mutta Jyskeen aktiivi­.. urheilijat olivat

Lopuksi Koptjevskaja-Tamm esittää mielenkiintoisen teorian siitä, että itämeren- suomalaisten kielten typologisesti epätaval- linen partitiivikonstruktio (ja myös parti-