1 1 Johdanto Tassa paperissa kuvataan havaintoja, joita on tehty tapauksen "sylinteri vapaassa virtauksessa" testiajoissa. Testit on laskettu Siikosen

Samankaltaiset tiedostot
Teknillinen korkeakoulu CFD-ryhmä / Sovelletun termodynamiikan laboratorio

Teknillinen korkeakoulu CFD-ryhmä / Sovelletun termodynamiikan laboratorio. Liukuvan hilan reunaehdon testaus - Krainin impelleri

MUISTIO No CFD/MECHA pvm 22. kesäkuuta 2011


Kannan vektorit siis virittävät aliavaruuden, ja lisäksi kanta on vapaa. Lauseesta 7.6 saadaan seuraava hyvin käyttökelpoinen tulos:

valitseminen vaikuttaa laskennan aikana ratkaistaviin yhtälöryhmiin.

Lyhyt yhteenvetokertaus nodaalimallista SÄTEILYTURVAKESKUS STRÅLSÄKERHETSCENTRALEN RADIATION AND NUCLEAR SAFETY AUTHORITY

Teknillinen korkeakoulu CFD-ryhmä / Sovelletun termodynamiikan laboratorio. Liukuvan hilan reunaehdon implementointi FINFLOon

Matriisilaskenta Luento 8: LU-hajotelma

1 1 Johdanto Tama kirjoitelma on lahinna kirjoittajan omaan kayttoon tarkoitettu muistio artikkeleista, jotka kasittelevat lahinna kokoonpuristumattom

MS-A0003/A0005 Matriisilaskenta Malliratkaisut 5 / vko 48

y 2 h 2), (a) Näytä, että virtauksessa olevan fluidialkion tilavuus ei muutu.

Numeeriset menetelmät TIEA381. Luento 12. Kirsi Valjus. Jyväskylän yliopisto. Luento 12 () Numeeriset menetelmät / 33

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

Demo 1: Simplex-menetelmä

Matematiikan tukikurssi

Numeeriset menetelmät

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt

(c) Kuinka suuri suhteellinen virhe painehäviön laskennassa tehdään, jos virtaus oletetaan laminaariksi?

7 Vapaus. 7.1 Vapauden määritelmä

1 1 Johdanto Tassa muistiossa on tarkasteltu totuudenmukaisempien nopeuden, turbulenssin kineettisen energian ja dissipaation jakaumien kayttoa suutin

Numeeriset menetelmät

MS-A0004/A0006 Matriisilaskenta

Lineaarinen yhtälöryhmä

Chapter 1. Preliminary concepts

Johdatus lukuteoriaan Harjoitus 2 syksy 2008 Eemeli Blåsten. Ratkaisuehdotelma

Iteratiiviset ratkaisumenetelmät

Matriisi-vektori-kertolasku, lineaariset yhtälöryhmät

Kimppu-suodatus-menetelmä

Lineaarialgebra ja differentiaaliyhtälöt Laskuharjoitus 1 / vko 44

s = 11 7 t = = 2 7 Sijoittamalla keskimmäiseen yhtälöön saadaan: k ( 2) = 0 2k = 8 k = 4

Näihin harjoitustehtäviin liittyvä teoria löytyy Adamsista: Ad6, Ad5, 4: 12.8, ; Ad3: 13.8,

Gaussin lause eli divergenssilause 1

Virtaus ruiskutusventtiilin reiästä

Matriisilaskenta Laskuharjoitus 5 - Ratkaisut / vko 41

Talousmatematiikan perusteet: Luento 10. Lineaarikuvaus Matriisin aste Determinantti Käänteismatriisi

Fourier-analyysi, I/19-20, Mallivastaukset, Laskuharjoitus 7

Gaussin ja Jordanin eliminointimenetelmä

Laskuharjoitus 7 Ratkaisut

7. Differentiaalimuotoinen jatkuvuusyhtälö. KJR-C2003 Virtausmekaniikan perusteet

d sinα Fysiikan laboratoriotyöohje Tietotekniikan koulutusohjelma OAMK Tekniikan yksikkö TYÖ 8: SPEKTROMETRITYÖ I Optinen hila

