pdf  Solmu 3/2024


Koagulaatio eli molekyylien kokoontumisajot

Petri Laarne
Väitöskirjatutkija, Helsingin yliopisto
https://www.nollakohta.fi

Kesäaamun ensimmäiset säteet lankeavat havumetsän ylle. Lyyrisempi henkilö intoutuu kuvailemaan pyörteilevässä usvassa leijuvaa metsän tuoksua. Kemisti työntää nanometriluokan mittalaitteensa sumuun ja toteaa, ettei metsän tuoksussa ole romantiikkaa vaan monoterpeenejä. Ja sitten matemaatikko kirjoittaa yhtälön, joka punoo molekyylit runoksi.

Klimppejä ilmakehässä

Vaikka edeltävät henkilöt ovatkin kuvitteellisia ja kaukaa haettuja, on tilanne tosi. Puiden uloshengityksessä vapautuu hapen lisäksi pieniä orgaanisia molekyyleja. Ne paitsi luovat metsän tuoksun, myös törmäilevät toisiinsa ja reagoivat auringonvalon kanssa.

Osa näistä molekyyleistä kasautuu yhteen isommiksi klimpeiksi, joiden ympärille voi tiivistyä vesipisara. Puhdas vesihöyry ei nimittäin tiivisty kovin helposti vaan tarvitsee jonkin epäpuhtauden, jonka ympärille kerääntyä. Osa pisaroista kohoaa muodostamaan pilviä, jotka heijastavat auringon valoa avaruuteen.

Ei ole vielä sataprosenttisen selvää, miten suuri kokonaisvaikutus juuri puista peräisin olevilla molekyyleilla on ilmastoon. Rooli on vaikeasti tutkittava muttei merkityksetön. Siinä selvitystyössä suomalaiset ilmakehätutkijat ovat kuitenkin olleet jo vuosikymmeniä maailman huippua. Mai Allon kirja [1] kertoo kohokohdat siitä tarinasta.

Tämä ei kuitenkaan ole Fysiikkalehti Solmu eikä Ilmakemialehti Solmu. Miten matemaatikko alkaisi tutkia puiden tuoksun klimppiytymistä? Mikä olisi yksinkertaisin malli, jossa jo nähtäisiin kiinnostavia ilmiöitä? Pyörteilevät ilmavirtaukset ja kemialliset reaktiot kuuluvat vasta seuraavaan tai sitä seuraavaan versioon.

Kokoontumisen yhtälö

Seuraavaa mallia yksinkertaisemmaksi on paha pistää: molekyylit ovat palleroita, joiden kokoa kuvaa luku \(x\). Jokaisella ajanhetkellä on jokin todennäköisyys sille, että kokoja \(x\) ja \(y\) olevat pallerot yhdistyvät kokoa \(x + y\) olevaksi palleroksi.

Tätä todennäköisyyttä merkitään luvulla \(K\). Tehtävänä olisi ratkaista \(f(x, t)\): funktio, joka kertoo kokoa \(x\) olevien pallojen lukumäärän ajanhetkellä \(t\). Jätetään tässä määrittelemättä kokojen, lukumäärien ja aikojen yksiköt – tulkinta olkoon fyysikoiden ongelma.

Funktio \(f\) toteuttaa yhtälön \[f(x, t+1) = f(x, t) + \text{muutos}.\] Muutostermi koostuu kahdesta osasta. Ensinnäkin kokoa \(x\) olevia palleroita muodostuu, kun kokoa \(z\) ja \(x-z\) olevat pallot yhdistyvät toisiinsa: \[\sum_{z = 1}^{x-1} K f(z, t) f(x-z, t).\] Tässä siis käydään läpi kaikki mahdolliset koot \(z\) väliltä \(1 \ldots (x-1)\) ja katsotaan, kuinka monta yhdistymistä tapahtuu. Se riippuu sekä luvusta \(K\) että \(z\)- ja \((x-z)\)-kokoisten pallojen määrästä edeltävällä ajanhetkellä.

Lisäksi tarvitaan termi palleroiden häviämiselle. Kokoa \(x\) olevia palloja katoaa, kun \((x+w)\)-kokoisia palloja syntyy. Summataan kaikkien tällaisten tapahtumien yli: \[- \sum_{w=1}^\infty K f(x, t) f(w, t).\] Tämä termi pitää vielä kertoa kahdella, koska yhden pallon syntyminen vaatii kahden pallon häviämisen. (Häviämistermissä on toinenkin summa, jossa \(x\) ja \(w\) vain ovat toisin päin. Muuttujien nimet eivät vaikuta summan arvoon, joten riittää kertoa kahdella.)

