From: hackbard Date: Mon, 25 Apr 2005 12:04:01 +0000 (+0000) Subject: commit often and soon ... X-Git-Url: https://hackdaworld.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=398799e2224059b0fff190653170c49456cbec72;p=lectures%2Flatex.git commit often and soon ... --- diff --git a/nlsop/diplom/grundlagen.tex b/nlsop/diplom/grundlagen.tex index 7e6aa2e..9516a59 100644 --- a/nlsop/diplom/grundlagen.tex +++ b/nlsop/diplom/grundlagen.tex @@ -2,7 +2,70 @@ \section{Monte-Carlo-Simulation} - + Monte-Carlo-Simulationen sind Computer-Experimente zur Untersuchung interessierender Sachverhalte, die auf stochastischen Simulationsalgorithemn basieren. + Dabei werden vom Computer generierte Pseudozufallszahlen auf physikalische Gr"o"sen abgebildet. + Den Ausgangspunkt bilden dabei sogenannte Standard-Pseudozufallszahlen, die auf einem vorgegebenen Intervall gleichverteilt sind. + Hiervon ausgehend k"onnen beliebige Verteilungen durch Transformationen und Verwerfungsmethoden erzeugt werden. + + \subsection{Erzeugung gleichverteilter Pseudozufallszahlen} + + Die h"aufigste Methode zur Erzeugung von Zufallszahlen ist die lineare Kongruenzmethode, welche eine Sequenz von ganzen Zahlen $I_1, I_2, I_3,$ \ldots aus dem Intervall $I = [0,m-1]$ generiert. + Dabei gilt folgende Vorschrift: + \begin{equation} \label{eq:kon_m} + I_{j+1} = ( a I_{j} + c ) \, mod \, m + \end{equation} + \[ m: \textrm{Modulus, } a: \textrm{Multiplikator, } c: \textrm{Inkrement, } I_0: \textrm{Startwert} \] + Die Zufallszahlen k"onnen sich mit einer Periode, die offensichtlich nicht gr"o"ser als $m$ ist, wiederholen. + Die Qualit"at der Zufallszahlen h"angt dabei sehr stark von der Wahl der Konstanten $a, c, m, I_0$ ab. + Leider gibt es keine einfache mathematische Methode zur Ermittlung optimaler Konstanten. + Nach Park und Miller \cite{park_miller} erf"ullt man mit + \begin{equation} \label{eq:kon_v} + a = 7^5 = 16807, \quad m = 2^{31} - 1 = 2147483647, \quad c = 0 + \end{equation} + einen minimalen Standard was die Qulit"at der Zufallszahlen angeht. + Diese Wahl der Konstanten wird in vielen Zufallsfunktionen der Standardbibliotheken verwendet. + + \subsection{Transformation auf spezielle Zufallsverteilungen} + + Die mit \eqref{eq:kon_m} und \eqref{eq:kon_v} erzeugten Pseudozufallszahlen $I_j$ sind gleichverteilt im Intervall $[0,m-1]$. + Durch Division der Zufallszahlen mit dem Modulus $m$ erh"alt man gleichverteilte Zufallszahlen $x_j$ im Intervall $[0,1[$, so dass die Wahrscheinlichkeit eine Zahl zwischen $x$ und $x + dx$ zu erhalten durch + \begin{equation} + p(x)dx = \left\{ + \begin{array}{ll} + dx & 0 \leq x < 1 \\ + 0 & \textrm{sonst} + \end{array} \right. + \end{equation} + gegeben ist. Ausserdem ist die Wahrscheinlichkeitsverteilung normiert. + \begin{equation} + \int_{- \infty}^{+ \infty}p(x)dx = \int_{0}^{1}p(x)dx = 1 + \end{equation} + Diese dienen als Basis f"ur beliebige Verteilungen. + Einige in dieser Arbeit ben"otigte Transformationen sollen im Folgenden diskutiert werden. + + \subsubsection{Zufallszahlen mit gleichverteilter Wahrscheinlichkeit} + + Gleichverteilte Zufallszahlen $z_j$ in einem Intervall $[0,M[$ erh"alt man denkbar einfach durch skalieren der $x_j$ mit $M$. + \begin{equation} + z_j = M x_j = M \frac{I_j}{m} + \end{equation} + + \subsubsection{Zufallszahlen mit linear steigender Wahrscheinlichkeit} + + Zufallszahlen deren Wahrscheinlichkeit mit ihrem Wert im Intervall $[0,Z[ linear ansteigen + \begin{equation} + p(z) = az + b + \end{equation} + realisiert man durch folgende Transformation: + \begin{equation} + p(z)dz = p(x)dx \\ + \frac{dx}{dz} = p(z) \\ + x = \infty_0^z p(z')dz' = \infty_0^z (az' + b) dz' = \frac{1}{2} az^2 + bz + \end{equation} + Durch Aufl"osen nach $z$ und Ausschluss der negativen L"osung + + + \subsubsection{Verwerfungsmethode zur Erzeugung beliebiger Verteilungen} \section{Ion-Festk"orper Wechselwirkung}