Häiriöteoriaa ja herkkyysanalyysiä. malleissa on usein pieniä/suuria parametreja. miten yksinkertaistetaan mallia kun parametri menee rajalle

Talousmatematiikan perusteet: Luento 11. Lineaarikuvaus Matriisin aste Käänteismatriisi

Kanta ja dimensio 1 / 23

HENKILÖAUTOJEN KESKIKUORMITUS HELSINGISSÄ VUONNA 2004

Kohdissa 2 ja 3 jos lukujen valintaan on useita vaihtoehtoja, valitaan sellaiset luvut, jotka ovat mahdollisimman lähellä listan alkua.

Insinöörimatematiikka D

Vektoreiden virittämä aliavaruus

Vapaus. Määritelmä. Vektorijono ( v 1, v 2,..., v k ) on vapaa eli lineaarisesti riippumaton, jos seuraava ehto pätee:

Ratkaisuehdotukset LH 7 / vko 47

Kantavektorien kuvavektorit määräävät lineaarikuvauksen

Reaalilukuvälit, leikkaus ja unioni (1/2)

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

Kertaus 3 Putkisto ja häviöt, pyörivät koneet. KJR-C2003 Virtausmekaniikan perusteet

PHYS-A3121 Termodynamiikka (ENG1) (5 op)

Luento 5: Suurten lineaaristen yhtälöryhmien ratkaiseminen iteratiivisilla menetelmillä

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

Tehtävänanto oli ratkaista seuraavat määrätyt integraalit: b) 0 e x + 1

4. Kontrollitilavuusajattelu ja massan säilyminen. KJR-C2003 Virtausmekaniikan perusteet

KJR-C2003 Virtausmekaniikan perusteet, K2017 Tentti, perjantai :00-12:00 Lue tehtävät huolellisesti. Selitä tehtävissä eri vaiheet.

9. Kitkaton virtaus ja potentiaaliteoria. KJR-C2003 Virtausmekaniikan perusteet

(a) Potentiaali ja virtafunktiot saadaan suoraan summaamalla lähteen ja pyörteen funktiot. Potentiaalifunktioksi

y + 4y = 0 (1) λ = 0

Uolevin reitti. Kuvaus. Syöte (stdin) Tuloste (stdout) Esimerkki 1. Esimerkki 2

Ville Turunen: Mat Matematiikan peruskurssi P1 1. välikokeen alueen teoriatiivistelmä 2007

Kokonaislukuoptiomointi Leikkaustasomenetelmät

3 Suorat ja tasot. 3.1 Suora. Tässä luvussa käsitellään avaruuksien R 2 ja R 3 suoria ja tasoja vektoreiden näkökulmasta.

Mat Lineaarinen ohjelmointi

2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio

Johdatus tekoälyn taustalla olevaan matematiikkaan

5. OSITTAISINTEGROINTI

Inversio-ongelmien laskennallinen peruskurssi Luento 7 8

J. Virtamo Jonoteoria / Prioriteettijonot 1

Mikäli huomaat virheen tai on kysyttävää liittyen malleihin, lähetä viesti osoitteeseen

Algoritmit 1. Luento 3 Ti Timo Männikkö

F dr = F NdS. VEKTORIANALYYSI Luento Stokesin lause

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

KJR-C2003 Virtausmekaniikan perusteet, K2017 Tentti, perjantai klo 12:00-16:00 Lue tehtävät huolellisesti. Selitä tehtävissä eri vaiheet.

ja λ 2 = 2x 1r 0 x 2 + 2x 1r 0 x 2

Injektio (1/3) Funktio f on injektio, joss. f (x 1 ) = f (x 2 ) x 1 = x 2 x 1, x 2 D(f )

Avaruuden R n aliavaruus

Insinöörimatematiikka D, laskuharjoituksien esimerkkiratkaisut

f(x, y) = x 2 y 2 f(0, t) = t 2 < 0 < t 2 = f(t, 0) kaikilla t 0.

Johdatus verkkoteoriaan luento Netspace

2.1. Tehtävänä on osoittaa induktiolla, että kaikille n N pätee n = 1 n(n + 1). (1)

1 Matriisit ja lineaariset yhtälöryhmät

Malliratkaisut Demot

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Numeeriset menetelmät

