Hidrológiai Közlöny 1991 (71. évfolyam)

5. szám - Gáspár Csaba: Többhálós – multigrid – eljárással összekapcsolt peremintegrálegyenlet módszer, és annak szivárgáshidraulikai alkalmazása

GASPAR CS.: Tübbhálós — multlgrid — eljárás 289 mindenekelőtt egy elég sűrű rács-, ill. elemháló­zattal kell lefedni azt a tartományt, ahol az egyen­let ki van tűzve, és ezen fogjuk számítani a kö­zelítő megoldást: mivel pedig a ritkább rácshálón pontatlanabb eredményt kapunk, azért a még kezelhető legfinomabb háló használatára törek­szünk, és minden diszkretizálást és számítást azon végzünk. Ezzel ellentétben, a multigrid szemlélet szerint egyszerre foglalkozunk egy soro­zat, egyre finomodó hálóval, és a durvább háló­kon nyert közelítéseket is felhasználjuk a finomabb hálókbeli közelítések javítására. Az így elérhető számítási sebességnövekedés meglepően nagy: a sebesség akár nagyságrendekkel is felülmúlhat ja a „hagyományos" technikák sebességét, és egy sor esetben megközelíti az elméletileg lehetséges maxi­mális sebességet (ill. minimális számításigényt). A véges differencia módszerrel összekapcsolt multigrid technikát széleskörűen és igen jó ered­ménnyel alkalmazzák számos probléma megoldá­sára, különösen folyadékmozgások modellezésére, ld. pl. Vanka (1986), Sivaloganathan és Shaw (1988), Kettler (1987), Spekreijse (1987). Nem célunk részletesen ismertetni a multigrid módszert, és annak matematikai részleteit tár­gyalni. Ezt illetően az irodalomra utalunk: ld. pl. Brandt (1984), Stílben és Trottenberg (1984), Hackbuscli (1985). A hangsúlyt a multigrid mód­szer egyéb technikákkal való kombinálására fog­juk helyezni. Itt csak az alapelveket vázoljuk röviden. Valamilyen hálón diszkretizálva a feladatot, véges differencia (vagy véges elem) módszerrel, egy diszkrét egyenletrendszert nyerünk. A multi­grid technika alapvetően iteratív eljárás, mely­nek alapgondolata, hogy a közelítő megoldás hibáját két különálló lépésben csökkenthetjük. Mégpedig, a hibát diszkrét Fourier-sorba fejtve, külön redukáljuk a hiba nagyfrekvenciás kom­ponenseit és külön a kisfrekvenciásokat. E két lépés teljesen különböző algoritmust igényel. A nagyfrekvenciás komponensek általában egy­szerű iterációs lépésekkel hatékonyan csökkent­hetők. (Ugyanezek az iterációk a kisfrekvenciás komponensekre közel sem olyan hatékonyak, ezcrt, ha csak ezeket alkalmaznánk, a konver­gencia lassú lenne.) A kisfrekvenciás komponen­sek viszont jól lecsökkenthetők azáltal, hogy a problémát visszavezetjük egy durvább diszkreti­zációra, és az itt nyert közelítő megoldást vala­hogyan „visszahozzuk" a finomabb hálóra. Pontosabban, legyen X/, egy véges dimenziós vektortér (az adott hálón értelmezett diszkrét függvények összessége). A diszkrét (lineáris) egyenlet legyen A hx h—b h (6) alakú. írjuk ezt át valamilyen ekvivalens módon x h—B hx h + c h (7) formába. A (7) egyenlet egy iterációt generál, mégpedig a következőt: x' ,+ 1: = BnXh+Ch H Legyen továbbá Xu egy másik, kisebb dimen­ziós vektortér („durvább háló"). Legyen Pj, V/, -«• X/i valamilyen ráképezés (leszűkítés a durva hálóra), / A:X W— X/, valamilyen beágyazás (ki­terjesztés a finom hálóra), az (1) egyenletbeli A h leképezést (mátrixot) pedig approximáljuk az X H durva hálón az A H leképezéssel. A leképe­zések szerepét jól szemlélteti az 1. ábrán látható séma: 1. ábra. A leképezések szerepét szemléltető séma a multi­grid módszer felépítésében Tegyük fel, hogy X/,-n már ismert (1) megoldásá­rKj nak egy X/, közelítése. Keressük az x/, megoldást x h\=x k + w k (8) alakban, akkor a Wh korrekciós tag nyilván ki­elégíti az A hw h—b h - A hx h— : r h (9) ún. maradékegyenletet. Ezt az egyenletet oldjuk meg az Xu durva hálón, azaz oldjuk meg az AnWu—rn : =iV* egyenletet, és a megoldást az Ih operátor segít­ségével terjesszük ki az Xh finom hálóra. Ha az így nyert kifejezést (9)-ban u•/, helyére írjuk, a pontos X/, megoldás egy újabb közelítését kapjuk: Xh: = Xh + IhA~ iPhrh=Xh-\-IhA~^Ph(bii-AhXh) (10) Azt várjuk, hogy x h egy lényegesen jobb köze­lítése a pontos x h megoldásnak mint az x h kezdeti közelítés. Az eljárást kombinálva a (7) iterációval, nyer­jük az alábbi „kétszintű" megoldási algoritmust: 1. Vegyünk egy xi, kezdeti közelítést. 2. Alkalmazzuk a (7) iterációt; elég csak kevés­szer, tipikusan 1.. .5-ször: Xh: = BhXh + Ch 3. Korrigáljuk az előző lépésben nyert közelítést a (9) maradókegyenlet szerint: x/,:=xh + wh, ahol w/t: = Ih A'^Puh és ru: — hh — Ai,xi, 4. Megismételjük néhányszor a (7) iterációt. A 4. lépés után nyert újabb közelítéssel az egész eljárást ismételni lehet mindaddig, amíg a hiba elég kicsi nem lesz.

Next

/
Thumbnails
Contents