Van der Polin yhtälö

RLC-virtapiirissä oleva vastus vaikuttaa varsin olennaisesti piirissä esiintyviin värähtelyilmiöihin. Kuitenkin aivan uuden elementin komponenttitekniikkaan toivat aikoinaan puolijohdediodeja edeltäneet tyhjiöputket. Tyhjiöputken toiminta perustuu siihen, että putken katodia hehkutetaan ohjausjännitteellä, joka saa sen elektronit karkaamaan tyhjiöön. Putken yli olevan jännitteen ollessa myötäsuuntaan, eletkronit etenevät anodille ja virta kulkee putken läpi. Korkeilla virran arvoilla rajoitettu kuljettajaelektronijoukko aiheuttaa  ohmisen vastuksen putken läpi kulkeville elektroneille; tämä vastus kasvaa virran myötä. Virran ollessa heikko putkessa oleva hehkutusjännite ja sen vapauttamat elektronit helpottavat virran kulkua ja putki toimii negatiivisen vastuksen tavoin. Tämä muodostaa uuden, mielenkiintoisen ilmiön: itseaiheutetut oskillaatiot. Näiden oskillaatioiden kuvaamiseen käytetään van der Polin yhtälöä.

Tilanteen lähtökohta on hyvin samankaltainen kuin RLC-virtapiirin yhtälön muodostamissa. Piirissä syntyvät jännitehäviöt perustuvat induktanssiin, resistanssiin ja kapasitanssiin. Kun yhtälö  muodostetaan, nämä tekijät ovat

(Subscript[E, L])=L ((d I(t))/(d t))                                                         käämin yli, 
(Subscript[E, R])=μ  ( (1/3) ((I(t))^3) - I(t))                           tyhjiöputken yli    sekä
(Subscript[E, C])=(1/C)∫I(t)\[DifferentialD]t                                                 kondensaattorin yli.

Ainoa ero syntyy siis tyhjiöputken vastuksesta, joka vakioresistanssin sijaan riippuukin virran suuruudesta yllä esitetyllä tavalla. Virta on vastustermissä merkitty suureettomaksi, siis itse asiassa ((I(t))/([A])). Piirretään kuvaaja tyhjiöputken ohmisen vastuksen virtariippuvuudelle.

Plot[(i^3)/3 - i, {i, 0, 3}]

Vastus on siis alhaisilla virran arvoilla negatiivinen, ja tyhjiöputken hehkutuksen jännitelähde syöttää energiaa systeemiin. Korkeammilla virran arvoilla vastus muuttuu positiiviseksi.

Piirin yhtälö on

E(t)=L ((d I(t))/(d t))+μ((1/3) ((I(t))^3) - I(t)) +(1/C)∫I(t)\[DifferentialD]t.

Jos piiriin ei syötetä alkuhetken jälkeen ulkoista jännitettä (E(t)=0), saadaan virran suhteen derivoimalla homogeeniyhtälö

L (((d^2)I(t))/(d (t^2)))+μ(((I(t))^2)-1) ((d I(t))/(d t))+(1/C)I(t)=0.

Mikäli induktanssi ja kapasitanssi skaalataan ykkösiksi, tämä on perinteinen van der Polin yhtälö. Ratkaistaan yhtälön virta ajan funktiona.

Laskujen aluksi on syytä hävittää mahdollisista aiemmista laskuista jääneet muuttujat:

Remove["Global`*"]

Yhtälö normaaliryhmän muotoon kirjoitettuna on

ryhma =  {i'[t]  == v[t], 
        L v'[t] + μ (i[t]^2 - 1) v[t] + i[t]/C == 
          0}

tuntemattomat =  {i[t], v[t]}

Annetaan vakioille arvot ja muodostetaan alkuehto:

ryhma1 =  
      ryhma /. {L -> 0.1, 
          C -> 0.001, μ -> 0.5}

alkuehto1 = {i[0] == 0.5, v[0] == 0.0}

Ratkaistaan yhtälöryhmä ja sievennetään tulos:

rtk =  
      NDSolve[Flatten[{ryhma1, alkuehto1}], tuntemattomat, {t, 0, 2}, 
        MaxSteps -> 3500]

virta1 =  tuntemattomat /. First[rtk]

Piirretään kuvaaja virralle:

Plot[virta1[[1]], {t, 0, 2}, 
      PlotStyle -> RGBColor[0, 0, 1], GridLines -> Automatic, 
      PlotRange -> {-2.5, 2.5}]

Systeemi käyttäytyy van der Polin yhtälöille tyypillisellä tavalla. Se kehittää virran oskillaatiota, joka kasvaa saturoituen raja-arvoonsa. Huomaa kuitenkin, että alkuvirta tai sen muutos on välttämätön vahvistumisen käynnistämiseksi.

Tarkastellaan systeemiä vielä tilanteessa, jossa alkuvirta on saturaatioarvoa merkittävästi suurempi.

alkuehto2 = {i[0] == 5.0, v[0] == 0.0}

Ratkaistaan yhtälöryhmä ja sievennetään tulos.

rtk2 =  
        NDSolve[Flatten[{ryhma1, alkuehto2}], 
          tuntemattomat, {t, 0, 1}, 
          MaxSteps -> 3000];
virta2 =  tuntemattomat /. First[rtk2]

Piirretään virralle kuvaaja.

Plot[virta2[[1]], {t, 0, 1. }, 
      PlotStyle -> RGBColor[0, 0, 1], 
      GridLines -> Automatic]

Esiin tuli van der Polin yhtälön toinen ominaispiirre. Se rajoittaa erittäin tehokkaasti ylisuuria oskillaatioita ja tuo ne saturaatioarvoonsa. Näin tyhjiöputkipiiri toimii todella tehokkaana värähtelyn tasaajana.

Seuraava kuva esittää tilannetta faasitasossa, jolloin akseleilla ovat virta ja sen aikaderivaatta. Tarkastellaan kehitystä matalalla alkuvirralla (vihreä), korkealla alkuvirralla (sininen) sekä tasapainotilanteessa (punainen). Huomaa derivaatan arvon skaalaus tekijällä (1/100).

kuva1 = 
        ParametricPlot[{virta1[[1]], virta1[[2]]/100}, {t, 
            0. , 0.8}, DisplayFunction -> Identity, 
          PlotStyle -> 
            RGBColor[0, 1, 0]];
kuva2 = 
        ParametricPlot[{virta2[[1]], 
            virta2[[2]]/100}, {t,  .0, 0.35}, 
          DisplayFunction -> Identity, 
          PlotStyle -> 
            RGBColor[0, 0, 1]];
raja = 
        ParametricPlot[{virta1[[1]], virta1[[2]]/100}, {t, 
            1.9, 2. }, DisplayFunction -> Identity, 
          PlotStyle -> 
            RGBColor[1, 0, 0]];
Show[kuva1, kuva2, raja, AspectRatio -> Automatic, 
      DisplayFunction -> $DisplayFunction]

Tehtävä

Tämä diagrammi osoittaa hyvin selkeästi van der Polin yhtälön käyttäytymistavan. Faasitason tasapainokäyrä on ympyränmuotoinen sopivalla μ:n arvolla, mutta tekijän μ suurentaminen johtaa toisenlaisiin värähtelykuvioihin. Kuinka suureksi μ tulee määrittää, ennen kuin piirin värähtelyssä alkaa esiintyä kulmikkuutta? Miksi piiri käyttäytyy siten?

JP & SKK 09.05.2001