Kurssin loppuosassa tutustutaan matriiseihin ja niiden käyttöön yhtälöryhmien ratkaisemisessa.

2.8. Kannanvaihto R n :ssä

10.2. Säteenjäljitys ja radiositeettialgoritmi. Säteenjäljitys

Symmetrisistä ryhmistä symmetriaryhmiin

Matriisilaskenta Luento 16: Matriisin ominaisarvot ja ominaisvektorit

Reuna-arvotehtävien ratkaisumenetelmät

Ominaisarvo-hajoitelma ja diagonalisointi

Liittomatriisi. Liittomatriisi. Määritelmä 16 Olkoon A 2 M(n, n). Matriisin A liittomatriisi on cof A 2 M(n, n), missä. 1) i+j det A ij.

Matriisit ja vektorit Matriisin käsite Matriisialgebra. Olkoon A = , B = Laske A + B, , 1 3 3

Ominaisarvo ja ominaisvektori

Transkriptio:

Teknillinen Korkeakoulu CFD-group/ Laboratory of Applied Thermodynamics MUISTIO No CFD/TERMO-28-98 pvm 23. kesakuuta, 1998 OTSIKKO Painekorjausyhtalon reunaehtojen testaus tapauksessa "sylinteri vapaassa virtauksessa" LAATIJA(T) Ari Miettinen TIIVISTELM A Tyossa tutkittiin painekorjausyhtalon reunaehtojen valintaa O-hilan liimausreunalla, jokavastaa monilohkoisen hilan lohkoreunaa. Liimausreunalla painekorjausyhtalolle tulisi kayttaa Dirichlet'n ehtoa p 0 ghost =0(ghost on laskenta-alueen viereinen haamukoppi). Neumannin ehtoa @p0 =0kaytettaessa laskenta alkaa helposti oskilloida (face face @n on laskenta-alueen reuna). Neumannin ehtoa kaytettaessa oskilloinnilta valtytaan, jos haamukoppien nopeudet paivitetaan fysikaalisesti liikemaarayhtaloiden ratkaisemisen jalkeen. Toimenpide kuitenkin hidastaa rinnakkaislaskentaa. SIVUJA 10 AVAINSANAT SIMPLE, pressure correction, boundary conditions TARKASTANUT Timo Siikonen June 22nd, 1998

1 1 Johdanto Tassa paperissa kuvataan havaintoja, joita on tehty tapauksen "sylinteri vapaassa virtauksessa" testiajoissa. Testit on laskettu Siikosen 2D Navier-Stokes ratkaisijan ja Pensalan 2D monihila-poisson-ratkaisijan yhdistelmalla. Siikosen ratkaisijassa on kaytetty konvektiolle eksplisiittisessa vaiheessa toisen kertaluvun upwindia ja implisiittisessa vaiheeessa ensimmaisen kertaluvun upwindia. Lisaksi implisiittisessa vaiheessa matriisien diagonaalia on painotettu pseudoaika-askeleella ja massavirheella. Implisiittisessa vaiheessa reunat on kasitelty yhden haamukopin avulla pitaen nopeuden muutos reunapinnalla nollana. Painekentta ja nopeudet on linkitetty SIMPLE-algoritmin avulla. Painekorjausyhtalon kertoimissa tarvittavat liikemaarayhtalon diagonaalin kertoimet sisalsivat edella kuvatut painotukset. Poisson-tyyppisen painekorjausyhtalon reunaehdot annettiin haamukoppien pelkistetyilla yhtaloilla. Dirichlet'n ja Neumann'in ehtojen kasittely on esitetty liitteessa 1. Monihilan harvempien tasojen reunaehdot konstruoitiin tiheimman hilan haamukoppien painekorjausyhtaloiden kertoimista (Pensala 1997), mita on niinikaan kuvattu liitteessa 1. Tassa tyoselostuksessa on tarkasteltu testitapauksen avulla lahinna monihila-algoritmiin perustuvan painekorjausyhtalon reunojen kuvausta. Lisaksi on selvitetty nopeuksien reunaehtojen fysikaalisen paivityksen tarvetta liikemaarayhtaloiden ratkaisemisen jalkeen seka optimaalisia monihilaratkaisijan ajoparametreja. 2 Testitapaus Testitapauksena kaytettiin "sylinteria vapaassa virtauksessa". Sylinterin halkaisijaan D kiinnitetty Reynoldsin luku Re D = U 1D (1) oli 30, jolloin virtaus tiedetaan olevan stationaarinen. Maaritelmassa (1) U 1 on vapaan virtauksen nopeus. Hila on esitetty kuvassa 2. Kuvassa 1 on esitetty hilan I- ja J- indeksien aloitusreunat. y,v U J x,u I Kuva 1. Laskenta-alueen topologia.