Kaiken kaikkiaan yhtälöksi saadaan siis \[\begin{aligned} f(x, t+1) = f(x, t) &{}+ \sum_{z = 1}^{x-1} K f(z, t) f(x-z, t)\\ &{}- 2f(x, t) \sum_{w=1}^\infty K f(w, t). \end{aligned}\] Tämä on näppärä muoto yhtälölle, koska se on kuin luotu simulaation ohjelmointiin. Tehdään taulukko kokoa \(1, \ldots, N\) olevien hiukkasten lukumäärille ja kirjataan siihen alkutilanne. Sitten yllä olevalla kaavalla voidaan luoda uusi taulukko seuraavan ajanhetken tilasta, ja niin edelleen. Esimerkki tästä löytyy kuvasta 1.

Kuva 1. Simulaatio, jossa \(K = 0{,}1\) ja alkutila koostuu \(1\) yksiköstä kokoa \(1\) olevia hiukkasia. Hiukkasten lukumäärä vähenee ajan kuluessa, mutta kokonaismassa pysyy samana.

Harjoitustehtävä ohjelmointitaitoiselle. Tässä kohtaa voit pysähtyä tekemään oman simulaatiosi.

Kuvasta 1 näkyy hyvin, kuinka hiukkasten kokonaismäärä alkaa pienentyä. Niiden kokonaismassa kuitenkin säilyy koko ajan samana… tiettyyn rajaan asti. Ennen pitkää osa syntyvistä hiukkasista on suurempia kuin \(N\), ja siinä kohtaa ne eivät enää tallennu taulukkoon. Kyseessä on siis simulaatiosta aiheutuva virhe.

Tämä ei kuitenkaan ole käytännössä ongelma. Fysiikan lait pitävät huolen siitä, että ilmakehässä ei pahemmin leijaile kahden tonnin painoisia hiukkasia. Painovoimasta aiheutuva luonnollinen poistuma pitäisi lisätä yhtälöön, mutta simulaatioon se tulee itsestään “kaupan päälle”.

Lisää hiukkasia!

Kesäaamuna tuoksuaan sumuttavat puut sen sijaan puuttuvat vielä. Lisätään yhtälöön funktio \(h(x)\), joka kertoo montako \(x\)-kokoista hiukkasta lisätään simulaatioon aikayksikköä kohden. Yhtälö on siis \[\begin{aligned} f(x, t+1) = &f(x, t) + \sum_{z = 1}^{x-1} K f(z, t) f(x-z, t)\\ &\quad {}- 2f(x, t) \sum_{w=1}^\infty K f(w, t) + h(x). \end{aligned}\]

Kuvassa 2 on muokattu kuvan 1 simulaatiota niin, että \(1\)-kokoisia hiukkasia syntyy koko ajan hieman lisää.

Kuva 2. Edelliseen simulaatioon on lisätty lähdetermi \(h(1) = 0{,}2\) ja \(h(x) = 0\) muulloin. Pitkän ajan kuluessa hiukkasten syntyminen ja yhdistyminen saavuttavat tasapainon, jossa kuvaaja ei enää muutu.

Harjoitustehtävä. Lisää simulaatioosi lähdetermi. Osapuilleen kuinka monen aika-askelen jälkeen simulaatio on lähellä tasapainoa?

Jatkuvaa toimintaa

On vielä yksi pieni hienosäätö, joka kannattaa tehdä. Todellisuudessa molekyylit eivät vahtaa kelloa ja sulaudu täsmälleen viisarin värähtäessä. Prosessi on jatkuva, mikä tarkoittaa derivaatoista puhumista. Päättelyketju pysyy samana, mutta funktiolle \(f\) saadaan niin sanottu differentiaaliyhtälö \[\begin{aligned} \mathrm D_t f(x, t) &{}= \sum_{z = 1}^{x-1} K f(z, t) f(x-z, t)\\ &\quad {}- 2f(x, t) \sum_{w=1}^\infty K f(w, t) + h(x), \end{aligned}\] jossa derivaatta otetaan muuttujan \(t\) suhteen.

