CWI-onderzoeker laat computers slimmer rekenen

Als je sneller wil rekenen met je computer kun je een betere processor en meer geheugen kopen. Maar je kunt ook slimmer rekenen. Marc van Raalte, onderzoeker aan het Centrum voor Wiskunde en Informatica (CWI) in Amsterdam werkte aan methodes die wiskundige functies op een handige manier benaderen. Berekeningen aan bijvoorbeeld lucht- en vloeistofstromen of de verspreiding van warmte verlopen hierdoor sneller en worden nauwkeuriger. Op 6 december promoveert hij aan de Universiteit van Amsterdam.

Publicatiedatum
29 november 2004

Als je sneller wil rekenen met je computer kun je een betere processor en meer geheugen kopen. Maar je kunt ook slimmer rekenen. Marc van Raalte, onderzoeker aan het Centrum voor Wiskunde en Informatica (CWI) in Amsterdam werkte aan methodes die wiskundige functies op een handige manier benaderen. Berekeningen aan bijvoorbeeld lucht- en vloeistofstromen of de verspreiding van warmte verlopen hierdoor sneller en worden nauwkeuriger. Op 6 december promoveert hij aan de Universiteit van Amsterdam.

Wiskundigen zijn dol op partiële differentiaalvergelijkingen (PDV's). In de eerste plaats omdat ze overal voorkomen in wetenschap en techniek. De verspreiding van warmte in een pan, de luchtstroom langs een vliegtuigvleugel of het elektrisch veld van een antenne, allemaal worden ze beschreven door partiële differentiaalvergelijkingen. De belangrijkste reden is dat het oplossen van PDV's een grote uitdaging vormt. Oplossingen van een PDV zijn functies, bijvoorbeeld een uitdrukking voor de druk rond een scheepsromp. Meestal is het onmogelijk om deze functie exact te vinden. In plaats daarvan proberen wiskundigen hem te benaderen.

Lappendeken
Een van de beste strategieën voor een goede benadering is de zogeheten eindige elementen methode. Bij deze techniek wordt het gebied rond de scheepsromp eerst opgedeeld in een rooster van kleinere cellen. Vervolgens wordt de oplossing van de PDV voor al die cellen apart benaderd door een benaderingsfunctie. Wiskundigen hebben in de afgelopen eeuwen allerlei oplossingstechnieken ontwikkeld die deze functies in een zo klein mogelijk aantal stappen kunnen vinden. Het resultaat is een soort lappendeken van benaderingsfuncties die samen een grote aaneengesloten benadering vormen van de oplossing van de PDV. Kleinere 'lapjes' en complexere benaderingsfuncties geven een betere benadering van de oplossing, maar kosten meer tijd en geheugen.

De grote uitdaging is om nieuwe technieken te vinden waarmee eindige elementen benaderingen sneller kunnen worden berekend. Van Raalte heeft als eerste een manier gevonden om twee van deze technieken, discontinue Galerkin methodes en multirooster algoritmes, te combineren. Afzonderlijk functioneren ze prima, maar een manier om de technieken goed te laten samenwerken bestond nog niet. Ook heeft van Raalte een nieuwe methode ontwikkeld om benaderingen te maken voor rekengebieden met kromme randen, bijvoorbeeld vliegtuigvleugels. Dankzij deze twee verbeteringen kunnen berekeningen aan PDV's sneller verlopen. De Universiteit van Michigan, het Lawrence Livermore National Laboratory en de NASA in de Verenigde Staten hebben belangstelling getoond voor van Raaltes werk.

Discontinue Galerkin
De discontinue Galerkin benadering is een steeds populairder type eindige elementen methode. Deze techniek werkt op dezelfde manier als een 'klassieke' eindige elementen methode, met het verschil dat naburige benaderingsfuncties niet aaneengesloten hoeven te zijn. Dit lijkt een nadeel, maar in de praktijk is een discontinue Galerkin benadering even nauwkeurig als een aaneengesloten eindige elementen benadering. Omdat de benaderingsfuncties bij de discontinue Galerkin methode niet hoeven aan te sluiten, is het bovendien makkelijker om ze per roostercel aan te passen. Zo kunnen abrupte veranderingen in de druk worden benaderd met complexe functies en kleine roostercellen, terwijl eenvoudige functies en grote cellen voldoende zijn voor geleidelijke drukveranderingen. Rekenintensieve benaderingen worden daardoor alleen gebruikt op de plekken waar dat echt nodig is.

Multirooster
De discontinue Galerkin methode heeft ook beperkingen. Tijdens zijn promotieonderzoek heeft van Raalte oplossingen gevonden voor twee van deze problemen. Een probleem is dat de discontinue Galerkin methode zich slecht laat combineren met multirooster-algoritmes, een veel gebruikte en snelle oplossingstechniek. Multirooster-algoritmes functioneren echter vaak niet goed bij verspringende benaderingsfuncties. En die komen bij de discontinue Galerkin nu juist veel voor. Van Raalte richtte het multirooster-proces zo in dat het beter rekening houdt met discontinuïteiten.

Van Raalte keek ook naar de randen van het rekengebied. Voor eindige elementen methodes moet deze rand samenvallen met randen van de roostercellen. Voor multirooster-algoritmes is het praktisch om een rechthoekig rooster te gebruiken. Deze twee eisen zijn tegenstrijdig bij een rekengebied met een kromme rand. De meeste eindige elementen software lossen dit op door de tweede eis te laten vallen en de cellen langs de rand af te snijden. Van Raalte houdt de cellen rechthoekig door ze te laten doorlopen voorbij de rand. Vervolgens berekent hij een benadering en snijdt hij die juist af in plaats van de cellen. In theorie is dit een simpel idee, maar de wiskundige uitvoering bleek niet eenvoudig. Toch lukte het van Raalte, waardoor benaderingen in een krom rekengebied ook kunnen profiteren van de snelheid van multirooster-algoritmes.

- De titel van het proefschrift is Multigrid Analysis and Embedded Boundary Conditions for Discontinuous Galerkin Discretization.