2 Kuva 2. Testiajoissa kaytetty 64 64 hila. Kuvasta 1 nahdaan, etta sylinterin alavirran puolella hilan seinat I = IMIN ja I = IMAX liimataan toisiinsa. Liimaus on ratkaisijan kannalta ongelmallinen, kun haetaan monilohkoisille hiloille yleispatevaa, yksinkertaista ja tehokasta ratkaisutapaa. Liikemaarayhtaloissakaytettiin kaikissa testiajoissa samoja reunaehtoja. Reunalla JMIN, joka on sylinterin seina, molemmat nopeuskomponentit olivat nollia ja paine ekstrapoloitiin laskenta-alueesta. Vapaan virtauksen reunalla JMAX haamukoppien arvot olivat u = U 1, v =0jap = 0, joilloin arvot laskenta-alueen reunalla "elavat" hieman. Alavirran liimauspinnoilla IMIN ja IMAX geometrisesti toisiaan vastaavien koppien nopeuksien ja paineiden arvot "vaihdettiin" keskenaan. x- ja y-suuntien liikemaarayhtalot ratkaistiin kolmella line-gauss-seidel-iteraatiolla. Tassa LGS-iteraatiolla tarkoitetaan iteraatioparia 1 LGS I-suunnassa ja 1 J-suunnassa. Laskennassa alirelaksoitiin vain painetta, ja vakiona pidetyt relaksointikertoimet olivat P =0:15 ja V =1:0. 3 Testilaskenta Kaikissa testeissa painekorjausyhtalon reunaehto vapaan virtauksen reunalla JMAX oli p 0 @p0 ghost = 0 ja sylinterin pinnalla JMIN kaytettiin ehtoa = 0. Ehdoista edellinen @n sallii "korjaavan massan" virtauksen laskenta-alueen reunan ylitse, mutta jalkimmainen ei sita salli, mika onkin luonnollinen reunaehto seinalla. Liimattavien pintojen IMIN ja IMAX painekorjauksen reunaehtoja varioitiin.

