68 3 Virtausyhtälöt ja niiden reunaehdot 3.1 Virtausyhtälöt 3.1.1 Yleistä Fysikaalisten ilmiöiden numeerisessa simuloinnissa on kyse ilmiötä kuvaavien yhtälöiden numeerisesta ratkaisemisesta. Yleensä nämä yhtälöt ovat luonteeltaan osittaisdifferentiaaliyhtälöitä, joita joudutaan eräiltä osin mallintamaan. Virtaussimuloinnissa tärkein mallinnettava asia on turbulenssi, mutta usein laskentaan liitetään suuri määrä muitakin malleja esimerkiksi reaktiivisten virtausten osalta. Ohjelmissa ratkaistaan Navier-Stokes -yhtälöitä. Alunperin termillä tarkoitettiin liikemäärän säilymisyhtälöä, mutta virtauksen kuvaamisessa tarvitaan ainakin massan säilymisen periaatetta (jatkuvuusyhtälöä) ja usein myös energian säilymisyhtälöä. Numeerisista malleista puhuttaessa termillä ’Navier-Stokes -yhtälöt’ tarkoitetaan yleensä koko yhtälöryhmää ja tätä käytäntöä noudatetaan myös jatkossa. Ohjelmissa on yleensä taseyhtälö myös kiinteän aineen lämmönjohtumiselle. Itse asiassa kyseessä on sama energian säilymisen laki, jota käytetään myös virtaavalle väliaineelle. Massan, energian ja liikemäärän säilymistä koskevat periaatteet muodostavat hyvinkin erilaisissa tilanteissa fysikaalisen mallinnuksen taustan. Joissakin virtausratkaisijoissa on mukana myös Maxwellin yhtälöt, jotka voidaan ratkaista samantyyppisillä menetelmillä kuin virtausyhtälötkin. Tällöin voidaan laskea ns. magnetohydrodynaamisia probleemoita. Käydään seuraavaksi läpi FLUENTissa käytetyt yhtälöt. Yhtälöiden johtaminen tehdään virtausopin kursseissa eikä siihen puututa tässä yhteydessä kuin kvalitatiivisesti. Yhtälöistä puhuttaessa kannattaa pitää mielessä niiden ratkaisutapa, kontrollitilavuusmenetelmä, jossa käytetään aina integraalimuodossa olevia lähtöyhtälöitä. 3.1. VIRTAUSYHTÄLÖT 69 dS V dS dV S Kuva 3.1: Äärellisen kokoinen kiinteä kontrollitilavuus. Siten esimerkiksi kuvan 3.1 kiinteälle ja äärelliselle tilavuusalkiolle pätee samanlainen massan säilymisen periaate kuin infinitesimaalisen pienelle tilavuudelle tai yhdelle laskentakopille. Tilavuuden pinnalla olevan pinta-alkion läpäisee massavirta ρVn dS, missä Vn on pintaa vastaan kohtisuora nopeus ja ρ tiheys. Massavirralle pätee ~ ρVn dS = ρV~ · dS (3.1) jolloin kokonaismassavirraksi pinnan läpi saadaan B= Z S ~ ρV~ · dS (3.2) Tasealueen sisällä olevassa infinitesimaalisen pienessä osatilavuudessa oleva massa on ρdV . Kokonaismassa saadaan integroimalla koko tasealueen yli. Saadun kokonaismassan muutosnopeus on sama kuin pinnan läpi kulkeva massavirta. Tästä saadaan massataseeksi ~=−∂ ρV~ · dS ρdV (3.3) ∂t V S Miinusmerkki tulee siitä, että virtausnopeus oletettiin positiiviseksi tasealueesta ulosZ Z päin, jolloin se pienentää alkion sisältämää massaa. Yhtälö (3.3) voidaan kirjoittaa myös muotoon ∂ ρdV + ∂t V ja soveltamalla Gaussin lausetta Z ∂ ∂t Z V ρdV + Z ~=0 ρV~ · dS (3.4) ∇ · ρV~ dV = 0 (3.5) S Z V Tästä yhtälöstä havaitaan, että massan säilymisen periaate voidaan lausua myös differentiaaliyhtälön avulla ∂ρ + ∇ · ρV~ = 0 ∂t (3.6) 3.1. VIRTAUSYHTÄLÖT 70 Yllä olevasta johdosta voidaan havaita, että ratkottaessa integraalimuotoisia yhtälöitä, ollaan tavallaan lähempänä itse fysikaalista periaatetta kuin differentiaaliyhtälössä (3.6), joka toteutuu, kuten differentiaaliyhtälöt yleensäkin, vasta rajalla dV → 0. On kuitenkin muistettava, että vaikka FLUENTin kaltainen ohjelma toteuttaa konvergoituneen ratkaisun yhteydessä aina pohjalla olevat säilymisperiaatteet, se ei tee ratkaisusta tarkkaa. Integraalimuotoisenkin yhtälön ratkaisu tasetilavuuksia pienentämällä siis lähestyy differentiaaliyhtälön ratkaisua. (Oikeastaan integraalimuotoinen ratkaisu on differentiaaliyhtälön ns. heikko ratkaisu, . Hilaa tihennettäessä vasta rajalla, jossa ratkaisu ei enää oleellisesti muutu, ratkotaan differentiaaliyhtälöä riittävällä tarkkuudella. Kuten aiemmin todettiin tarkkuusvaatimus on tapauskohtainen, mutta aina on syytä pitää mielessä, että jos laskentahila on liian harva, numeerinen ratkaisu ei ole taustalla olevan yhtälöryhmän ratkaisu. 3.1.2 Navier-Stokes yhtälöt Integraalimuotoisuus antaa mahdollisuuden soveltaa yhtälöä minkä muotoisille laskentatilavuuksille tahansa. Laskentakoppien eri muotoja oli esillä kuvassa 2.6. Esimerkiksi FLUENTin manuaalissa yhtälöt kirjoitetaan differentiaalimuodossa, mikä ei tarkoita, että ratkaisu perustuisi sen muotoisiin yhtälöihin. Massan säilymisyhtälö kirjoitetaan manuaalissa seuraavaan tensorimuotoon ∂ ∂ρ + (ρui ) = Sm ∂t ∂xi (3.7) missä on käytetty summauksen lyhennysmerkintää (kaksi samaa indeksiä tarkoittaa summausta kyseisen indeksin suhteen). Yhtälössä Sm on lähdetermi, jonka avulla voidaan mallintaa erilaisia asioita. Periaatteessa Navier-Stokes yhtälö tarkoittaa vain liikemäärän säilymislakia virtaavalle aineelle, vaikka nykyisin nimitys usein yhdistetään kolmen perusyhtälön (jatkuvuus, liikemäärä ja energia) ryhmään. Liikemääräyhtälö nopeuskomponentille ui on ∂ρui ∂ ∂p ∂τij + (ρui uj ) = − + + ρgi + Fi ∂t ∂xj ∂xi ∂xj (3.8) missä p on staattinen paine, τij jännitystensori, ρgi gravitaatiosta aiheutuva voima ja Fi sisältää muut voimat, jotka voivat muodostua esimerkiksi koordinaatiston kiihtyvästä liikkeestä, sähkö- ja magneettikentästä tai väliaineen huokoisuudesta. Liikemääräyhtälöitä ratkaistaan 2-3 kappaletta riippuen tehtäväasettelun dimensioista. 3.1. VIRTAUSYHTÄLÖT 71 Jännitystensori annetaan FLUENTin manuaalissa täydellisessä muodossa " ∂ui ∂uj τij = µ + ∂xj ∂xi !# 2 ∂ul − µ δij 3 ∂xl (3.9) missä µ on molekylaarinen viskositeetti. Manuaalin tietojen perusteella ei voi päätellä yksinkertaistetaanko kitkatermiä ohjelman sisällä. Usein yhtälön (3.9) toinen termi voidaan pudottaa pois. Koska FLUENTilla on mahdollista ratkaista myös kokoonpuristuvia yhtälöitä, jolloin tällä termillä saattaa olla merkitystä, se esitetään ainakin manuaalissa. Manuaalissa on myös jatkuvuus- ja liikemääräyhtälöiden aksiaalisymmetriset muodot. Näiden tarkoitusperä on epäselvä, koska aina voidaan käyttää karteesisia nopeuskomponentteja. Säilymismuotoinen differentiaaliyhtälö voidaan kirjoittaa Gaussin lauseen avulla integraalimuotoon (3.4) ja päinvastoin. Virtausratkaisijassa pintaintegraalin alle muodostuvaa lauseketta ns. vuota, approksimoidaan summalla laskentakopin pintojen yli. Vuo koostuu kitkattomasta osasta (ns. Eulerin yhtälöistä) ja diffuusio-osasta, johon kuuluvat kitka- ja lämmönsiirtotermit. Energian säilymisyhtälö voidaan kirjoittaa moneen muotoon ja sitä usein approksimoidaan. Koska FLUENTissa on mahdollista ratkoa isotermisiä virtauksia, energiayhtälön voi jättää poiskin. Kokoonpuristuvan ratkaisun tapauksessa (FLUENTissa ns. tiheyspohjainen ratkaisu on tällainen) energiayhtälö on sen sijaan oltava aina mukana. Energiayhtälön yleinen muoto, jota FLUENTissa sovelletaan on X ∂ρE ∂ ∂T ∂ (ρui (E + p/ρ)) = − hj ′ Jj ′ + uj τij + Sh + k ∂t ∂xi ∂xi ∂xi j′ (3.10) missä E on kokonaisenergia, k lämmönjohtavuus, T lämpötila, Jj ′ on nesteen komponentin j ′ diffuusiosta aiheutuva vuo. FLUENTissa oletetaan energiayhtälön kohdalla automaattisesti, että virtaava aine on useamman nesteen seos, jonka komponenteilla tapahtuu diffuusiota. Jos virtaava aine on esimerkiksi ilmaa, voidaan tämä diffuusiovuo jättää pois. Useamman aineen seoksella täytyy pitoisuudet ja sen avulla massaosuudet laskea eri komponenteille. Energiayhtälössä on myös lähdetermi Sh , johon kuuluu automaattisesti liikemääräyhtälön tilavuusvoimien tekemä työ. Siihen voi kuulua myös kemiallisista reaktioista vapautunut lämpö ja sen avulla voidaan mallintaa eräitä muitakin käyttäjän spesifioimia seikkoja yhdessä jatkuvuus- ja liikemääräyhtälön kanssa. Yhtälössä (3.10) E on kokonaisenergia, joka voidaan lausua ominaissisäener- 3.1. VIRTAUSYHTÄLÖT 72 gian e tai entalpian h avulla seuraavasti E =e+ V2 p V2 =h− + 2 ρ 2 (3.11) Entalpian käsittelyssä on eroja kokoonpuristuvan ja -puristumattoman virtauksen välillä. Energiayhtälö on oikeastaan monimutkaisempi kuin liikemääräyhtälö. Sen yhteydessä voidaan tehdä monia approksimaatioita, esimerkiksi jättää termejä pois, jotka joissain toisissa tilanteissa ovat tärkeitä. Laskennan suorittajan on siis oltava tarkkana näiden eri vaihtoehtojen ja ohjelman valikossa olevien optioiden suhteen. Seuraavassa eräitä huomionarvoisia seikkoja: • hitaan virtauksen alueella vuo-termissä oleva paineen tekemä työ ja kineettisen energian osuus ovat usein pieniä. Tämän vuoksi FLUENTin ratkaisija automaattisesti pudottaa nämä pois kokoonpuristumattoman virtauksen tapauksessa. Termit voidaan aktivoida käyttäen tekstikomentoa Define/Models/Energy. Käyttäjän on syytä arvioida näiden termien merkitys. Tiheyspohjaisessa ratkaisussa termit ovat aina mukana. • kitkallinen dissipaatio uj τij on usein pieni ja sekin on oletusarvoisesti poistettu painepohjaisen ratkaisijan yhteydessä. Kun Brinkmanin luku, Br, lähestyy ykköstä, on dissipaation osuus merkittävä. Luku määritellään µUe2 Br = k∆T (3.12) missä ∆T edustaa laskenta-alueessa olevaa maksimi lämpötilaeroa. Käyttäjän on siis syytä arvioida Brinkmanin luvun suuruus ja mikäli se on ykkösen suuruusluokkaa tai isompi on aktivoitava Viscous Heating optio Viscous Model paneelissa. Jos tiheyspohjaista ratkaisijaa käytetään, dissipaatiokin on automaattisesti mukana. • eri komponenttien diffuusiovuo P j ′ hj ′ Jj ′ on oletusarvoisesti kytketty pois. Termi on mahdollista kytkeä mukaan Species Model paneelin alta. Tiheyspohjaisen ratkaisun yhteydessä termi on aina mukana. • lähdetermiin Sh voidaan yhdistää reaktioista syntyvä lämpö, säteilyn osuus ja monifaasivirtauksilla faasien välinen lämmönsiirto. Näiden termien takana voi olla hyvinkin monimutkaiset mallit. 3.1. VIRTAUSYHTÄLÖT 73 3.1.3 Kiinteän aineen energiayhtälö FLUENT ratkaisee energiayhtälön kiinteille aineille hieman totutusta poikkeavassa muodossa ∂ ∂T ∂ρh ∂ui ρh = k + ∂t ∂xi ∂xi ∂xi missä h= Z T Tref ! + q ′′′ cp dT (3.13) (3.14) on entalpia ja q ′′′ lämmönkehitys tilavuusyksikköä kohden. Yhtälössä on mukana myös ’virtausnopeus’ ui , jota kiinteälle vyöhykkeelle ei lasketa, vaan annetaan syöttötietona. FLUENTissa on mahdollista antaa materiaaleille myös epäisotrooppinen lämmönjohtavuus, jolloin lämpövuo tulee muotoon ∂ ∂T kij ∂xi ∂xj ! (3.15) missä kij on lämmönjohtavuutta kuvaava matriisi. 3.1.4 Nosteen ajamat virtaukset Nostevoima on tärkeä, jos Reynoldsin ja Grashofin lukujen suhde ∆ρgh Gr = 2 Re ρu2 (3.16) ylittää arvon yksi. Vastaavasti, jos suhde on << 1 nosteella ei ole merkitystä. Jos kyseessä on pelkkä luonnollinen konvektio, niin sen voimakkuutta voidaan mitata Rayleigh’n luvulla Ra = gβ∆T L3 ρ/µα (3.17) missä β on lämpölaajenemiskerroin ja α = k/ρcp terminen diffusiviteetti. Nosteen ajama virtaus on laminaaria jos Ra < 108 ja transitio turbulenttiin virtaukseen tapahtuu välillä 108 < Ra < 1010 . Luonnollisen konvektion virtauksissa paine- ja tiheyserot ovat hyvin pieniä. Tällöin on mahdollista käyttää ns. Boussinesqin mallia, jossa tiheydelle käytetään vakioarvoa, mutta tiheyden muutosten aiheuttama noste otetaan huomioon lämpölaajenemiskertoimen avulla. Liikemääräyhtälöstä vähennetään hydrostaattinen paine ρ0 gh, mikä mahdollistaa tarkastella vain paine-eroja hydrostaattiseen paineeseen nähden. Samalla voidaan gravitaatiotermiä yksinkertaistaa (ρ − ρ0 )g ≈ −ρ0 β(T − T0 )g (3.18) 3.2. VIRTAUSYHTÄLÖIDEN LUONNE 74 missä T0 on valittu referenssilämpötila. Approksimaatio on tarkka, kun tiheyserot ovat pieniä. Jos Boussinesqin mallia ei käytetä, on käyttäjän silti annettava referenssitiheys ρ0 , jotta voidaan käyttää hydrostaattisesta paineesta ’puhdistettua’ painetta. Tämä sen vuoksi, että hydrostaattinen paine on kuitenkin iso verrattuna muulla tavoin syntyneisiin paine-eroihin nähden. Numeerinen laskenta tulee tällä tavoin paremmin käyttäytyväksi. 3.2 Virtausyhtälöiden luonne Virtausyhtälöiden luonnetta käsitellään laskennallisen virtausdynamiikan kursseissa. Yhtälöt käyttäytyvät matemaattisesti eri tavoin riippuen virtaustilanteen asettelusta. Ilman kitka- ja lämmönsiirtotermejä olevat Eulerin yhtälöt muodostavat ns. hyperbolisen ryhmän. Tällöin yhtälöllä on ns. karakteristikat, jotka kuvaavat inforC − C 0 3333 3333 C P 3333 + 03333 t 3333ylisooninen 3333sisäänvirtaus 3333 3333 3333 3333 3333 3333 3333 ylisooninen ulosvirtaus C 3333 3333 3333 P1 3333 3333 3333 3333 3333 3333 C 3333 x −3333 3333 3333 + C0 x=x 0 C − x=x 1 C 0 3333 3333 C+ P 3333 03333 t 3333 3333 3333 3333 3333alisooninen 3333 3333sisäänvirtaus 3333 3333 3333 x=x 0 3333 3333 3333 3333 P1 3333 3333 3333 3333 3333 3333 3333 x 3333 3333 3333 alisooninen ulosvirtaus C− C + C 0 x = x1 Kuva 3.2: Hyperbolisen yhtälön reunaehdot määräytyvät karakteristikoiden suunnista. maation kulkusuuntia laskenta-alueessa. ’Tieto’ voi kulkea laskenta-alueessa paineaaltojen ja konvektion avulla ja karakteristiset suunnat aika-paikka-avaruudessa liittyvät näihin ilmiöihin. Laskenta-alueen reunoilla voidaan karakteristisista suunnista päätellä tarvittavien fysikaalisten reunaehtojen määrän. Kuvassa 3.2 nähdään karakteristikoiden suunnat erilaisissa sisään ja ulosvirtaustilanteissa. Fysikaalinen reunaehto on annettava, jos karakteristika suuntautuu laskenta-alueeseen päin. Jos 3.3. REUNAEHDOT 75 karakteristika on alueesta ulos, fysikaalista reunaehtoa ei voida antaa, koska tilanne tulisi tällöin ylispesifioiduksi. Laskentatehtävän sanotaan tällöin olevan huonosti asetetun. Koska laskennassa kuitenkin tarvitaan reunaehtoja, tulee ne tällöin korvata ns. numeerisilla reunaehdoilla. Tilanne muuttuu monimutkaisemmaksi, kun yhtälöissä on mukana kitka- ja lämmönsiirtotermit. Liikemäärä- ja energiayhtälö ovat tällöin ns. parabolista tyyppiä, jatkuvuusyhtälö on hyperbolinen. Jos yhtälöistä pudotetaan aikaderivaatat pois eli lasketaan suoraan tasapainotilan virtausta, yhtälöiden luonne muuttuu elliptiseksi. Reunaehtojen asettaminen riippuu yhtälön tyypistä, joten reunaehdot on annettava eri tilanteissa eri tavoin. Myös sillä on merkitystä käytetäänkö tiheys- vai painepohjaista ratkaisijaa. Painepohjaisella ratkaisijalla on mm. sellainen ominaisuus, että paine ei ratkea yhtälöistä eksplisiittisesti, ainoastaan paine-erot. Painekorjaus on periaatteeltaan kokoonpuristumattomien yhtälöiden ratkaisumenetelmä. Siinä tapauksessa yhtälö on aina elliptistä tyyppiä, vaikka se olisi ajasta riippuva. Fysikaalisesti elliptinen voidaan tulkita siten, että informaatio kulkee äärettömän nopeasti. Laskenta-alueen jokainen laskentapiste vaikuttaa tällöin toisiin laskentapisteisiin. Paineelle voidaan johtaa elliptinen ns. Poisson-yhtälö. Vaikka virtaustyypistä käytetään nimitystä ’elliptinen’, yhtälöissä on myös muunlaisia piirteitä. Virtauksen suunnassa tulee informaatiota, joten yhtälöillä on edelleen osittain hyperbolinen luonne. Siten esimerkiksi virtaavan nesteen lämpötila tulee antaa sisäänvirtauksessa, muttei samalla tavoin ulosvirtauksessa. Lämpötilan spesifiointi siellä tulee korvata numeerisella ehdolla (tähän tilanteeseen palataan jatkossa). 3.3 Reunaehdot 3.3.1 Reunaehtotyyppejä Reunaehtojen antaminen on tärkeä osa virtaussimulointitehtävää. Jos kyseessä on puhdas virtaustapaus ilman kemiallisia reaktioita tai virtausta ajavia voimia, koko tilanne oikeastaan määritellään reunaehtojen avulla. Tarkastellaan kahta toisistaan poikkeavaa esimerkkiä. Kuvassa 3.3 on vasemmalla puolella ulkopuolinen virtaus. Tällöin reunaehdot annetaan kaikkialla laskenta-alueen reunalla. Yleensä reunaehtojen antaminen on tässä tapauksessa helppoa. Koska reuna-arvoja ei tarkkaan tunneta, on tapana viedä laskenta-alueen ulkoreuna niin kauaksi, että siellä voidaan kiinnittää vapaan vir- 3.3. REUNAEHDOT 76 a) b) Vt Uoo 555555555 555555555 vanavesi 555555555 Vn sisäänvirtaus ulosvirtaus ulosvirtaus sisäänvirtaus n laskenta−alue laskenta−alueen reuna mahdollinen sisäänvirtaus Kuva 3.3: a) ulkopuolinen ja b) sisäpuolinen virtaustilanne. tauksen arvot. Jos laskenta-algoritmi on sellainen, että se osaa käsitellä tilanteen ilman, että se olisi ylispesifioitu (ts. huonosti asetettu), laskenta toimii näennäisesti pelkillä vapaan virtauksen arvoilla. Kuvassa 3.3 oikealla on sisäpuolinen virtaustilanne. Nyt reunaehtoja ei yleensä voida laittaa niin kauas, että niiden epätarkkuudet eivät vaikuttaisi tärkeään osaan laskenta-aluetta. Reunaehdot on siis pyrittävä antamaan tarkemmin. Ne voidaan tietää mittauksista, arvata tai yrittää laskea. (Lasketaan esimerkiksi täysin kehittyneen putkivirtauksen jakauma). Tasapainotilan tilanteessa ei ulos- ja sisäänvirtausehtoja voida antaa toisistaan riippumatta. Tasapainotilan laskussa ei esimerkiksi voida antaa massavirtaa sekä sisään että ulosvirtausreunalla, koska näiden tulee olla yhtä suuret. Antamalla molemmat massavirrat, olisimme tosiasiallisesti antaneet vain yhden ehdon. Fysikaalisessa mielessä järkevä valinta olisi antaa esimerkiksi sisääntulossa virtausnopeus ja ulosmenossa paine. Tällöin paine sisäänmenossa on numeerinen ehto, jonka koodi osaa laskea. Vastaavasti ohjelma osaa laskea ulosmenevän massavirran jatkuvuusyhtälön perusteella. Ohjelmalle voitaisiin antaa myös painejakaumat sisään- ja ulostulossa. Näiden perusteella ohjelma laskee virtausnopeuden. Tällöin laskennan kuluessa nopeusjakauma asettuu sellaiseksi, että annettu painehäviö toteutuu. Yritys syöttää nopeus reunaehtona kukistuisi jälleen reunaehtojen ylimäärittelyyn, mikä johtaa aina huonosti asetettuun laskentatehtävään. Kyseistä tapausta voi tarkastella OpenFOAMilla tehdystä simuloinnista. Kuvan 3.3 tilanteessa on ulosvirtausreunalla myös paluuvirtausta, ns. ’akanvirta’. Tällöin reunaehtojen antaminen on erittäin hankalaa, koska informaation kulkusuunta on erilainen eri osissa aluetta. Tähän tilanteeseen ja FLUENTin reunaehtomahdollisuuksiin perehdytään seuraavaksi. Turbulenssimallien tarvitsemat reu- 3.3. REUNAEHDOT 77 naehdot käsitellään myöhemmin. 3.3.2 FLUENTin reunaehdot Edellä on jo käynyt ilmi reunaehtojen muodostavan melkoisen sotkun. Kaupallisen virtausratkaisijan yhteydessä käyttäjä ei näe miten reunaehto toimii, mikä on todellista fysikaalista osuutta ja mikä numeerista. Kuitenkin käyttäjän on noudatettava tiettyjä perussääntöjä. FLUENTin reunaehdot voidaan luokitella seuraavasti: • sisään- ja ulostuloreunat: voidaan antaa paine, nopeus tai massavirta sisääntuloreunalla tai paine ja massavirta ulosmenoreunalla. Näihin voidaan yhdistää myös mallinnusta, joilla voidaan kuvata puhaltimien tai suuttimien vaikutusta. Tähän reunaehtotyyppiin on manuaalissa luokiteltu myös vapaan virtauksen painereunaehto. • seinät, symmetriat, periodisuus ja akseli. Tämä reunaehtoluokka on helpointa määritellä. Symmetriaa ei välttämättä mielletä reunaehdoksi ollenkaan. Laskenta-alue kannattaa rajata aina kun mahdollista näihin ehtoihin. • nesteen ja huokoisen aineen reuna • laskenta-alueen sisällä voidaan antaa koppien seinille ’hyppyehtoja’, joilla voidaan kuvata esimerkiksi puhaltimen aiheuttama paineen nousu. Tällöin itse puhallinta ei pyritä kuvaamaan tarkasti, ainoastaan sen aiheuttama efekti virtaukseen. FLUENTissa reunaehdot asetetaan vyöhykkeiden (zones) välille. Reunaehdot löytyvät Boundary Conditions paneelin alta. Jatkossa kuvataan reunaehtojen käyttäytymistä ja antamista ohjelmalle. Lisätietoja reunaehdoista saa alan kirjallisuudesta. 3.3.3 Sisään- ja ulosvirtausehdot Edellä oli jo esillä nämä reunaehtotyypit. FLUENTissa tähän ryhmään on laitettu myös vapaan virtauksen ehdot, vaikka niiden luonne on erilainen. Yhteensä tähän ryhmään kuluu 10 erilaista reunaehtoa: • nopeus annetaan sisäänvirtausreunalla. Tämän antamiseen ei liity ongelmia, mutta sitä voidaan käyttää vain, kun tiheys on likimain vakio eli alhaisella 3.3. REUNAEHDOT 78 Machin luvulla. Reunaehtoa ei voida käyttää yhdessä samanlaisen ulosvirtausehdon kanssa. • kokoonpuristuvassa tapauksessa annetaan yleensä massavirta nopeuden sijaan. Periaatteessa voitaisiin antaa myös nopeus, mutta yleensä tiedetään massavirta. Tämä reunaehtotyyppi on siis periaatteessa sama kuin edellinen, mutta pätee yleisemmin. • annetaan sisäänvirtauksessa kokonaispaine ja -lämpötila, ylisoonisessa tapauksessa myös staattinen paine. Ylisoonisessa sisäänvirtauksessa on annettava reunaehdot kaikille suureille. • staattinen paine ulosvirtausehtona käy sekä paine- että nopeussisäänvirtausreunaehtojen kanssa (tai massavirta). Painereunaehto ulostulossa antaa yleensä paremman konvergenssin kuin Fluentin varsinainen ulosvirtausehto. Painereunaehto sallii myös virtauksen kääntymisen sisään, jolloin ’ulosvirtausreunalla’ on myös sisäänvirtausta. Kokemuksen mukaan tätä reunaehtoa kannattaa yrittää käyttää aina kun mahdollista. • vapaan virtauksen painereunaehto. Tätä käytetään vain tiheyspohjaisen ratkaisun kanssa. • ’ulosvirtausehto’ tulee luultavasti helposti valituksi FLUENTin valikosta. Ehto tarkoittaa sitä, että kaikkien ratkaistavien suureiden gradientit asetetaan nolliksi ulosvirtausreunalla. Tavallaan tämä merkitsee, ettei konvektiolle anneta mitään reunaehtoa ja diffuusiovuo asetetaan nollaksi. Reunaehtoa voidaan käyttää, kun virtaus on täysin kehittynyt. Jos virtaus pyrkii osittain kääntymään, tulee konvergenssiongelmia. Molempien rajoitusten vuoksi ehdon käyttöä pitäisi itse asiassa välttää. On myös tärkeää huomata, ettei ehtoa voida käyttää tiheyspohjaisen ratkaisun yhteydessä. Tämä aiheutuu juuri aiemmin mainitusta yhtälöiden luonteesta, joka on erilainen kokoonpuristuvassa tapauksessa. Edellisten lisäksi on olemassa neljä ehtoa puhaltimille ja suuttimille. 3.3.4 Paine sisäänvirtausreunalla Painereunaehdolla asetetaan paine sisäänvirtausreunalla yhdessä skalaarisuureiden, kuten lämpötilan ja turbulenssisuureiden, kanssa. Ehtoja voidaan käyttää myös ko- 3.3. REUNAEHDOT 79 koonpuristuvalle virtaukselle. Reunaehtotyypillä annetaan myös vapaa virtaus. Annettavat suureet ovat: • kokonaispaine p0 • kokonaislämpötila T0 • virtaussuunta (3D tilanteessa tämä vastaa kahta reunaehtoa) • staattinen paine annetaan ylisoonisella virtauksella tai jos halutaan initialisoida virtauskenttä tällä paineen arvolla. Ylisoonisella virtauksella annetaan siis kaikki viisi reunaehtoa sisäänvirtausreunalla. • muut suureet liittyen turbulenssiin, aineiden pitoisuuksiin, säteilyyn jne. Paine annetaan aina ilman hydrostaattista osaa. Esimerkiksi staattinen paine muodossa (3.19) p′s = ρ0 gx + ps Ratkaisemalla suuretta ps (paine-eroa), paineen määritys tulee tarkemmaksi tietokoneen äärellisellä sananpituudella. Kokonaispaine määritellään eri tavoin riippuen nopeusalueesta. Kokoonpuristumattomalle virtaukselle 1 p0 = ps + ρV~ · V~ 2 (3.20) ja kokoonpuristuvalle p0 = ps 1 + γ−1 Ma2 2 γ/(γ−1) (3.21) missä Ma on Machin luku ja γ ominaislämpöjen suhde. Yhdessä annetun virtaussuunnan kanssa saadaan yhtälöistä ratkaistua paikallinen nopeus. Tämä edellyttää staattisen paineen tuntemista. Staattinen paine määräytyy virtausratkaisusta, kokonaispaine annetaan käyttäjän toimesta. Jos kyseessä on ylisooninen virtaus, tarvitaan, kuten kuvasta 3.2 nähdään, yksi reunaehto enemmän kuin alisoonisessa. FLUENTissa tämä siis annetaan staattisen paineen avulla. Tällöin yhtälöstä 3.21 voidaan ratkaista iteratiivisesti Machin luku (tällöin yli 1). Tiheys voidaan ratkaista tilayhtälöstä ρ = p/RTs (3.22) 3.3. REUNAEHDOT 80 missä R on kaasuvakio ja Ts staattinen lämpötila. FLUENTissa tiheyspohjaisen ratkaisijan yhteydessä oletetaan käytettäväksi ideaalikaasun tilanyhtälöä. Staattinen lämpötila saadaan kokonaislämpötilan avulla, kun Machin luku tunnetaan T0 = Ts γ−1 1+ Ma2 2 (3.23) Tiheyspohjaisella ratkaisijalla on siis alisoonisessa tapauksessa käytössä neljä reunaehtoa päävirtaussuureille ja ylisoonisessa viisi eli kaikki annetaan. Painepohjaisella ratkaisijalla annetaan aina neljä ehtoa ja Machin luku asetetaan nollaksi. Tällöin staattinen lämpötila on sama kuin kokonaislämpötila. Puuttuvat suureet ohjelma ratkaisee itse. 3.3.5 Nopeus- ja massavirta-sisäänvirtausehdot Nopeusreunaehto on vaihtoehto painereunaehdolle. Sitä voidaan käyttää vain kokoonpuristumattomalle virtaukselle. Käyttäjä antaa seuraavat suureet: • nopeuden suunta ja suuruus. Tässä siis annetaan kaikki nopeuskomponentit. • 2D tapauksissa mahdollinen pyörimisnopeus • staattinen lämpötila • mahdollinen ulosmenopaine. Tätä käytetään jos reunaehdolla annetaankin ulosvirtaus. FLUENTissa voidaan siis antaa ulosvirtaus ’sisäänvirtausehdolla’, joka siis onkin vain nimityskysymys. Manuaalin mukaan reuna käsitellään samalla tavoin kuin painereunaehto ulosvirtauksessa. Tällöin ei tarvitse antaa skalaarisuureiden arvoja (johtuu yhtälöiden luonteesta). • muut, kuten turbulenssi ja skalaarisuureet. Näitäkään ei tarvita, jos kyseessä onkin ulosvirtaus. Kuten huomataan, annettavien reunaehtojen määrä on tässäkin tapauksessa päävirtaussuureille 4, kun skalaarisuureita ei oteta lukuun. Jäljellä olevan suureen ohjelma osaa laskea itse. Massavirtareunaehto on monipuolisempi kuin nopeusreunaehto. Massavirtaehtoa voidaan käyttää painereunaehdon asemesta, mutta FLUENTissa sitä ei suositella painepohjaisen ratkaisun yhteydessä hitaamman konvergenssin vuoksi. Useissa tilanteissa tiedetään massavirta tarkemmin kuin kokonaispaine, jolloin tätä ehtoa 3.3. REUNAEHDOT 81 tulisi voida käyttää. Staattinen paine annetaan tässä tapauksessa jälleen vain ylisoonisessa tilanteessa tai jos sen avulla halutaan initialisoida virtauskenttä. Yhteensä ehtoja on jälleen neljä tai viisi riippuen onko Machin luku alle tai yli yhden. Neljän ehdon ollessa kyseessä painetaso määräytyy ratkaisun kuluessa ja sitä kautta myös kokonaispaine. 3.3.6 Suutin tai puhallin sisäänvirtauksessa Nämä reunaehdot toimivat muuten samalla tavoin kuin painereunaehdot, mutta paineisiin lisätä ylimääräinen ’hyppy’, jolla kuvataan virtauslaitteita. Suuttimen osalta annetaan painehäviö lisäämällä reunalle painehäviö 1 ∆p = kL ρV 2 2 (3.24) Simuloinnin tekijä siis antaa ohjelmalle painehäviökertoimen kL . Puhaltimen tapauksessa annetaan myös paine-eron suuruus. Se annetaan puhaltimen ominaiskäyränä, jolloin paine-ero ∆p on kohtisuoran virtausnopeuden (ei tilavuusvirran) funktio. Sekä suuttimen että puhaltimen aiheuttama paine-ero asetetaan yhdelle laskentatilavuuksien väliselle seinälle. Kyseiset virtauslaitteet nähdään ohjelman kannalta siten äärettömän ohuina. 3.3.7 Paine ulosvirtauksessa Tämä reunaehtotyyppi on paras vaihtoehto ulosvirtausreunoilla. Ongelmana kuitenkin on, että virtaus saattaa ulosvirtauksessakin kääntyä takaisinpäin. Normaalisti reunaehtona annetaan vain staattinen paine ja neljä muuta päävirtaussuuretta ekstrapoloidaan laskenta-alueesta. Siltä varalta, että virtaus osittain kääntyy, on annettava kääntyvän virtauksen ominaisuudet, kuten kokonaislämpötila ja turbulenssi- sekä skalaarisuureet. Näiden asettaminen on hankalaa, koska ulosmenosuureita ei ennen laskemista tiedetä. Jos ulosmenosuureille annetaan todellisuudesta poikkeavat arvot, tapahtuu virtauksen kääntyessä laskennassa äkillinen muutos. Tämä voi puolestaan aiheuttaa virtauksen kääntymisen takaisin ulospäin. On siis mahdollista, että ulosvirtausreunalla virtaus jää kierroksittain nokkivaan olotilaan. Ehkä paras keino olisi käyttää ennen virtauksen kääntymistä ulosvirtausreunalle muodostuneita suureita, mutta tämä ei ole mahdollista FLUENTissa. Ainoa mahdollisuus on ongelmatilanteissa modifioida annettuja suureita. Tästä reunaehdosta kannattaa huomata 3.3. REUNAEHDOT 82 se, että laskenta tapahtuu virtauksen kääntyessä osittain eri tavalla kuin sisäänvirtausehdossa. Kaikkia tarvittavia suureita ei anneta. Periaatteessa tilanne on tällöin näiltä osin huonosti asetettu. Laskenta useimmiten silti toimii, koska sisäänvirtausta tapahtuu vain pienellä alueella. Virtaustilanteessa (kts. esim. kuva 3.2) varsinainen sisäänvirtausreuna ja ulosvirtaus linkittyvät tavallaan yhteen. Pienehkö akanvirtausalue ’roikkuu’ ratkaisussa mukana. 3.3.8 Paine vapaassa virtauksessa Oikeastaan reunaehtotyyppiä pitäisi kutsua pelkästään vapaan virtauksen ehdoiksi, koska siinä annetaan muutakin kuin paine. Manuaalin mukaan reunaehtoa kutsutaan joskus ’karakteristiseksi ehdoksi’, koska siinä käytetään hyväksi juuri karakteristikoita. Kuten edellä olemme huomanneet, myös muissa reunaehdoissa on kuitenkin implisiittisesti mukana karakteristiset suunnat: reunaehtojen määrä on erilainen eri virtaustapauksissa. Vapaan virtauksen ehtoja voidaan käyttää vain ideaalikaasun tilayhtälön kanssa. Tämä ei ole kovin suuri rajoitus, koska reunaehtoa voidaan soveltaa vain ilmakehässä lentäville kappaleille ja muidenkin planeettojen ilmakehät ovat useimmissa virtaustilanteissa lähellä ideaalikaasua (ilma ei ole ideaalikaasua suurella Machin luvulla Ma >> 1)! Reunaehtoa siis sovelletaan kuvan 3.2a tapauksessa. Reunalla annettavat suureet ovat • staattinen paine • Machin luku • lämpötila (staattinen) • virtaussuunta • tavanomaiset turbulenssi- ja muut suureet Reunalla voi olla ali- tai ylisooninen virtaus. FLUENTissa ei reuna-arvoja käytetä suoraan, vaan niiden avulla lasketaan ns. Riemannin invarianttien arvot. Näitä käytetään karakteristikoiden suunnan sanelema määrä reunalla ja otetaan loppuinformaatio laskenta-alueesta ekstrapoloimalla. Saaduista Riemannin invarianttien arvoista voidaan ratkaista päävirtaussuureet reunalla. Tämä reunaehtotyyppi siis todellakin käyttää suoraan karakteristisia suureita reunaehtojen laskennassa. Fysikaalisessa mielessä myös aiemmin esitetyissä reunaehdoissa on otettu karakteristiset 3.3. REUNAEHDOT 83 suunnat huomioon reunaehtojen määrässä, mutta itse suureita ei käytetty, vaan ekstrapolointeja. Tämä reunaehtotyyppi on siis käytössä vain tiheyspohjaisen ratkaisijan yhteydessä. Oikeastaan sitä ei edes tarvittaisi. Karakterististen suureiden avulla saatiin aiemmin reunat hyvin asetetuiksi, kun käytössä oli esimerkiksi klassinen keskeisdifferenssiin perustuva ratkaisija. FLUENTissa kuitenkin käytetään ns. approksimatiivista Riemann-ratkaisijaa tiheyspohjaisen ratkaisun yhteydessä, jolloin itse ratkaisussa on vuon laskennassa mukana informaatio karakteristikoiden kulkusuunnista. Reunalla ei siis välttämättä tarvittaisi mitään erikoiskäsittelyä. Viemällä reuna riittävän kauas, kaikilla reunoilla voitaisiin antaa kaikki viisi pääsuuretta ilman, että tehtävä tulee ylispesifioiduksi. (Reuna-arvojen tarkkuus on toinen asia kuin ylispesifiointi). 3.3.9 Ulosvirtausehdot FLUENTissa käytetään ulosvirtausehtoja, kun virtaustilannetta ei tunneta tarkasti ulosmenokanavassa. Lähinnä siis kyseessä on tiedon puute vain paineesta, koska muita varsinaisia ulosvirtausehtoja ei tarvita (edellyttäen, että virtaus ei käänny). Tämä yksinkertainen reunaehtotyyppi asettaa selkeitä rajoituksia sen soveltamiselle. Ensinnäkään sitä ei voi käyttää tiheyspohjaisen ratkaisun yhteydessä. Toinen rajoitus on, ettei sitä voi käyttää, jos sisäänvirtaus on annettu painereunaehdolla. Tällöin virtausnopeus ei määräytyisi mistään! Sisäänvirtaus on siis annettava tässä tapauksessa nopeuden tai massavirran avulla. Ehtoa ei voi myöskään käyttää, jos tiheys ei ole vakio, vaikka käytössä olisikin painepohjainen ratkaisija. Reunaehtotyyppi toimii vakiotiheydellä siten, että kaikki virtaussuureet ekstrapoloidaan ja toteutetaan jatkuvuusyhtälö painekorjauksen avulla. Kun kaikki suureet ekstrapoloidaan, merkitsee se myös sitä, että näiden suureiden diffuusiovuot asetetaan nollaksi. Reunaehtoa tulisi käyttää varoen (oikeastaan mieluummin ei ollenkaan) tilanteissa, joissa virtaus on täysin kehittynyt. Tarkastellaan kuvan 3.4 tilannetta, jossa on virtaus portaan ohitse. Portaan taakse syntyy takaisin virtauksen alue. Ulosvirtausehtoa voidaan käyttää, mikäli diffuusiovuo on likimain nolla. Tämä siis tarkoittaa yleensä sitä, että virtaus on täysin kehittynyt. Joskus tämä ehto ei toteudu, mutta silloin reunan tulee olla kuitenkin niin kaukana laskenta-alueesta, ettei se vaikuta mielenkiinnon kohteena olevaan alueeseen. Kuvan tilanteessa ulosvirtauskohdassa D reunaehtoa voidaan käyttää, vaikka se ei toteudukaan eksaktisti 3.3. REUNAEHDOT A 84 B C ulosvirtaus ulosvirtaus ulosvirtaus reunaehto reunaehto reunaehto huonosti ei toimi toimii asetettu D ulosvirtaus reunaehto toimii Kuva 3.4: Ulosvirtausreunaehdon soveltaminen. (gradientit eivät ole nollia virtaussuunnassa). Kohdassa C oletetaan virtaus täysin kehittyneeksi. Tällöin reunaehto toteutuu eksaktisti ja sitä voidaan käyttää. Kohdassa B virtaus ei ole täysin kehittynyt. Tässä reunaehtoa ei saa käyttää, koska se vaikuttaisi haitallisesti esimerkiksi irronneen alueen kooon. Kohdassa A tapahtuu paluuvirtausta. Tässä tilanteessa tämä reunaehtotyyppi on huonosti asetettu ja ratkaisu ei edes konvergoisi. Jos laskentaa jatketaan, se todennäköisesti lopulta ’kaatuu’. Tämän reunaehtotyypin hankaluus on siinä, ettei laskija voi olla koskaan varma siitä etteikö virtaus käänny. Vaikka lopputuloksessa virtaus menisikin oikeaan suuntaan, se saattaa kääntyä iteroinnin kuluessa, jolloin probleemasta tulee huonosti asetettu. Tämän vuoksi ulosvirtauskohdissa kannattaa käyttää mieluummin painereunaehtoa. Ulosvirtausreunalle voi asettaa suutin- tai puhallinehtoja samaan tapaan kuin sisäänvirtausreunallekin. Tässäkin tapauksessa virtauslaitteiden oletetaan olevan äärettömän ohuita ja ne sijaitsevat viimeisen laskentatilavuuden seinällä. Niiden tarkoituksena ei ole kuvata virtausta puhaltimen tai suuttimien välittömässä läheisyydessä tarkasti, vaan niiden avulla voidaan antaa fysikaalisesti järkevä reunaehto suuremman kokonaisuuden, esimerkiksi huonetilan, virtaukselle. 3.3. REUNAEHDOT 85 Symmetriatasot Kuva 3.5: Symmetriareunaehdolla voidaan usein mallintaa vain neljäsosa virtauskanavasta. 2 symmetriatasoa (malli sisältää 90 asteen sektorin) Kuva 3.6: Toinen esimerkki symmetriareunojen soveltamisesta. 3.3.10 Symmetriareunaehto Symmetria on ehkä kaikkein ’helpoin’ reunaehto. Käyttäjän ei tarvitse antaa mitään suureita, riittää, että kyseinen pinta toteuttaa symmetrisyysvaatimuksen. Esimerkkejä tämän reunaehtotyypin oikeasta käytöstä on kuvissa 3.5 ja 3.6. Symmetriaehdolla saadaan yleensä laskenta-aluetta supistettua. Ääritapauksessa kolmidimensioinen tilanne voi symmetriasyistä olla efektiivisesti kaksidimensioinen. Jo laskenta-ajan säästön vuoksi kannattaa siis etsiä alueesta sopivia symmetriatasoja. Edellä jo todettiin, ettei käyttäjän tarvitse symmetriatiedon lisäksi antaa mitään täsmällisiä numeroarvoja tämän reunaehdon yhteydessä. Selkeä etu on vielä se, että reunaehtotyyppi käyttäytyy yleensä myös numeerisesti hyvin. Fysikaalisesti ehto merkitsee, että virtausnopeus pinnan läpi on nolla ja symmetriasta seuraa lisäksi, että diffuusiovuot pinna läpi ovat nollia. Pinta vaikuttaa tällöin virtaukseen vain paineen kautta, kaikki muut osat vuo-termeissä ovat nollia. Iteroinnin kuluessa näiden termien arvot muuttuvat vain paineen osalta. Reunaehdon implementointi mielivaltaiselle sym- 3.3. REUNAEHDOT 86 metriselle pinnalle johtaa käytännössä suhteellisen pitkiin lausekkeisiin (kts. esim. Laskennallisen virtausmekaniikan jatkokurssi luku 12.7). Symmetriareunaehto on täsmälleen sama kuin kitkattoman kiinteän seinän ehto (slip wall). Sitä voidaan siis myös käyttää kitkattoman virtauksen laskennassa seinän asemesta. Jos voidaan olettaa, ettei seinällä ole kitkavaikutusta virtaukseen, se kannattaa korvata symmetriaehdolla, jolloin voi käyttää paljon harvempaa noodijakoa (sinänsä oletus kitkattomasta seinästä saattaa olla vaarallinen, joten sitä ei varsinaisesti suositella tässä). Symmetriaa voidaan käyttää usein myös silloin, kun laskenta-alueen laita on epämääräinen, mutta tiedetään ettei se vaikuta varsinaiseen tarkasteltavaan alueeseen. Aikaisemmin tällainen esimerkki oli virtaus joessa oleva siltapilarin ympärillä. Koko jokea ei kannata mallintaa, joten sopivaan kohtaan, jossa läpivirtaus voidaa olettaa pieneksi, voidaan asettaa symmetriataso. Toinen esimerkki on suureen vapaaseen tilaan puhaltava suihku. Luonnolliset reunaehdot ovat vasta kyseisen tilan, joka saattaisi olla vaikka suuri tehdashalli, seinät. Symmetrialla voidaan alueesta lohkaista riittävän suuri osa, jolloin reuna ei enää vaikuta suihkuun. Mikä sitten on sopivan kokoinen alue, selviää vain kokeilemalla ja ammattitaitoa kartuttamalla kyseisestä tilanteesta. kylmä kuuma kylmä kuuma neste nousee g ei symmetria− taso Kuva 3.7: Esimerkkejä tilanteista, jolloin symmetriaehtoa ei saa käyttää. Symmetriaa ei pidä käyttää väärin. Edellä suositeltiin, että tietyissä tilanteissa symmetrialla voidaan hyvällä tarkkuudella approksimoida todellisia reunaehtoja. Joskus vaikutus saattaa olla arvaamaton, vaikka reuna olisi viety kauaskin. Kuvassa 3.7 on esimerkkejä selkeästi epäsymmetrisistä tilanteista. Vasemmassa kuvassa noste aiheuttaa epäsymmetrisyyden ja oikealla tilanne ei ole symmetrinen, vaan kyseessä on periodisuus. Aksiaalisymmetrisissä tilanteissa (kuva 3.8) akseli ei ole symmetriaehto, vaan ’akseli’. Aikaisemmin jo todettiin, että kontrollitilavuusmene- 3.3. REUNAEHDOT 87 telmää voidaan soveltaa, vaikka pinta-ala kopin seinällä olisi nolla. Kolmidimensioisessa tilanteessa akselille ei tarvita mitään ehtoa, mutta aiemmin suositeltiin, että hilan topologia akselilla muutetaan. Aksiaalisymmetrisissä tilanteissa sen sijaan kyseinen pinta on määriteltävä, mutta sen vaikutus koskee lähinnä tulosten jälkikäsittelyä. Tälle singulaariselle pinnalle asetetaan arvoksi lähimmän kopin arvot. Koska vuota akselin läpi ei ole, arvoilla on merkitystä vain tulosten visualisoinnissa. Todettakoon vielä, että 2D aksiaalisymmetrisessä tapauksessa vuohon jää kehän suuntaisille pinnoille paineen vaikutus. Tilanne on siis tavallaan kuitenkin kolmiulotteinen, koska vuo lasketaan kaikille kuudelle pinnalle. akseli Kuva 3.8: Pyörähdysymmetrisessä tilanteessa ei sovelleta symmetrisyysehtoa: FLUENTissa akselille oma reunaehtotyyppinsä. 3.3.11 Periodiset reunat 4 tangetiaalista sisääntuloa sykliset reunat Kuva 3.9: Periodisen reunaehdon käyttö sekoitussäiliön laskennassa. Periodinen reunaehto on siinä mielessä analoginen symmetrian kanssa, että muuta täsmällistä tietoa kuin ’periodisuus’ ei tarvita etukäteen. Edut ovat samat kuin symmetriaehdollakin. Periodisuutta on oikeastaan kahta tyyppiä. Jos periodisuus tapahtuu pyörähdyssuunnassa, kuten kuvassa 3.9, siitä käytetään myös termiä ’sykli- 3.3. REUNAEHDOT 88 nen’. (Tämä reunaehtotyyppi oli käytössä FLUENT 4. -ohjelmassa). Toisessa tapauksessa periodisuus on aksiaalisuunnassa (kuva 3.10). Periodisuusehto täytyy aina asettaa kahdelle pinnalle, joiden välillä periodisuus tapahtuu. Käyttäjä valitsee FLUENTissa tekstivalikosta alta jommankumman vaihtoehdoista Rotational tai Translational. Ohjelmassa on myös mahdollista antaa periodisuusreunojen välille painehäviö. Tämä mahdollistaa esimerkiksi kanavavirtauksen laskennan periodisilla ehdoilla. (a) fyysinen alue periodinen reuna periodinen reuna (b) mallinnettu alue Kuva 3.10: Esimerkki aksiaalisuunnassa tapahtuvasta periodisuudesta. 3.3.12 Kiinteän pinnan reunaehdot Kiinteillä pinnoilla reunaehdot ovat periaatteessa hyvin määritellyt. (On huomattava, että ’kiinteä’ pinta saattaa olla myös esimerkiksi pyörimisliikkeessä, mutta tällöinkin sen nopeus yleensä tunnetaan tarkasti). Käytännössä pinnoilla tulee ongelmia turbulenssin ja lämmönsiirron vuoksi. Näiden ilmiöiden asettamia vaatimuksia reunaehdoille tarkastellaan myöhemmin tarkemmin. Kiinteät pinnat on traditionaalisesti totuttu jakamaan kitkattomiin ja kitkallisiin (slip wall ja non-slip wall). Kitkattomalla seinämäehdot ovat kaikkein yksinkertaisimmat: läpivirtausta ei ole ja ainoaksi kontribuutioksi vuo-termeihin tulee paineen vaikutus. Energiayhtälössä paineen vaikutus tulee esille tällöin vain jos seinämä liikkuu, kuten virtauskoneilla (kone tekee työtä nesteeseen). Edellä todettiin, että seinä käyttäytyy täsmälleen samalla tavoin kuin symmetriapinnalla. Jostain syystä FLUENTissa ei kehoteta (vaikkei tälle pitäisi olla mitään estettä) käyttämään 3.3. REUNAEHDOT 89 kitkattomalle seinälle symmetriaehtoa, vaan antamaan seinämän leikkausjännitys Specified Shear Stress -optiolla. Tällä voi seinälle antaa myös nollasta poikkeavia arvoja. Jos tämä optio on voimassa, FLUENT ei käytä seinämäfunktiota. Kitkallisella pinnalla asetetaan virtausnopeus nollaksi (tai samaksi kuin pinnan nopeus). FLUENT käyttää tätä reunaehtoa laminaarille virtaukselle ja turbulentille virtaukselle mikäli käytetään ns. pienen Reynoldsin luvun mallia. Leikkausjännitys lasketaan tällöin normaaliin tapaan nopeuden derivaatasta seinämän normaalin suunnassa ∂u (3.25) ∂n Jos ja kun nopeusgradientti on hyvin jyrkkä pinnan lähellä, on hilajaon oltava tarτw = µ peeksi tiheä (kts. luku 2). Käytettäessä ns. suuren Reynoldsin luvun mallia, jolloin sovelletaan seinämäfunktiota, pinnan käsittely monimutkaistuu. Tähän palataan turbulenssimallien yhteydessä. Kiinteällä pinnalla on myös annettava paine. FLUENTissa pinnalle asetetaan todennäköisesti ensimmäisen laskentatilavuuden paine. Manuaalin mukaan reunaehto on ∂p =0 (3.26) ∂n mutta normaaliderivaattaa tuskin approksimoidaan tarkasti. Reunaehto on mielekäs rajakerroksella, koska paineen derivaatta seinää vasten kohtisuorassa suunnassa on likimain nolla. Ehto ei kuitenkaan päde tilavuusvoimien läsnä ollessa tai voimakkaasti kaartuvalla seinällä. Tällöin virhe näkyy nopeusvektoreiden sojottaessa seinältä ulospäin. Tilannetta voi yrittää korjata tihentämällä laskentahilaa. 3.3.13 Väliaineen määrittely Virtausratkaisijalle on annettava myös tietoa virtaavasta nesteestä. Kyseessä ei oikeastaan ole reunaehto, mutta FLUENTissa asia käsitellään reunaehtojen yhteydessä. Ratkaisualue jaetaan FLUENTissa vyöhykkeisiin. Simuloinnin suorittaa tekee aluejaon hilan generoinnin yhteydessä. Vyöhykkeet voivat olla joko nesteen täyttämiä tai kiinteitä. Jälkimmäisessä tapauksessa alueessa ratkaistaan vain lämmönjohtavuusyhtälö. Mikäli kyseessä on nestevyöhyke, annetaan sille virtaavan väliaineen tyyppi Materials-paneeli. Tässä yhteydessä annetaan myös lähdetermien määrittely, joiden yhteydessä käytetään käyttäjän määrittelemiä funktioita (User-defined functions, UDF). . 3.3. REUNAEHDOT 90 Virtauksen yhteydessä eräs hankalimmista asioista on transitio laminaarista turbulenttiin virtaukseen. Perinteisesti transitiota on ollut mahdollista mallintaa määrittelemällä vyöhyke laminaariksi. Turbulenssimalli ei ole tällöin voimassa kyseisessä alueessa. Tätä keinoa voi lähinnä käyttää 2D laskennassa siipiprofiilien yhteydessä, koska monimutkaisemmissa tilanteissa ei transition paikkaa yleensä tunneta. Viime aikoina ohjelmissa on yleistynyt γ − Reθ -transitiomalli, mutta sen antamiin tuloksiin on suhtauduttava vielä varoen. Transitio on kuitenkin tärkeää ottaa huomioon useissa virtaustilanteissa ja se on edelleen eräs virtauslaskennan heikoista kohdista. Vyöhyke voi olla paikallaan tai liikkuva. Jälkimmäinen tarkoittaa, että itse laskentahila asetetaan liikkeeseen. Tätä ominaisuutta tarvitaan pyörivien virtauskoneiden simuloinnissa ja siihen palataan jatkossa. Laskentahilan liike voi olla paitsi pyörivää myös translaatiota. Kiinteälle vyöhykkeelle asetetaan samantapaisia ominaisuuksia kuin nestevyöhykkeillekin. Kiinteällä aineella saattaa olla sisäistä lämmönkehitystä, nesteellä lähdetermejä voidaan asettaa myös jatkuvuus- ja liikemääräyhtälöille. Vyöhyke voi koostua myös huokoisesta materiaalista, jolle laskentamallit löytyvät FLUENTin manuaalista. 3.3.14 Laskentatilavuuksiin ja niiden pintoihin liittyvät lähdermit FLUENTissa käsitellään reunaehtojen yhteydessä myös lähdetermejä, joilla voidaan kuvata reunaehtomaisia tilanteita laskenta-alueen sisällä. Lähdetermejä voidaan liittää laskentatilavuuksien pintoihin, jolloin ne ovat äärettömän ohuita, tai suoraan laskentatilavuuksiin, jolloin ne tavallaan ovat pistemäisiä. Lähdetermit ovat yhtälöiden (3.7)- (3.10) oikealla puolella. Monimutkaisetkin funktionaaliset yhteydet kutistuvat virtausyhtälöiden kannalta katsoen yksinkertaisiksi ’hyppyehdoiksi’. Esimerkkinä on kuva 3.11, jossa on kuvattuna puhallin virtauskanavassa. Tilanteessa oletetaan, että laskenta-alueen mitat ovat sellaiset, että puhallin voidaan käsitellä äärettömän ohuena levynä. Puhaltimen vaikutus näkyy virtauksessa liikemääräyhtälön lähdetermissä lisättynä paineen nousuna ja energiayhtälössä tehdyn työn kautta. Ohjelman sisäisessä ’kielenkäytössä’ näitä lähteitä ei käsitellä ’yhtälöiden oikealla puolella’, vaan hyppyehdot liitetään suoraan vuo-arvoihin. Jatkuvuusyhtälöön puhallin ei aiheuta mitään muutoksia. Puhaltimen lähellä näin mallinnettu virtauskenttä ei vastaa todellisuutta, mutta suurelle laskenta-alueelle puhaltimen vai- 3.3. REUNAEHDOT 91 kutus voidaan ottaa tällä reunaehtotyypillä huomioon. Se aktivoidaan paneelin Fan kohdalta ja vastaavaa mallia voidaan käyttää sisään- ja ulosvirtausreunojen yhteydessä (Intake-Fan ja Exhaust-Fan). Mikäli kyseessä on painehäviö, vastaavat reunaehdot ovat Intake-Vent ja Exhaust-Vent. Ilma 5 m/s Puhallin 0,4 m 2,0 m Kuva 3.11: Puhallin voidaan kuvata lähteenä virtauskanavassa. Kuten aiemmin jo todettiin puhaltimen ominaiskäyrä annetaan muodossa ∆p = N X fn unn−1 (3.27) n=1 missä un on pintaa vastaan kohtisuora nopeus. Ratkaisun kuluessa ohjelmassa ratkaistaan iteratiivisesti yhtälö (3.27) yhdessä virtausyhtälöiden kanssa. Kolmidimensioisessa laskennassa pitää antaa puhaltimelle myös tangentiaali- ja radiaalinopeusprofiilit. FLUENTilla on myös mahdollista laskea virtausta itse puhaltimessa, mutta tällöin noodijako olisi aivan toisenlainen. Monimutkaisen geometrian kuvaaminen vaatii paljon laskentatilavuuksia ja sen seurauksena laskenta-alue ei voi ulottua kovin paljon puhaltimen ulkopuolelle. Nämä kaksi erilaista mallinnustapaa kuvaavat FLUENTin käyttöä ns. yleisohjelmana. Ohjelmalla on periaatteessa mahdollista laskea yksityiskohtaisen tarkasti virtausilmiöitä, tai myös virtaustilanteita, joissa laskentatilavuudet ovat kirjaimellisesti ’hehtaarikoppeja’. Virtausyhtälöt ovat perusolemukseltaan samanlaisia, mutta ne on parametrisoitava eri tavoin. FLUENTissa voidaan mallintaa myös ’radiaattori’ (lämpöpatteri tai jäähdytin) samalla tavoin kuin puhallin. Ohjelmassa on myös hieman monimutkaisempia malleja lämmönsiirtimille. Lämmönsiirtimille käyttäjä voi tietenkin rakentaa myös yksityiskohtaisen mallin. Kaikessa lähdetermimallinnuksessa ideana on saada kohtalaisen monimutkaisen osailmiön olennainen vaikutus suurempaan kokonaisuuteen kuvatuksi, ei kyseisen ilmiön laskenta. Käyttäjä voi antaa myös itse laskentatilavuuksiin liittyviä lähdetermejä. Esimerkkinä on kuvan 3.12 pieni sisääntulovirtaus, joka paljon pienempi kuin käytetyt laskentatilavuudet. Simuloinnin suorittajan on tiedettävä massavirran suuruus, 3.3. REUNAEHDOT 92 Aj """""""" vj """""""" """""""" """""""" """""""" """""""" """""""" Kuva 3.12: Lähdetermillä voidaan kuvata pientä sisäänvirtausta. nopeus (liikemäärän vuoksi) ja lämpötila. Lähde annetaan muodossa m/V ˙ jatkuvuusyhtälölle, mu ˙ n /V liikemääräyhtälölle ja muodossa mH/V ˙ energiayhtälölle. Tässä V on laskentatilavuuden tilavuus, joka käyttäjän tulee onkia ohjelmasta esille ja m ˙ tuleva massavirta (kg/s). Laskentakoppeihinkin määriteltyjen lähdetermien yhteydessä on muistettava, että esimerkiksi kuvan 3.12 tilanteessa sisäänvirtauksen lähellä laskenta ei kuvaa tilannetta oikein, mutta suuremmassa kokonaisuudessa saadaan sisäänvirtauksen vaikutus esille. 3.3.15 OpenFOAMin reunaehdot OpenFOAMissa jokaiselle ratkaistavalle suureelle annetaan oma reunaehto hilan kaikilla reunoilla. Reunaehdot ovat luonteeltaan saman kaltaisia kuin Fluentissa, mutta käyttäjän on itse kasattava haluamansa reunaehtokokonaisuus. Esimerkiksi kappaleessa 3.3.5 kuvatun Fluentin massavirta-sisäänvirtausehdon määrittäminen OpenFOAMissa vaatisi kaikkien suureiden määrittämistä erikseen sen sijaan, että annetaan yksi reunaehtotyyppi koko reunalle. OpenFOAMissa on kuusi perusreunaehtoa (primitive BC), jotka on lueteltu taulukossa 3.13, sekä monia muita näistä johdettuja reunaehtoja (OF 1.6-ext 6.2011 52 kpl), joilla voidaan määrittää esimerkiksi kokonaispaine reunalla tai sallia tiivistysaaltojen kulkeutuminen hilan ulkopuolelle. Osa näistä on lueteltu ohjelman käyttöoppaassa. Lisäksi OpenFOAMissa on jo Fluentin yhteydessä esitellyt symmetria- ja periodiset reunaehdot sekä mm. rinnakkaislaskentaa varten tarkoitettuja reunaehtoja. Jos mikään olemassa olevista reunaehdoista ei vastaa käyttäjän tarvetta, vapaa lähdekoodi mahdollistaa omien reunaehtojen tekemisen. Tällaisia löytyy myös foorumeilta lukuisia. 3.4. REUNAEHTOJEN KÄYTÖSTÄ 93 Kuva 3.13: OpenFOAMin perusreunaehdot.Lähde: OpenFOAM User Guide Taulukko 3.1: Eri kategorioihin liittyvät vyöhyketyypit Kategoria Vyöhyketyypit koppien pinnat akseli, ulosvirtaus, massavirtasisäänvirtaus vapaa virtaus, painesisäänvirtaus, paineulosvirtaus symmetria, nopeussisäänvirtaus, kiinteä seinä suuttimet ja puhaltimet reunoilla kaksipuoliset pinnat puhallin, jäähdytin yms. periodinen periodinen laskentatilavuudet neste, kiinteä 3.4 Reunaehtojen käytöstä Koska sekä FLUENT että OpenFOAM pohjautuvat aina rakenteettomaan hilaan, ei ohjelmissa ole lohkojen välistä ’liimausreunaehtoa’, joka tarvitaan rakenteellisissa virtausratkaisijoissa. FLUENTissa on kuitenkin määriteltävä vyöhykkeitä ja reunaehdot annetaan näiden vyöhykkeiden rajapinnoilla (boundary zones). Reunaehdot liittyvät aina vyöhykkeisiin ja ne täytyy yhdistellä oikein. FLUENTissa olevat määrittelyt on lueteltu taulukossa 3.1 Yleensä virtaustilanteet voidaan jakaa sisä- ja ulkopuolisiin. Viimeksimainittujen kohdalla annetaan yksinkertaisesti vapaan virtauksen ehdot ja käytetään tiheyspohjaista ratkaisijaa. Sisäpuolisissa virtauksissa suositellaan käytettäväksi ulosvirtauksessa painereunaehtoa. Sisäänvirtauksessa käytetään joko painereunaehtoa, jos se tunnetaan tai massavirtareunaehtoa, jos massavirta tunnetaan. Massavirtareunaehto voidaan myös korvata nopeusreunaehdolla, jos tiheys on vakio. Silloin ehdot ovat identtisiä. Jos laskenta-alueen reunoilla on monimutkaisia toimilaitteita, niitä 3.5. KERTAUS 94 kuvaavien reunaehtojen määrittely on hankalampaa. Toimilaitteita voidaan FLUENTissa asettaa myös laskenta-alueen sisäosiin. 3.5 Kertaus • virtaustilanne määritellään reunaehtojen avulla • reunaehtojen väärä yhdistely voi johtaa huonosti asetettuun probleemaan • reunaehdot voidaan jakaa vapaan virtauksen ehtoihin ja sisäpuolisten virtauksien ehtoihin. Näiden lisäksi on olemassa laskenta-alueen sisälle asetettavia ehtoja. • ulosvirtaukselle kannattaa käyttää painereunaehtoa. Sen varalta, että virtaus kääntyy osittain sisälle päin, on annettava tietoa myös kääntyvälle virtaukselle. Koska tätä ei tiedetä, voidaan käyttää likimain samoja arvoja kuin mitä koodi laskee ulosvirtausalueelle. • sisäänvirtaukselle massavirran tai paineen antaminen on periaatteessa samanarvoista, joten arvoista annetaan se, joka tunnetaan paremmin tai joka halutaan määrittää tarkasti (ohjelma laskee jommankumman itse ja se ei välttämättä ole haluttu arvo). • FLUENTin manuaalissa suositellaan sisäänvirtaukselle painereunaehtoa nopeamman konvergenssin vuoksi. Jos tämä pitää paikkansa, se aiheutuu numeriikasta. Sillä kumpi suure annetaan, ei pitäisi olla merkitystä (käyttäjän kannattaa kokeilla molempien ehtojen antamista). • reuna-arvot ovat yleensä huonosti tiedossa ja reunoilla saattaa laskennassa muutenkin tapahtua jotain epämääräistä. Tämän vuoksi reunat on vietävä sopivan kauaksi, niiden lähellä on käytettävä sopivan tiheää noodijakoa jne. ’Sopivuus’ selviää vain käyttökokemuksella. • FLUENTissa tiheys- ja painepohjaisen ratkaisun reunaehdot ovat erilaiset, mikä aiheutuu yhtälöiden erilaisesta luonteesta. Painepohjaisen ratkaisijan luonne on Ma = 0, vaikka virtausnopeudesta olisi pääteltävissä Machin luvulle jokin äärellinen arvo. Tiheyspohjainen ratkaisija puolestaan perustuu 3.5. KERTAUS 95 aina luonteeltaan kokoonpuristuvaan virtaukseen, vaikka virtausnopeus fysikaalisesti vastaisikin tilannetta Ma → 0. Päivitetty 20.1.2014
© Copyright 2024