Programmierpraktikum 2013/14






Programmierpraktikum 2013/14
Aufgabenstellungen

  Thema Betreuer
1
n der Kristallographie wird die relative Lage von Kristallen durch Rotationen, also durch Elemente der Gruppe aller orthogonalen 3x3-Matrizen mit Determinante 1 beschrieben. F\u0308ur die anschauliche Darstellung von Kristallausrichtungen m\u0308ochte man jeder Rotation eine Farbe zuordnen
Farbkodierungen der Matrixgruppe SO(3)
, Matlab-Programmierung mehr
R. Hielscher
2 Fibonacci- und Lucaszeitziele in trendbereinigten Charts M. Lorenz
3 Magnetsysteme für Märkte (Arbeit mit Trade Station, Programmierung in Easy Language M. Lorenz
4
Bisher ist bekannt, wenn ein Anstieg der Arbeitslosenrate um 13% zu verzeichnen ist, dann ist Rezession. Stimmt das?
Anstieg der Arbeitslosenrate als Frühindikator für eine Rezession
(Excel-Programmierung)
M. Lorenz
5
Für verschiedene Klassen von Operatoren lassen sich wichtige Eigenschaften aus dem Symbol, einer den Operatoren zugeordneten (stückweise) stetigen komplexwertigen Funktion, ableiten. Dies soll in einer Software realisiert werden.
Grundkenntnisse aus der Funktionalanalysis sind empfehlenswert.
Fredholmeigenschaften und Spektren von Faltungsoperatoren
, Nutzung von Matlab mehr
M. Seidel
6
Das Gauß-Seidel-Verfahren (Einzelschrittverfahren) wird als Teilschritt in modernen, effizienten Lösungsverfahren für lineare Gleichungssysteme mit dünn-besetzten Matrizen verwendet. Dabei werden die Komponenten des Lösungsvektors einzeln, entsprechend der jeweiligen Zeile des Gleichungssystems abgeändert. Die Parallelisierung dieses Verfahrens wird dadurch erschwert, dass die Änderung einer Komponente auch andere Zeilen des Systems beeinflusst. Wenn man mehrere Einträge parallel behandelt, kann die zeitliche Abfolge von Schreiboperationen das Ergebnis beeinflussen. Dies kann man jedoch vermeiden indem die Einträge geeignet gruppiert werden, so dass innerhalb einer Gruppe keine Beeinflussung stattfindet, man also parallel arbeiten kann und nur der Übergang von einer Gruppe zur nächsten zwischen den Prozessen synchron erfolgen muss (Schachbrett-Gauß-Seidel). Ziel ist es einen Algorithmus umzusetzen, der geeignete Gruppierungen erzeugt. Dies kann dann in das FEM-Programmpaket FEINS (http://feins.org) eingebunden werden, um dort bei der Parallelisierung zu helfen.
Graph coloring für dünnbesetzte Matrizen und paralleles Gauß-Seidel-Verfahren
, Programmiersprache C
R. Schneider
7
Simulation verschiedener Verformungen, z.B. das Aufrollen eines Bleches oder das Biegen eines Stabes zu einem Buchstaben oder anderen Symbolen. Dazu müssen geeignete Verschiebungen auf einem Teilrand vorgegeben werden. Dies kann durch angreifende Kräfte ergänzt werden.
Visualisierung von Deformationen in FEniCS
, Implementierung in FEniCS, Programmierkenntnisse in C++ mehr
A. Günnel
8
Zur Erkennung von handgeschriebenen Ziffern kommen heutzutage diverse Algorithmen zum Einsatz. Bevor jedoch eine Ziffer erkannt werden kann, muss diese in einem geeigneten Format vorliegen, welches der Algorithmus auch verarbeiten kann.
Es soll eine Benutzeroberfläche in Matlab entstehen, welche z. B. eine per Maus gezogene Linie in ein Bild umsetzt.
Benutzeroberfläche zur Handschrifterkennung in MATLAB
mehr
A. Günnel
9 Gauß-Newton-Verfahren mit statistisch motivierter Abbruchbedingung in Abhängigkeit der Verteilungsparameter der Messfehler (z.B. Matlab, Grundkenntnisse Stochastik) mehr R. Herzog
10 Modulentwicklung für parallele schnelle Fouriertransformationen; Bausteine für parallele Softwarebibliothek, Sprache C; Grundkenntnisse im parallelen Programmieren werden im Praktikum erworben mehr M. Pippig
D. Potts
11
Es soll eine PHP-Funktion bereitgestellt werden, die aus einer vorhandenen MySQL-Datenbank zur Stundenplanung für eine Lehrkraft und/oder einen Raum feststellt, ob es einen Konflikt (Doppelbelegung oder Sperrzeit) gibt. Dabei ist zu berücksichtigen, dass in einer Lehrveranstaltung auch eine Gruppe von Lehrkräften eingesetzt sein kann, die dann einzeln zu überprüfen sind.
Mit Hilfe dieser Funktion sollen in einem Auswahlmenü die bereits belegten Zeiten besonders markiert dargestellt werden.
Ergänzend soll eine Liste aller solchen Konflikte für alle Lehrkräfte angezeigt werden, falls vorhanden.
Zur Bearbeitung wird vorübergehend eine eigene MySQL-Datenbank benötigt, die vom URZ bereitgestellt wird.
Konflikterkennung bei der Stundenplanung
(Kenntnisse bzw. Einarbeitung in PHP und MySQL, evtl. zusätzlich Javascript)
M. Pester
12 Bestimmung eines Eigenvektors einer speziellen (sehr großen) blocktridiagonalen Matrix durch Lösung eines Gleichungssystems mit QR- oder QL-Zerlegung; Matrix blockweise verarbeiten, Speicherplatz sparen (Fortran oder C, ggf. mit OpenMP) mehr M. Pester
13
Wir betrachten zunächst einen dreidimensionalen Würfel, der aus N3 kleinen Würfeln zusammengesetzt ist. Jeder dieser kleinen Würfel besteht seinerseits mit Wahrscheinlichkeit p aus Stein und mit Wahrscheinlichkeit (1-p) aus Luft.
Gesucht ist nun bis zu welchem p aus [0,1] ein Weg von der Ober- zur Unterseite des grossen Würfels gefunden werden kann. Ein Weg von einem Luftwürfel zu einem anderen ist möglich, wenn diese aneinandergrenzen.
Es ist ein Simulationsprogramm zu erstellen, welches diese Aufgabe löst und die Wahrscheinlichkeit des Weges P(W) in Abhängigkeit der Wahrscheinlichkeit für Stein P(S) grafisch darstellt.

Im zweiten Teil soll nun das Programm auf einen d-dimensionalen Hypercube, der analog wie oben aus Nd kleinen Hypercubes zusammengesetzt ist, erweitert werden.

The (Hyper-) Cube
oder: Ist der Würfel noch ganz dicht?, Simulationsaufgabe mit Wahrscheinlichkeitsrechnung mehr
R. Unger
14 Bestimmung von optischen Linsen, (gewöhnliche Differentialgleichungen, Newton-Verfahren, numerische Integration) mehr J. Seidel
  bereits vergebene Themen (ohne Gewähr)


Telefon- und Raumverzeichnis


3