3 Laskenta ajettiin kaikissa tapauksissa samaan tarkkuuskriteeriin, joka oli jatkuvuusyhtalon massavirheen L 2 -normin arvo 10 ;9. 3.1 Neumannin ehto @p0 @n j f ace = 0 liimausreunalla Tassa ensimmaisessa testisarjassa kaytetaan painekorjausyhtalossa liimausreunalla IMIN; IMAX Neumann'in ehtoa @p0 =0,elikorjaava massavuo on nolla liimausreunalla. face @n Jaetaan testisarja kahteen osaan. Ensimmaisessa osassa jatetaan liikemaarayhtaloiden ratkaisemisen jalkeinen nopeuksien reunaehtojen (siis haamukoppien) paivitys varsinaisella reunaehtojen kasittelyn aliohjelmalla tekematta. Talloin laskenta-alueen reunan viereiset nopeuksien haamukoppiarvot paivittyvat automaattisesti aiemmin kuvatun liikemaarayhtaloiden "yksi-yli-reunan" implisiittisen vaiheen takia (muutos laskentaalueen reunalla on nolla). Tama paivittyminen patee fysikaalisesti vain kiinteilla pinnoilla, ja muun tyyppisilla reunoilla paivittyminen ei ole luonnollisestikaan yhtapitava varsinaisen reunaehtojen kasittelyn aliohjelman kanssa. Testisarjan toisessa osassa paivitetaan nopeuksien haamukoppiarvot liikemaarayhtaloiden ratkaisemisen jalkeen fysikaalisessa mielessa korrektisti reunaehto-aliohjelman avulla. Liikemaarayhtaloiden ratkaisemisen jalkeinen nopeuksien fysikaalinen reunaehtojen paivitys tai sen tekematta jattaminen vaikuttaa liimausreunan IMIN ; IMAX pintanopeuksien arvoihin ja siten edelleen solujen massavirheisiin. Molemmissa testisarjoissa suoritetaan luonnollisesti nopeuksien reunaehtojen fysikaalinen paivitys painekorjausyhtalon ratkaisemisen jalkeen ennen uuden Navier-Stokes-iteraatiokierroksen alkua. Selvitetaan lisaksi painekorjausyhtalon ratkaisutavan, LGS ja MG, vaikutusta konvergoitumiseen. Molemmilla Poisson-ratkaisijalla ajetaan testit muutamalla iteraatiolla ja hyvin suurella iteraatiokierrosten maaralla seka haetaan CPU-ajan suhteen optimi. Monihilan tapauksessa kaytetaan aina viitta hilatasoa ja V-sykli on 1-1-1-1-10-0-0-0-0, missa siis hiloja karkeistaessa lasketaan 1 LGS-iteraatio paitsi karkeimmalla hilalla 10 LGS-iteraatiota, ja tultaessa V-syklia ylospain hienoimmille hilatasoille korjataan vain tuloksia (ilman jalkisweepeja). Joissakin tapauksissa on testattu jalkisweepien vaikutusta lahinna laskenta-aikaan. 3.1.1 Ilman nopeuden reunaehtojen fysikaalista paivitysta liikemaarayhtaloiden ratkaisemisen jalkeen Tassa Neumannin reunan versiossa siis vain ensimmainen haamukoppi paivitetaan implisiittisen vaiheen reunojen kasittelyyn perustuen. Talloin u:n ja v:n muutokset pidetaan laskenta-alueen reunoilla muuttomattomina, mika ei ole yhtapitava varsinaisten reunaehtojen kanssa muualla kuin kiinteilla pinnoilla. Kaytettaessa 1-3 LGS-iteraatiota painekorjausyhtalolle, laskenta konvergoitui ongelmitta ja tulos oli "oikea", C D =1:624. Kaytettaessa neljaa tai useampaa LGS-iteraatiota, laskenta jai oskilloimaan. Sylinterin alavirran puolella oli havaittavissa epasymmetrisyytta. Parhaiten se nakyy painekorjauksissa (kuva 3.) ja alavirran nopeusvektoreissa

4 (kuva 4.a.). Optimaalisin valinta CPU-ajan suhteen oli 3 LGS-iteraatiota, jolloin CPUaika oli 103.8 s. Vastaava aika 1 ja 2 LGS-iteraatiolla oli 135.4 s ja 109.3 s. Kuva 3. Esimerkki oskilloimaan jaaneen laskennan paimekorjauskentasta. Skaalan otsikosta huolimatta kyseessa on painekorjaus eika tiheys. a) b) Kuva 4. Nopeusvektorit sylinterin alavirrassa: a) esimerkki oskilloimaan jaaneen laskennan tuloksesta, joka on selvasti epasymmetrinen b) esimerkki loppuun saakka konvergoituneen laskennan lopputuloksesta, virtaus on symmetrinen, kuten Reynoldsin luvulla Re D =30pitaa olla. Kaytettaessa yhta 5:n hilatason MG:n V-syklia 1-1-1-1-10 ilman jalkisweepeja laskenta konvergoitui. CPU-aika oli hieman alhaisempi kuin optimaallisella LGS:lla, 99.7 s (noin 96% LGS:n ajasta). Jos samoja V-sykleja laskettiin useampia (2!) tai yhden V-syklin tapauksessa kaytettiin jalkisweepeja, laskenta jai oskilloimaan. Tassa tapauksessa optimaalisin painekorjausyhtalon ratkaisutapa oli MG 1V(1-1-1-1-10) ilma jalkisweepeja.

