X-Git-Url: https://hackdaworld.org/gitweb/?p=lectures%2Flatex.git;a=blobdiff_plain;f=nlsop%2Fdiplom%2Fquellcode.tex;h=ffd083cecc2fec86123278a4b3497bea3796ee89;hp=3f9cab285f3fefcd790a68e48ffe231d95b30cc6;hb=36187bae1c0c7b7f220ff0143af18325f6b3c8d6;hpb=284dad8a21ef48a585076e380a3be8a6bc177cce diff --git a/nlsop/diplom/quellcode.tex b/nlsop/diplom/quellcode.tex index 3f9cab2..ffd083c 100644 --- a/nlsop/diplom/quellcode.tex +++ b/nlsop/diplom/quellcode.tex @@ -1,12 +1,116 @@ -\chapter{Funktion und Quelltext der Programme} +\chapter{Funktionen der Programme} + +{\em NLSOP} besteht aus einer Anzahl von Programmen. +Diese sollen im Folgenden vorgestellt werden. +Der Quellcode ist auf der beigelegten Compact Disc enthalten. + \section{Server} + \begin{verbatim} + nlsop_server.c + \end{verbatim} + Ein {\em Server}-Programm, bei dem sich {\em Client} und {\em Benutzeroberfl"ache} anmelden. + Dieses verteilt die zu rechnenden Simulationen auf freie {\em Client}-Rechner oder h"alt Simulationsauftr"age in einer Warteschlange. + Es nimmt fertige Rechenergebnisse entgegen und speichert sie lokal ab. + Es h"alt Statusinformationen "uber die laufenden Rechnungen und die Warteschlange zur Abfrage bereit. + Weiterhin nimmt es Simulationsauftr"age entgegen. + Die Interaktion mit {\em Client} und {\em Benutzeroberfl"ache} erfolgt durch das Netzwerk "uber eine {\em TCP/IP}-Verbindung. \section{Client} + \begin{verbatim} + nlsop_client.c + \end{verbatim} + Das {\em Client}-Programm beinhaltet den eigentlichen Simulationscode. + Es meldet sich beim {\em Server} an und nimmt Rechenaufgaben entgegen. + Nach einer eintellbaren Anzahl von Durchl"aufen "ubergibt es Zwischenergebnisse beziehungsweise das Endergebnisse an den {\em Server}-Prozess. + Nach Beendigung einer Simulation geht es zur"uck in den Ruhezustand und wartet auf neue Rechenauftr"age. \section{Benutzeroberfl"ache} + \begin{verbatim} + nlsop_gui.c + \end{verbatim} + Die {\em Benutzeroberfl"ache} dient zur "Ubergabe von Simulationsauftr"agen an den {\em Server}. + Weiterhin dient es zur Statusabfrage von laufenden Rechnungen, der Warteschlange und der angemeldeten {\em Client}-Rechner. \section{Standalone Version} + \begin{verbatim} + nlsop.c + \end{verbatim} + Die {\em Standalone Version} ist ein eigenst"andiges Programm, das unter anderem auch den Simulationscode beinhaltet. + Zus"atzlich stellt sie eine Benutzeroberfl"ache zur Verf"ugung, die die Untersuchung des fertig simulierten Ergebnisses erm"oglicht. + Man kann Grafiken, die den TEM-Aufnahmen "ahnlich sind, sowie Druckspannungen und den Kohlenstoffgehalt visualisieren und als Bitmap abspeichern. + Ausserdem kann man Kohlenstoffprofile erzeugen und die Tiefe der vorderen und hinteren Grenzfl"ache einer vorhandenen durchgehenden Schicht bestimmen. \section{APIs} + Einige Funktionalit"at wurde in externen Programmierschnittstellen ausgelagert. + Diese sind im Folgenden vorgestellt. + \begin{itemize} + \item \begin{verbatim} network.c, network.h \end{verbatim} \\ + Hilfsmittel zur Verbindung der Programmteile "uber das Netzwerk. + \item \begin{verbatim} input.c, input.h \end{verbatim} \\ + Funktionen f"ur die Benutzereingabe. + \item \begin{verbatim} list.c, list.h \end{verbatim} \\ + Hilfsmittel zur Benutzung von verlinkten Listen. + \item \begin{verbatim} display.c, display.h \end{verbatim} \\ + Funktionen zur Visulisierung auf Konsolenebene. + \item \begin{verbatim} event.c, event.h \end{verbatim} \\ + Hilfsmittel zum Eventmanagement. + \item \begin{verbatim} bmp.c, bmp.h \end{verbatim} \\ + Funktionen f"ur die Erstellung und Bearbeitung von Bitmap Dateien. + \item \begin{verbatim} fourier.c, fourier.h \end{verbatim} + Funktionen f"ur die diskrete Fouriertransformation. + \item \begin{verbatim} dfbapi.c, dfbapi.h \end{verbatim} + Helfer f"ur die Visulaisierung der Endergebnisse. + \item \begin{verbatim} random.c, randomi.h \end{verbatim} + Funktionen zur Erzeugung spezieller Wahrscheinlichkeitsverteilungen. + \end{itemize} + + \section{Andere Hilfsmittel} + \label{section:hilfsmittel} + + Im Folgenden sind weiter Programme vorgestellt, deren Funktionalit"at aus diversen Gr"unden nicht in die Hauptprogramme eingeflossen ist. + + \begin{itemize} + \item \begin{verbatim} nlsop_make_cryst.c \end{verbatim} \\ + Estellt ein Duplikat eines gespeicherten Ergebnisses wobei alle Zust"ande der Volumen auf \dq Kristallin\dq{} gesetzt werden. + \item \begin{verbatim} parse_trim_collision.c \end{verbatim} \\ + Werkzeug zur Auswertung der Datei in der {\em TRIM} die Kollisionen protokolliert. + \item \begin{verbatim} dft.c, dft.h \end{verbatim} \\ + Erstellt die zweidimensionale Fouriertransformation eines Bitmaps. + \item \begin{verbatim} linescan.c \end{verbatim} \\ + Erstellt den Linescan "uber ein fouriertransformiertes Bitmap. + \item \begin{verbatim} random_parse.sh \end{verbatim} \\ + Simples Shell-Script zur Auswertung und "Uberpr"ufung der Zufallszahlen. + \end{itemize} + +\chapter{Publikationsliste} + + \section{Eigene Publikationen} + + \begin{enumerate} + + \item F. Zirkelbach, M. H"aberlen, J. K. N. Lindner, B. Stritzker.\\ + {\em Modelling of a selforganization process leading to periodic arrays of nanometric amorphous precipitates by ion irradiation.}\\ + Comp. Mater. Sci. 33 (2005) 310. + + \item F. Zirkelbach, M. H"aberlen, J. K. N. Lindner, B. Stritzker.\\ + {\em Monte-Carlo-Simulation study of the selforganization of nanometric amorphous precipitates in regular arrays during ion irradiation.}\\ + Accepted for publication in IBMM 2004 proceedings issue of NIMB. + + \end{enumerate} + + \section{Konferenzbeitr"age} + + \begin{enumerate} + + \item F. Zirkelbach, M. H"aberlen, J. K. N. Lindner und B. Stritzker.\\ + {\em Monte-Carlo-Simulation der Selbstorganisation amorpher nanometrischer $SiC_x$-Ausscheidungen in Silizium w"ahrend $C^+$-Ionen-Implantation}\\ + AKF-Fr"uhjahrstagung der DPG, Regensburg, 2/2004, DS 1.4 + + \item F. Zirkelbach, M. H"aberlen, J. K. N. Lindner und B. Stritzker.\\ + {\em Kinetik des Selbstorganisationsvorganges bei der Bildung von $SiC_x$-Ausscheidungs-Arrays in $C^+$-Ionen-implantiertem Silizium.}\\ + 69. Jahrestagung der DPG, Berlin, 2/2005, DS 8.6 + + \end{enumerate} +