Tällä on suuri vaikutus tuloksiin. Kuvan 1 kohdassa \(t=1\) kaikki hiukkaset ovat joko kokoa \(1\) tai \(2\), sillä yhdessä aikahypyssä ehtii tapahtua vain yksi sulautuminen. Derivaatan myötä ilmestyy muitakin kokoja: voi käydä vaikka niin, että tapahtuu kaksi \(1+1 \to 2\) -sulautumista ajanhetkillä \(t=0{,}23\) ja \(t=0{,}59\), ja sitten saadaankin jo \(2+2 \to 4\) -sulautuminen, kun \(t=0{,}92\).

Simulaation kirjoittajalle derivaattoihin siirtyminen tarkoittaa, että laskukaavaan tehdään pieni muutos: \[f(x; t + 0{,}01) = f(x; t) + 0{,}01 \cdot \text{muutostermit}.\] Tässä siis arvioidaan derivaattaa sekantin kulmakertoimella. Mitä pienemmällä luvulla \(0{,}01\) korvataan, sitä tarkempi simulaatio saadaan, mutta tarvitaan enemmän laskukierroksia yhtä aikayksikköä kohti.

Laskutapaa kutsutaan Eulerin menetelmäksi, ja se on helpoin numeerinen tapa ratkoa differentiaaliyhtälöitä. Joissakin tapauksissa se on kuitenkin epätarkka, koska derivaatan arvioinnista syntyvät virheet alkavat kertyä ja kasvaa korkoa. (Liian pienillä luvuilla tietokoneen tarkkuus ei kuitenkaan riitä laskuihin, joten tässä täytyy löytää hyvä tasapaino.)

Hieman (epä)realismia peliin

Näiden parannusten myötä kasassa on simulaatio, joka… on edelleen hyvin kaukana todellisuudesta. Klimppiytymistahdin kuvaaminen luvulla \(K\) nimittäin on tässä yhteydessä liian suuri helpotus. Se väittää, että pienet molekyylit kokevat törmäyksiä ihan yhtä usein kuin suuret. Oikeasti koolla on kuitenkin väliä.

Pikkaisen parempi idea olisi ottaa esimerkiksi \[K(x, y) = x + y \text{ tai } K(x, y) = xy.\] Tällöin klimppejä muodostuu sitä herkemmin, mitä isompia osapuolet \(x\) ja \(y\) ovat.

Tällä on valtava vaikutus tasapainotilaan (Kuva 3). Etenkin \(xy\)-funktio tarkoittaa, että \(2 + 2 \to 4\) -yhdistymisiä tapahtuu neljä kertaa niin usein kuin \(1 + 1 \to 2\) -yhdistymisiä. Jos neljällä ykköskoon hiukkasella menee sekunti yhdistyä kahdeksi kakkoskoon hiukkaseksi, niin nämä kaksi yhdistyvät edelleen puolessa sekunnissa. Jokainen askel tapahtuu edeltävää nopeammin, ja käy kuin ydinräjähdyksessä.

Kuva 3. Näissä tasapainotiloissa lähdetermi on \(h(x) = 0{,}2\) kun \(x = 1\) tai \(2\) ja muulloin \(h(x) = 0\). Funktio \(K\) vaikuttaa siihen, kuinka jyrkästi hiukkasmäärä laskee koon funktiona. Vasemmassa kuvassa pääosa massasta on pienissä hiukkasissa. Oikeanpuoleisessa taas massaa on hyvin raskaissa hiukkasissa, joita on vähemmän. Kuvien \(y\)-akselit ovat eri asteikoilla, jotta muotojen ero näkyisi selvemmin.

Simulaatiossa oli vikana, että isot hiukkaset katoavat simulaation ulkopuolelle. Mutta \(xy\)-funktion kohdalla niin tapahtuu ilmankin simulaatiota. Lyhyellä mutta teknisellä laskulla nähdään, että jonkin ajan kuluttua massaa alkaa kadota osaksi yhtä “äärettömän suurta” hiukkasta.

Fysiikan kannalta tämä on tietenkin järjetöntä. Matemaattinen malli sanoo, että vaikkapa \(0{,}0004328\) hiukkasta painaa tonnin. Näin äärimmäisessä mallissa sillä alkaa olla väliä, että oikeasti hiukkasten lukumäärä on kokonaisluku.

Mitä siis opitaan? Malli \(K = 1\) on toimiva mutta epärealistinen. Malli \(K = xy\) hajottaa jopa matemaattisen teorian. Totuuden täytyy olla jossakin näiden välissä.