5 3.1.2 Nopeuden reunaehtojen fysikaalinen paivitys liikemaarayhtaloiden ratkaisemisen jalkeen Tassa Neumannin reunan versiossa nopeuksien reunaehdot paivitetaan liikemaarayhtaloiden ratkaisemisen jalkeen molemmissa haamukopeissa reunojen kasittelyn aliohjelmalla fysikaalisin perustein. Kaytettaessa painekorjausyhtalolle 1-30 LGS-iteraatiota laskenta konvergoitui ongelmitta. Optimaalisin valinta oli 3 LGS-iteraatiota, jolloin CPU-aika oli 105.6 s. CPUaikojen erot valintojen 2-5 LGS-iteraatiota valilla oli 10% sisalla. Kun LGS-iteraatioiden maara oli 35 tai suurempi, laskenta oskilloi. Kaytettaessa 5:n hilatason V-syklia (1-1-1-1-10) ilman jalkisweepeja laskenta konvergoitui, kun V-syklien maara oli 1-6. Seitsemalla V-sylkilla laskenta oskilloi. Optimaalisin valinta oli 1 V-sykli, jolloin CPU-aika oli 100.4 s. V-syklien maaran lisaaminen kasvatti CPU-aikaa lineaarisesti: 2V 107.1 s, 3V 116.8 s,..., 6V 145.8 s. Nopeuden reunaehtojen fysikaalinen paivitys liikemaarayhtaloiden ratkaisemisen jalkeen laajentaa aluetta, jossa konvergoitunut tulos saavutetaan kaytettaessa Neumannin reunaehtoa O-hilan liimausreunalla. Eli painekorjausyhtalo voidaan ratkaista tarkemmin, jos siihen on aihetta. Sen sijaan tarvittavan CPU-ajan tarve aleni vain 5%. 3.2 Dirichlet ehto p 0 ghost = 0 liimausreunalla Kaytetaan toisessa testisarjassa painekorjausyhtalolle liimausreunalla IMIN;IMAX Dirichlet'n ehtoa p 0 ghost =0.Tarkastellaan tapausta kuten Neumannin reunaehdon tapauksessa ilman nopeuden fysikaalista paivitysta ja nopeudet fysikaalisesti paivitettyina molemmissa haamukopeissa liikemaarayhtaloiden ratkaisemisen jalkeen. Kuten edellisessa testisarjassa selvitetaan painekorjausyhtalon ratkaisutavan, LGS ja MG, vaikutusta konvergoitumiseen. Molemmilla Poisson-ratkaisijalla ajetaan testit muutamalla iteraatiolla ja hyvin suurella iteraatiokierrosten maaralla seka haetaan CPUajan suhteen optimi. Monihilan ajoparametrit on kuvattu Neumannin reunaehtoa kasittelevan testisarjan yhteydessa. 3.2.1 Ilman nopeuden reunaehtojen fysikaalista paivitysta liikemaarayhtaloiden ratkaisemisen jalkeen Seka LGS-ratkaisijalla etta MG:lla laskenta konvergoitui aina. LGS:lla testeja ajettiin 1-100 LGS-iteraatiolla ja MG:lla 1-20 V-syklilla (1-1-1-1-10) ilman jalkisweepeja. Muutamassa tapauksessa kokeiltiin jalkisweeppien kayttoa, joka ei vaikuttanut tulokseen tai mainittavasti laskenta-aikaan. LGS-iteraatioilla optimaalisin valinta oli 4 iteraatiota, jolloin laskenta-aika oli 93.2 s.

