03.12.2012 Views

C++ for Scientists - Technische Universität Dresden

C++ for Scientists - Technische Universität Dresden

C++ for Scientists - Technische Universität Dresden

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Programmierprojekte<br />

Kapitel 15<br />

Die folgenden Hinweise betreffen alle Projekte.<br />

• Die Projekte werden vorzugsweise in Teams von 2 Studenten realisiert.<br />

• Jedes Team bekommt ein Repository in einem MTL4-Zweig zur Verfügung.<br />

• Das heißt auch, dass jeder Kursteilnehmer die Versionskontrollesoftware “subversion” lernen<br />

muss, siehe http://subversion.tigris.org/. Die Vorlesung von Greg Wilson<br />

gibt eine ausreichende Einführung in subversion, siehe http://software-carpentry.<br />

org/. Ich werde in der 2. Übung (19.4.) selbst eine kurze Einführung geben.<br />

• Die Projekte sollen mit einem Kommando gebildet (kompiliert, gelinkt) werden. Verwenden<br />

Sie möglichst “cmake”. 1 cmake ist bei jedem vernünftigen Linux mit dabei und<br />

müsste auch auf dem Pool vorhanden sein. Gibt es sogar für Windows: dort kann es die<br />

Projektdateien für Visual Studio erzeugen.<br />

• Schreiben Sie zuerst Tests für neue Features, bevor Sie sie implementieren.<br />

• Versuchen Sie, Ihre Rückfragen auf die Übungszeiten zu begrenzen.<br />

• Schreiben Sie eine doxygen-Dokumentation für Ihre Klassen und Funktionen (auf englisch).<br />

Schreiben Sie möglichst viele Beispiele. (Diese können gern von Ihren Tests abgeleitet<br />

sein.)<br />

– Formeln möglichst mit den Kommandos für L ATEX-Einfügungen (\f[ u.ä) erstellen.<br />

Bei dieser Gelegenheit lernt man häufig auch seine Linux-Installation besser kennen,<br />

da doxygen L ATEX nicht immer findet. Es ist hier keine Schande, Hilfe von befreundeten<br />

Hackern in Anspruch zu nehmen.<br />

15.1 Potenzieren von Matrizen A x<br />

Implementieren Sie Algorithmen für A x für verschiedene Matrixtypen und für x ∈ Q als x ∈ R.<br />

1 Notfalls reines “make” (siehe z.B. http://software-carpentry.org/build.html).<br />

285

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!