|
|
|
Orodje "gridedit" za izdelavo CFD numeričnih mrež
Avtorji: T. Kolšek, M. Šubelj, J. Duhovnik
Uvod
Numerične simulacije toka fluida tipično zahtevajo numerično mrežo celic
sprejemljive kvalitete in velikosti. Celotno računsko območje se napolni s
celicami izbrane topologije. Za 3D območja se največ uporabljajo tetraedrične
in kvadraste celice.
Posebna razporeditev kvadrastih celic v mreži, imenovana "blok-strukturirana", je
zelo popularna zaradi možnosti uporabe preprostih aproksimativnih enačbenih
shem, ki yelo pospešijo reševanje algebrajskega sistema enačb. Žal pa je
izdelava takih mrež zelo zamudna in lahko predstavlja resen problem, še posebno,
kadar gre za računska območja komplicirane 3D geometrije.
Zato smo razvili lastno orodje za obravnavo tovrstnih problemov. Prvotno
je bilo orodje namenjeno obravnavi geometrij računskih območij komponent vodnih
turbin. Koncept pa je možno razširiti na praktično poljuben tip geometrije.
Slika 1: Blok-strulturirana mreža kvadrov v območju, ki obsega celotni
pretočni trakt vodne turbine |
Koncept šablon
Orodje temelji na konceptu "šablone", ki omogoča razdelitev kompliciranega
območja v manše volumne. Mrežo generiramo v treh korakih:
- izdelava razdelilne sheme ("šablona" za določen topološki tip računskega
območja, npr. potopljena telesa, lopatice turbine, sesalna cev, trup ladje,
itd.), ki definira način razdelitve in položaj manjših volumnov; To shemo lahko
izdelamo avtomatično ali pa jo izdela strokovnjak.
- Uporaba šablone na konkretnih geometrijskih podatkih, ki rezultira
geometrijski bazi kot nabor gradnikov, npr. B-zlepkov. Ta faza je popolnoma avtomatična.
- Optimizacija položaja sestavnih delov manjšega volumna. V tej fazi
dosežemo ortogonalnost geometrijskih gradnikov. Vzpostavijo se posebne
geometrijske povezave med gradniki, ki zagotavljajo usklajenost manjših
volumnov z robovi geometrijskega območja.
- Enostaven algoritem nato izdela mrežo kvadrov znotraj (ukrivljenega)
manjšega volumna.
 |
 |
 |