6 MG:lla optimaalisin valinta oli 1V(1-1-1-1-10), jolloin laskenta-aika oli 85.2 s. Monihilan kaytolla laskenta-aika aleni noin 10%. 3.2.2 Nopeuden reunaehtojen fysikaalinen paivitys liikemaarayhtaloiden ratkaisemisen jalkeen Seka LGS-ratkaisijalla etta MG:lla laskenta pysyi aina pystyssa johtaen konvergoituneeseen tulokseen. LGS:lla testeja ajettiin 1-100 LGS-iteraatiolla. MG:lla 1-20 V-syklilla (1-1-1-1-10) ilman jalkisweepeja. Muutamassa tapauksessa kokeiltiin jalkisweeppien kayttoa, joka ei vaikuttanut tulokseen tai mainittavasti laskenta-aikaan. LGS-iteraatioilla optimaalisin valinta oli 4 iteraatiota, jolloin laskenta-aika oli 93.9 s ja MG:lla optimaalisin valinta oli 1V(1-1-1-1-10), jolloin laskenta-aika oli 83.1 s. Monihilan kaytolla laskenta-aika aleni tassa tapauksessa noin 10%. Nopeuden reunaehtojen fysikaalinen paivitys liikemaarayhtaloiden ratkaisemisen jalkeen ei nopeuta laskentaa, eika ole konvergoitumisen kannalta valttamatonta, kun painekorjausyhtalossa kaytetaan Dirichlet'n ehtoa p 0 ghost =0. 4 Paatelmat @n Kaytettaessa liimausreunalla, joka vastaa monilohkoisen laskentatapauksen lohkoreunaa, Neumannin ehtoa @p0 =0tuloksen konvergoituminen varmistuu, kun nopeu- face det paivitetaan molemmissa haamukopeissa liikemaarayhtaloiden ratkaisemisen jalkeen. Jos liimausreunalla kaytetaan Dirichlet'n ehtoa p 0 ghost = 0 nopeuksien reunaehtojen paivitys ei ole valttamatonta, eika se edes alenna laskenta-aikaa. Reunaehtojen paivityksen valttamisesta onhyotya varsinkin rinnakkaislaskennassa. Tassa esimerkissa monihilan kaytolla saavutettiin 10% parannus laskenta-ajassa. Ero voi olla suurempikin, jos monihilalle etsittaisiin optimaaliset ajoparametrit.

7 LIITE 1. Monihila-Poisson-ratkaisijan reunaehdot tiheimmalla ja harvemmilla hilatasoilla Painekorjausyhtalo on ns. Poisson-yhtalo, jossa lahdetermina on massavirhe. Ratkaistaessa painekorjausyhtaloa AE i j p 0 i+1 j + AN i jp 0 i j+1 + AW i jp 0 i;1 j + AS i jp 0 i j;1 AP i jp 0 i j + ANE i jp 0 i+1 j+1 +ANW i j p 0 i;1 j+1 + ASE i jp 0 i+1 j;1 + ASW i jp 0 i;1 j;1 = DM i j (2) selvasti yleisimmin esiintyvat reunaehdot ovat Dirichlet'n ehdot p 0 j ghost =0jap 0 j face = 0 seka Neumann'in ehto @p0 j @n face = 0. Naiden reunaehtojen lisaksi monilohkoisessa tapauksessa voidaan joutua antamaan Dirichlet'n ehto p 0 j ghost = b, missa b 6= 0. Kehitettavassa Poisson-ratkaisijassa reunaehdot annetaan haamukoppien avulla. Laskenta-loopit ulottuvat ensimmaiseen laskenta-alueen ulkopuoliseen haamukoppi-riviin saakka, eli ne ovat tyypiltaan "yksi-yli-reunan" looppeja. Edella mainittuja seikkoja on havainnollistettu kuvissa L1.1 ja L1.2. haamukopit haamu kopit lasken ta alue haamu kopit haamukopit laskenta alueen reuna, face Poisson ratkaisijan loopin reuna katso seuraava kuva Kuva L1.1. Laskenta-alue ja sita ymparoivat haamukopit.

8 laskenta alueen reuna, face (1,j+1) (2,j+1) (3,j+1) (1,j) (2,j) (3,j) x/2 x/2 x x haamukopit laskenta alue laskenta loopin reuna Kuva L1.2. Haamukoppeihin liittyvia yksityiskohtia. Dirichlet'n ehto p 0 j face = 0 toteutetaan siten, etta vierekkaisista soluarvoista, nyt siis solut (2 j) ja (3 j), interpoloitu painekorjauksen p 0 arvo pinnalla on nolla. Ehto kirjoitetaan solulle (2 j)yhtaloa (2) pelkistaen AP 2 j p 0 2 j + AE 2 jp 0 3 j =0 (3) missa lahdetermi on nolla, eli DM 2 j =0,jayhtalon kertoimille saadaan arvot AE 2 j = AP 2 j = AP 3 j AW 2 j = AS 2 j = AN 2 j =0 ANE 2 j = ANW 2 j = ASE 2 j = ASW 2 j =0 (4) Jotta valtetaan suuret erot vierekkaisten koppien diagonaalikertoimien valilla, luetaan kertoimen AP 2 j arvoksi viereisen kopin diagonaalikerroin, AP 2 j = AP 3 j. Jos Dirichlet'n ehto on muotoa p 0 j face = b, voidaan edella kuvattua periaatetta noudattaen johtaa solun (2 j)kertoimille ja lahdetermille arvot AE 2 j = AP 2 j = AP 3 j AW 2 j = AS 2 j = AN 2 j =0 ANE 2 j = ANW 2 j = ASE 2 j = ASW 2 j =0 DM 2 j =2AP 2 j b (5)