Ilmakehän fysiikan kannalta realistinen malli on esimerkiksi \[K(x, y) = (x^{-1/3} + y^{-1/3})(x^{1/3} + y^{1/3}).\] Tämän valinnan perustelua ei ole ihan niin yksinkertaista selittää, mutta ideana on ajatella molekyyleja – nyt konkreettisesti – palloina, jotka liikkuvat satunnaisiin suuntiin. Kaava perustuu arvioon sille, kuinka usein eri kokoiset pallot törmäävät toisiinsa.

Harjoitustehtävä. Miten simulaatiosi tuottama tasapainotila muuttuu, kun valitaan \(K(x, y) = (xy)^\alpha\) erilaisille luvuille \(\alpha\)?

Kohti seuraavaa versiota

Tutkimamme yhtälö on nimetty puolalaisen fyysikko Marian Smoluchowskin (1872–1917) mukaan. Hän oli Einsteinin ja muiden ohella rakentamassa modernin fysiikan perusteoriaa.

Hieno juttu yhtälössä on, että se ei ole mitenkään sidottu ilmakehässä tapahtuviin juttuihin. Funktiota \(K\) vaihtamalla voidaan mallintaa monenlaisia ilmiöitä: yhtenä esimerkkinä vaikkapa kalaparvia.

Mitä yhtälöön pitäisi lisätä seuraavaksi?

Simulaatioon tuli kaupan päälle isojen hiukkasten poistuminen pelistä. Oikeasti ilmakehätieteissä tätä mallinnetaan painovoimalla: kaikenkokoisia hiukkasia putoaa maahan, mutta isot hiukkaset putoavat nopeammin.

Toinen tärkeä lisäys on, että hiukkaset voivat sulautumisen lisäksi hajota. Halkeamiset voidaan lisätä yhtälöön samanlaisella päättelyllä kuin sulautumiset, ja se muuttaa tasapainotilaa merkittävästi.

Puiden hengitys noudattaa vuorokausirytmiä, joten lähdetermi saattaa vaihdella ajan mukaan. Miten nyt edes määritellään “tasapaino” ja miten yöllinen tauko vaikuttaa hiukkasten kokojakaumaan?

Entä jos molekyylit eivät olekaan palloja? Eräät tuttuni Bonnin yliopistossa Saksassa ovat tutkineet malleja, joissa molekyylit klimppiytyvät ketjuiksi. Nämä ketjut laskostuvat pikku hiljaa lähemmäs pallon muotoa. Törmäysten määrä riippuu molekyylin pinta-alasta, joten ketjut törmäilevät toisiinsa useammin kuin pallot.

Teimme alussa myös oletuksen, että kaikki pallot koostuvat vain yhdestä aineesta. Oikeasti toki niin ei ole. Mitä jos eri aineita vapautuu ilmakehään eri suhteissa? Kuinka suuri osa klimpeistä poikkeaa koostumukseltaan keskimääräisestä? Tähän kysymykseen saatiin matemaattinen vastaus vasta muutama vuosi sitten, ja projektissa oli mukana myös helsinkiläisiä tutkijoita.

Saattaa kuulostaa oudolta, että näinkin yksinkertaiset kysymykset ovat yhä aktiivisen tutkimuksen kohteena. Syitä on kaksi: Smoluchowskin yhtälö on aika kapea-alainen, joten melko harva matemaatikko työskentelee sen parissa. Toisekseen on helppoa kirjoittaa koodinpätkä, joka simuloi yhtä erityistapausta. Fyysikoille se usein riittääkin.

Mutta miten todistaa jotain, joka pätee koko joukolle \(K\)-funktioita? Millä oletuksilla funktion valintaa pitää rajoittaa, jotta saadaan järkeviä tuloksia? Matikka antaa rajat sille, miten pitkälle fysikaalista teoriaa voi turvallisesti venyttää.

Yksinkertaistetut simulaatiot auttavat ymmärtämään, miten monimutkaiset systeemit toimivat. Sen jälkeen matemaatikot voidaan päästää irti.

Kirjoittaja kiittää Aleksis Vuoksenmaata kommenteista mutta pitää kunnian mahdollisista virheistä itsellään.

Viitteet

[1] Mai Allo (2021). Uusiin sfääreihin. Gaudeamus. Laajennettu versio kirjasta Yhdessä ilmakehässä (Suomalaisen kirjallisuuden seura, 2016).