Lineaarinen rekursio · lämpöyhtälö
Huoneen lämpötilat on jaettu ruutuihin. Jokaisella aika-askeleella ruutujen lämpötila lasketaan edellisistä lämpötiloista yksinkertaisella säännöllä, ja siitä syntyy lämmön leviäminen.
Ruudukon jokaisessa ruudussa on yksi luku: lämpötila huoneenlämpöön verrattuna. Aikaa mitataan aika-askelilla n = 0, 1, 2, …
Seuraavan ajanhetken lämpötilat lasketaan edellisen hetken lämpötilojen perusteella. Tällaista laskentaa sanotaan rekursioksi: tila n + 1 saadaan tilasta n.
Lämpötilan jakautuessa jokainen ruutu luovuttaa naapureilleen osuuden 4α omasta lämmöstään. Sisäruuduissa naapureita on neljä, joten jokainen naapuri saa osuuden 4α.
Ruudun (i, j) uusi lämpötila määräytyy siis kaavalla
Tässä α = 0,2 ja q on lähdetermi. Jos ruudussa on lämmönlähde, siihen lisätään lisäksi lämpöä joka aika-askeleella lämpölähteen tehon antaman vakion verran. Nämä lämpölähteiden aikaansaamat muutokset on asetettu komponenteiksi vektoriin q. Jos ruudussa ei ole lämmönlähdettä, vastaava vektorin q komponentti on nolla.
Kun α = 0,2, sääntö sievenee: kauempana seinistä ruudun uusi lämpötila on ruudun ja sen neljän naapurin keskiarvo. Lämpö virtaa kuumemmasta kylmempään, ja virtaus on sitä suurempi, mitä suurempi lämpötilaero on.
Seinät eristävät. Jos naapuri on seinää, sen paikalle ajatellaan ruudun oma lämpötila, jolloin siihen suuntaan ei virtaa mitään. Seinässä voi olla myös lämmönlähde, kuten ikkuna.
Lämpöä ei katoa eikä synny itsestään. Kun ruutu luovuttaa naapurilleen osuuden α·ΔT, naapuri saa täsmälleen saman. Kaikkien lämpötilojen summa muuttuu siis vain lähteiden verran.
Kootaan kaikkien ruutujen lämpötilat yhdeksi pitkäksi vektoriksi x(n). Huoneessa on 20 · 30 = 600 ruutua, ja lähteinä toimivat seinäruudut tulevat mukaan lisäksi. Yllä oleva sääntö kaikille ruuduille yhtä aikaa on silloin
Matriisi A kertoo, miten ruudut vaikuttavat toisiinsa. Vektori b sisältää lähteet: se on q lähderuudun kohdalla ja nolla muualla. Pienessä yksiulotteisessa huoneessa, jossa on neljä ruutua jonossa ja eristävät päät, matriisi on
Diagonaalilla on 1 − α · (naapureiden lukumäärä) ja naapureiden kohdalla α. Jokaisen rivin summa on 1, koska uusi lämpötila on aina vanhojen lämpötilojen painotettu keskiarvo.
Toistamalla sääntöä saadaan ratkaisu suljetussa muodossa:
Ensimmäinen termi kuvaa alkutilan leviämistä ja vaimenemista, toinen lähteiden kertyvää vaikutusta. Sääntö on lineaarinen: kahden erillisen tilanteen tulokset voi laskea erikseen ja laskea yhteen. Vektorin b takia kyseessä on tarkemmin epähomogeeninen lineaarinen rekursio.
Tämä simulaatio perustuu siis affiinin rekursion määrittämään vektorijonoon
Affiinien rekursioiden teoria sanoo, että rekursiolla on tasapainotila tasan silloin, kun b kuuluu matriisin I-A kuva-avaruuteen. On mahdollista näyttää, että tämä tapahtuu tasan silloin, kun vektorin b komponenttien summa on nolla, eli kun lämpölähteiden tehot ovat tasapainossa. Muussa tapauksessa kokonaislämpötila joko kasvaa tai vähenee kohti ääretöntä, joten tasapainotilaa ei voida saavuttaa.
On myös mahdollista osoittaa, että matriisilla A on ominaisarvo 1, jota vastaava ominaisavaruus on yksiulotteinen. Vastaava ominaisvektori on tasapainotila ilman lämmönlähteitä, eli vektori, jonka jokainen komponentti on sama luku (lämpö on tasaisesti jakautunut koko huoneeseen). Yhdestä tasapainotilasta saadaan kaikki muut lisäämällä tämä vektori kerrottuna skalaarilla.
Lisäksi matriisin A muut ominaisarvot ovat itseisarvoiltaan pienempiä kuin yksi, joten lämpötilat suppenevat aina tasapainotilaan, kun lämmönlähteiden tehojen summa on nolla. Tasapainotila määräytyy tällöin yksikäsitteisesti huoneen keskilämpötilasta, joka ei simulaatiossa muutu.