AbstractsComputer Science

Problem Solving Environment for Partial Differential Equations in Python

by Ilmar Michael Wilbers




Institution: University of Oslo
Department:
Year: 1000
Keywords: mekanikk numerisk fysikk phyton kodegenerering partielle differensialligninger; VDP::413
Record ID: 1286680
Full text PDF: http://urn.nb.no/URN:NBN:no-23165


https://www.duo.uio.no/handle/10852/10900


https://www.duo.uio.no/bitstream/handle/10852/10900/1/manu.pdf


Abstract

This master thesis presents a collection of tools for solving partial differential equations using Python. Three different Python modules make up the majority of the thesis. When solving partial differential equations using the finite difference method, the resulting code can get quite complicated, for instance when trying to solve a 3D wave equation with a variable diffusion coefficient. Fdmgen is a Python module that helps solving such equations by generating the code for the difference schemes based on keyword arguments. The code that is output from Fdmgen supports several programming languages. Ptex2tex is a tool developed for simplifying writing documents based on your research. By dynamically including source code, figures, and the result of running computer programs on the commandline, we avoid having to do this work manually, with the errors often resulting from such manual work. Ptex2tex generates LaTeX environments based on configuration files and keywords in the text. Latexslides allows you to generate presentation slides using Python. It supports several backends, currently Prosper LaTeX, Beamer LaTeX, and HTML. Additional backends can be added as they become available. The LaTeX code is generated by using instances of various Python classes, requiring the knowledge of programming Python.