KONWIHR Project OOPCV

Suche


OOPCV: Object-oriented Programming Elements for Computer Simulations in Multi-particle Physics

Project summary

Das Studium hochkorrelierter Vielteilchensysteme ist eines der großen Themen der heutigen physikalischen Grundlagenforschung. Korrelierte Elektronensysteme sind zum Beispiel entscheidend für die Materialeigenschaften der Hochtemperatur-Supraleiter und der "Colossal Magnetoresistance"-Materialien. Bei beiden Materialklassen bestehen sehr aussichtsreiche technologische Anwendungsmöglichkeiten, bei den "Colossal-Magnetoresistance"-Materialien zum Beispiel auf dem Gebiet der Datenspeicherung ("magnetic recording"). Auch die in jüngster Zeit als vielversprechendste Bauelemente für Quanten-Computer gehandelten Halbleiter-Spinsysteme fallen in diese Forschungsrichtung.

Ursache für die interessanten Eigenschaften all dieser Materialien ist eine ungewöhnlich starke quantenmechanische Verschränkung der Wellenfunktionen einzelner Teilchen in ihnen; dies bedingt aber gleichzeitig Probleme bei der theoretischen Beschreibung und Modellierung. In Systemen, in denen die sogenannten Vielteilcheneffekte dominieren, können quantitative Aussagen oft nur noch mit aufwändigen numerischen Simulationen erreicht werden. Mit ihrer Hilfe kann direkt, unter Einschluss aller Vielteilcheneffekte, nachgeprüft werden, welche mit dem Experiment vergleichbaren Vorhersagen verschiedene mikroskopische Modelle liefern, mit denen die Physiker die untersuchten Phänomens beschreiben wollen. So wie am Computer simulierte "Crash-Tests" in der Automobil-Industrie heute schon Kosten und Entwicklungszeit senken, werden numerische Simulationen in Zukunft das bisher weitgehend empirische Vortasten auf der Suche nach technologisch interessanten Materialien deutlich beschleunigen.

Im Gegensatz zu anderen Bereichen des "Scientific Computing" existieren auf dem Gebiet der Gittersimulationen in der Festkörperphysik bisher keine allgemein einsetzbaren Programmbibliotheken, stattdessen entwickeln die einzelnen Arbeitsgruppen unkoordiniert ihre jeweils eigenen Programme weiter. Diese bestehen im Kern meist aus prozedural programmierten Fortran77-Routinen und sind daher mit zunehmender Komplexität immer schwerer zu durchschauen und zu warten. Die Arbeitsgruppen des Antragstellers und seiner Kooperationspartner haben in den letzten Jahren führend an der Entwicklung immer leistungsfähigerer Simulationstechniken in der Festkörperphysik mitgewirkt. Diese Kenntnisse sollen im beantragten Projekt in Form von einfach und flexibel einsetzbaren objektorientierten Softwarebausteinen zusammengefasst und für Forschung und Lehre zur Verfügung gestellt werden. Damit soll auch Nutzern ohne größere Kenntnisse in der Programmierung paralleler Hochleistungsrechner ermöglicht werden, innerhalb kürzester Zeit leistungsfähige Simulationen für sehr weitgefasste Klassen physikalischer Fragestellungen auf den verschiedensten Kristallgitter-Geometrien zu entwerfen. Die neuen Bibliotheken sollen sowohl in der physikalischen Grundlagenforschung als auch in der Projektarbeit mit Studenten eingesetzt werden. Daneben soll die Zusammenarbeit mit experimentell arbeitenden Forschergruppen aus angewandter Physik und Industrie gesucht werden.

Konkret setzt sich das hier vorgestellte Projekt vier Ziele:

  • Zunächst sollen sehr sorgfältig die gemeinsamen Grundstrukturen bei verschiedenen Kristallgitter-Simulationen in der Theoretischen Festkörperphysik herausgearbeitet und in eine objektorientierte Klassenstruktur übersetzt werden.
  • Diese Grundstrukturen sollen sodann in eine Bibliothek flexibel einsetzbarer Programmbausteine umgesetzt werden. Mit Hilfe von objektorientien Softwaredesign-Techniken und der Programmiersprache C++ sollen dabei leicht zu wartende und erweiterbare Funktionseinheiten entstehen, wobei gleichzeitig der oft überschätzte "abstraction penalty" dieser Methoden gegenüber traditionellen Fortran-Routinen durch Template-Techniken, konsequentes Inlining und andere Techniken sehr klein gehalten werden kann.
  • Diese Programmbausteine sollen mit weiteren Hilfsbibliotheken zusammenarbeiten, die den Einsatz auf verteilten Rechnersystemen ermöglichen. Als Basis dieser Parallelisierungsbibliotheken wird die von Prof. Dr. M. Troyer und Mitarbeitern an der ETH Zürich entwickelte und bereits in der Praxis bewährte Alea-Bibliothek dienen.
  • Schließ lich sollen die entwickelten Module bei der Behandlung aktueller Fragestellungen aus der Theorie der Spinsysteme, der Hochtemperatursupraleitung und anderer aktueller Fragestellungen der theoretischen Festkörperphysik ihre Leistungsfähigkeit unter Beweis stellen.

Dem Benutzer der Bibliothek wird somit ermöglicht, durch Kombination eines beliebigen ein-, zwei- oder dreidimensionalen Kristallgitter-Objektes, einer Modellierung der elementaren physikalischen Wechselwirkungen in dem Material und einer Simulationstechnik (zum Beispiel Quanten-Monte-Carlo, DMRG oder Exakte Diagonalisierung) innerhalb kürzester Zeit eine maß geschneiderte Computersimulation zu erstellen. Sollte das gewünschte Gitter- oder Modellierungsobjekt nicht in der Bibliothek vorhanden sein, kann es unter Benutzung der vorhandenen Bausteine und unter Beachtung der ausführlich kommentierten Klasseninterfaces rasch neu geschaffen und der Bibliothek hinzugefügt werden.

KONWIHR funding

  • initial KONWIHR funding: 11/2000 - 10/2003

Contact:

  • Prof. Dr. Werner Hanke, Theoretische Physik I, Uni-Würzburg

Selected publications