Slike 2 a, b, c: Primer razdelitve istega
računskega območja na manjše volumne z uporabo dveh različnih šablon |
Kadar je potrebno optimirati geometrijo neke naprave glede na rezultate
analize toka, lahko uporabimo paramterični pristop: spremenjene dolžine,
koti, robne oblike ponovno vstopajo v korak 2. Prednost takega pristopa je
v učinkoviti pripravi računskih mrež za veliko število topološko podobnih
mrež (enak geometrijski razred). Prvi korak moramo narediti le enkrat, medtem
ko potekajo nadaljnji koraki povsem avtomatično in ne zahtevajo znanja
specialista.
Vhodni podatki in pretvorba
Šablona definira način pretvorbe uporabniških podatkov v geometrijsko bazo.
Uporabniški podatki so načeloma lahko v kakršnemkoli formatu. Na primer,
nabor parametrov, kot so dolžina, širina, kot, ki so shranjeni v datoteki
in jih prebere ustrezna bralna procedura, lahko že opisuje neko geometrijsko
območje. Kadar pa imamo opravka s komplicirano geometrijo (npr. pretočni
trakt s potopljenimi telesi 3D oblik), se lahko poslužimo metode, ko
podajamo prečne preseke s posameznimi množicami točk. Take podatke je
namreč relativno enostavno izvleči iz CAD programov, ali pa so celo lahko
rezultat sintetičnih generatorjev ali celo meritev. Primer takih podatkov
prikazuje slika 4.
Slika 4: Primer vhodnih podatkov za gonilnik aksialne vodne turbine
(tri skupine točk) |
Slika 5: Rezultat šablonske pretvorbe: volumski opis računskega območja,
ki je razdeljen na manjše volumne |
Način pretvorbe podatkov je kodiran v predprocesorju, ki sestoji iz nabora
specializiranih funkcij. Glavne funkcionalnosti so:
- branje uporabniških podatkov v vnaprej znanem formatu
- gradnja robov kot B-zlepkov in interpolatornih površin skozi točke
- gradnja interpolatornih površin skozi krivulje
- projekcije točk na kopleksne robove in površine ter projekcija robov;
- aplikacija specialnih geometrijskih omejitev na gradnike baze
- povezava gradnikov v usklajeno topologijo
Rezultat pretvorbe kaže slika 5. Zaporedje klicev funkcij lahko shranimo
v "makro" datoteko.
Večnamenskost
Isto šablono lahko uporabimo za različne geometrije. Slika 6 kaže uporabo
iste šablone tako za vodilnik kakor za gonilnik aksialne vodne turbine.
Večnamenskost je v splošnem odvisna od robustnosti načina razdelitve v
manjše volumne. Slika 7 kaže, kako lahko zgradimo šablono tudi za druge
dele vodne turbine (sesalna cev).
Slika 6a: razdelitev območja vodilnika |
Slika 6b: razdelitev območja gonilnika z isto šablono, kakor je
bila uporabljena na sliki 6a |
Slika 7a: Sesalna cev za aksialno trubino z vertikalno osjo |
Slika 7b: Sesalna cev za aksialno trubino s horizontalno osjo |
Kvaliteta mreže
Da bi demonstrirali primernost (kvaliteto) šablone za razdeljevanje izbranega
računskega območja je potrebno izbrati nek kriterij. Kot primer smo izbrali
velikost kota med sosednjimi ploskvami v celicah. Glede na kot bomo nato
celice razvrstili v razrede, nato pa bomo opazovali število celic v posameznih
razredih. Slika 8 kaže, kako smo to izvedli na primeru razdelitve območja
vodilnika. Uporabili smo dve različni šabloni za isto računsko območje..
Slika 8a: mreža s šablono 1 pred optimizacijo |
Slika 8b: mreža s šablono 2 pred optimizacijo |
Slika 8c: mreža s šablono 1 po optimizaciji |
Slika 8d: mreža s šablono 2 po optimizaciji |
Izkazalo se je, da dosežemo boljšo mrežo z uporabo šablone 2 v širšem
razponu uporabniških podatkov (npr. zelo ukrivljene lopatice, velik interval
zasuka lopatice), kot pa z uporabo šablone 1. Kadar pa imamo opravka z
majhnim zasukom lopatice pa dosežemo bolšo mrežo s šablono 1.
Orodje "gridedit"
Na osnovi opisanega koncepta šablon smo razvili orodje za generiranje
blok-strukturiranih mrež v kopliciranih 3D območjih. Sestavljeno je iz
dveh delov:
- predprocesor z naborom funkcij, ki pretvorijo uporabiške vhodne podatke
v gradnike tipa B-zlepek in ki v celoti opisujejo računsko območje;
- interaktivno grafično orodje za optimizacijo, vizualizacijo in
generiranje mreže v manjših volumnih.
Mreža nastane v štirih korakih:
- izdelava šablone, ki predvidi variacijo oblik in dimenzij. To fazo
naj izvede strokovnjak. Postopek se zapiše v "makro" datoteki. Naše
izkušnje kažejo, da to traja 8-16 delovnih ur.
- avtomatska pretvorba primitivnih vhodnih podatkov v celovit popis
računskega območja z B-zlepki. To izvede predprocessor. Ta korak je
popolnoma avtomatičen in traja nekaj sekund.
- interaktivna ročna optimizacija gradnikov manjših volumnov. Cilj je
doseganje čim večje ortogonalnosti robov manjših volumnov. To traja nekaj
minut;
- avtomatično generiranje mreže znotraj kuboidnih manjših volumnov.
Ta faza lahko traja od nekaj sekund do nekaj minut za mreže z več kot
100.000 celicami.
Slika 9: Uporabniški vmesnik grafičnega dela orodja "gridedit" |
V praksi so avtorji uspešno uporabili orodje "gridedit" za izdelavo množice
časovno spreminjajočih se mrež za časovno odvisno simulacijo toka med
nenadno ustavitvijo aksialne vodne turbine.
Na tržišču obstaja nekaj podobnih orodij s podobnimi lastnostmi
(AEA Turbogrid, Pointwise gridgen). Pomembne prednosti našega orodja so:
- 3D interaktivna vizualizacija geometrije in direktna manipulacija
kontrolnih točk in dodatna kontrola ukrivljenosti robov;
- predogled porazdelitve mreže je takojšen;
- uporabnik lahko zazna "slaba" področja mreže in oceni kvaliteto, še
preden mrežo izvozi;
- splošnost koncepta omogoča uporabniku prireditev obstoječih šablon
poljubni geometriji;
- sposobnost interaktivnega spreminjanja gradnikov in dodajanje novih po potrebi;
- natančna kontrola porazdelitve mreže znotraj manjših volumnov in na
robovih rač. območja.
Programsko opremo smo kodirali v jezikih C in C++ ter uporabili
OPEN GL grafične knjižnice, ki omogočajo dobro interaktivno podporo ter 3D
manipulacijo z objekti.
Dodatni dokumenti
[1] T. Kolšek, M. Šubelj, J. Duhovnik: "Generation of block-structured grids in
complex computational domains using templates",
Finite elements in analysis and Design, 2002 (samo v angleščini)
[2] T. Kolšek, "Specifične oblike v hidravličnih pretočnih elementih", doktorska teza,
Fakulteta za strojništvo, UNI-Ljubljana, junij 2002 (v slovenščini in angleščini)
[3] M. Šubelj, "Generator numerične mreže za kompleksna 3d območja", diploma,
Fakulteta za strojništvo, UNI-Ljubljana, 2001
[4] "gridedit" orodje, prosto dostopno, zaprosite avtorje.
|
|
|
|
|
|
|