9 missa jalleen viereisen kopin diagonaalikerroin on luettu haamukopin diagonaalille, mika nakyy luonnollisesti myos lahdetermissa. Jos Dirichlet'n ehto p 0 j ghost = 0 annetaan laskenta-alueen viereisessa haamukopissa, ainoastaan diagonaalialkio on nollasta poikkeava ja muut kertoimet seka lahdetermi ovat nollia. Tassakin tapauksessa luetaan varmuuden vuoksi diagonaalialkiolle viereisen solun diagonaalikerroin. Kertoimet ja lahdetermi ovat siis AP 2 j = AP 3 j AW 2 j = AS 2 j = AN 2 j = AE 2 j =0 ANE 2 j = ANW 2 j = ASE 2 j = ASW 2 j =0 DM 2 j =0 (6) Jos Dirichlet'n ehto on muotoa p 0 j ghost = b, saadaan solun (2 j)kertoimille ja lahdetermille arvot AP 2 j = AP 3 j AE 2 j = AW 2 j = AS 2 j = AN 2 j =0 ANE 2 j = ANW 2 j = ASE 2 j = ASW 2 j =0 DM 2 j = AP 2 j b (7) Yleinen Neumann'in ehto @p0 @n j face = b laskenta-alueen reunalla annetaan valinnoilla ;AE 2 j = AP 2 j = AP 3 j AW 2 j = AS 2 j = AN 2 j =0 ANE 2 j = ANW 2 j = ASE 2 j = ASW 2 j =0 DM 2 j = ;AP 2 j x b (8) Jos Neumann'in ehto on @p0 @n j face =0,kertoimet ovat kuten edella, mutta lahdetermi on nolla, eli DM 2 j = 0. Painekorjausyhtalon yhteydessa vain lahteeton vaihtoehto tulee kysymykseen. Jos liikemaarayhtaloiden reunaehdot annetaan laskenta-alueen reunalla face, ei painekorjauksen Neumannin reunaehtoa voida antaa luontevasti haamusolussa. Kun kyseessa on ehto @p0 @n j face = 0, p 0 j face = 0 tai p 0 j ghost = 0, voidaan monihilaratkaisijan harvemmilla hilatasoilla kayttaa suoraan edella esitettyja tiheimman hilan kertoimien ja lahdetermin laskentakaavoja. Kun reunaehtona on nollasta poikkeava Dirichlet'n ehto p 0 j face = b tai p 0 j ghost = b, ei laskentakaavoja voida lahdetermin osalta kayttaa sellaisenaan harvemmilla hiloilla. Koska kullakin harvemmalla hilatasolla

10 lasketaan seuraavaksi tiheamman hilatason korjausta, ovat tiheimman hilan reunaehtoja p 0 j face = b ja p 0 j ghost = b vastaavat harvempien hilojen Dirichlet'n reunaehdot aina j face = 0 ja j ghost = 0. Tama patee MG:lle, muttei FAS:lle. Siten Dirichlet'n reunaehdoilla harvempien hilojen haamukoppien lahdetermi on aina nolla. Kaytannossa nollasta poikkeava painekorjauksen arvo reunalla hoituu MG:lla onnekkaasti itsestaan. MG-Poisson-ratkaisijan harvemmille hilatasoille voidaan kolmea ehtoa kayttaen ohjelmoida varsinaisen probleeman reunaehdot @p0 j @n face = 0, p 0 j face = 0, p 0 j face = b, p 0 j ghost = 0 ja p 0 j ghost = b. Reunaehdon tyyppi luetaan tiheimman hilan kertoimista. Kertoimien laskentakaavat saadaan suoraan tiheimman hilan kaavoista. Harvemmilla hiloilla haamukopin lahdetermi on aina nolla.