ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/oopsePaper/TrajectoryAnalysis.tex
Revision: 899
Committed: Tue Jan 6 18:53:58 2004 UTC (20 years, 8 months ago) by mmeineke
Content type: application/x-tex
File size: 6483 byte(s)
Log Message:
reworked the directory structure to reflect the Outline of the paper. All major sections now have their
own tex file

File Contents

# User Rev Content
1 mmeineke 899
2     \section{\label{sec:analysis}Trajectory Analysis}
3    
4     \subsection{\label{subSec:staticProps}Static Property Analysis}
5    
6     The static properties of the trajectories are analyzed with the
7     program \texttt{staticProps}. The code is capable of calculating the following
8     pair correlations between species A and B:
9     \begin{itemize}
10     \item $g_{\text{AB}}(r)$: Eq.~\ref{eq:gofr}
11     \item $g_{\text{AB}}(r, \cos \theta)$: Eq.~\ref{eq:gofrCosTheta}
12     \item $g_{\text{AB}}(r, \cos \omega)$: Eq.~\ref{eq:gofrCosOmega}
13     \item $g_{\text{AB}}(x, y, z)$: Eq.~\ref{eq:gofrXYZ}
14     \item $\langle \cos \omega \rangle_{\text{AB}}(r)$:
15     Eq.~\ref{eq:cosOmegaOfR}
16     \end{itemize}
17    
18     The first pair correlation, $g_{\text{AB}}(r)$, is defined as follows:
19     \begin{equation}
20     g_{\text{AB}}(r) = \frac{V}{N_{\text{A}}N_{\text{B}}}\langle %%
21     \sum_{i \in \text{A}} \sum_{j \in \text{B}} %%
22     \delta( r - |\mathbf{r}_{ij}|) \rangle \label{eq:gofr}
23     \end{equation}
24     Where $\mathbf{r}_{ij}$ is the vector
25     \begin{equation*}
26     \mathbf{r}_{ij} = \mathbf{r}_j - \mathbf{r}_i \notag
27     \end{equation*}
28     and $\frac{V}{N_{\text{A}}N_{\text{B}}}$ normalizes the average over
29     the expected pair density at a given $r$.
30    
31     The next two pair correlations, $g_{\text{AB}}(r, \cos \theta)$ and
32     $g_{\text{AB}}(r, \cos \omega)$, are similar in that they are both two
33     dimensional histograms. Both use $r$ for the primary axis then a
34     $\cos$ for the secondary axis ($\cos \theta$ for
35     Eq.~\ref{eq:gofrCosTheta} and $\cos \omega$ for
36     Eq.~\ref{eq:gofrCosOmega}). This allows for the investigator to
37     correlate alignment on directional entities. $g_{\text{AB}}(r, \cos
38     \theta)$ is defined as follows:
39     \begin{equation}
40     g_{\text{AB}}(r, \cos \theta) = \frac{V}{N_{\text{A}}N_{\text{B}}}\langle
41     \sum_{i \in \text{A}} \sum_{j \in \text{B}}
42     \delta( \cos \theta - \cos \theta_{ij})
43     \delta( r - |\mathbf{r}_{ij}|) \rangle
44     \label{eq:gofrCosTheta}
45     \end{equation}
46     Where
47     \begin{equation*}
48     \cos \theta_{ij} = \mathbf{\hat{i}} \cdot \mathbf{\hat{r}}_{ij}
49     \end{equation*}
50     Here $\mathbf{\hat{i}}$ is the unit directional vector of species $i$
51     and $\mathbf{\hat{r}}_{ij}$ is the unit vector associated with vector
52     $\mathbf{r}_{ij}$.
53    
54     The second two dimensional histogram is of the form:
55     \begin{equation}
56     g_{\text{AB}}(r, \cos \omega) =
57     \frac{V}{N_{\text{A}}N_{\text{B}}}\langle
58     \sum_{i \in \text{A}} \sum_{j \in \text{B}}
59     \delta( \cos \omega - \cos \omega_{ij})
60     \delta( r - |\mathbf{r}_{ij}|) \rangle \label{eq:gofrCosOmega}
61     \end{equation}
62     Here
63     \begin{equation*}
64     \cos \omega_{ij} = \mathbf{\hat{i}} \cdot \mathbf{\hat{j}}
65     \end{equation*}
66     Again, $\mathbf{\hat{i}}$ and $\mathbf{\hat{j}}$ are the unit
67     directional vectors of species $i$ and $j$.
68    
69     The static analysis code is also cable of calculating a three
70     dimensional pair correlation of the form:
71     \begin{equation}\label{eq:gofrXYZ}
72     g_{\text{AB}}(x, y, z) =
73     \frac{V}{N_{\text{A}}N_{\text{B}}}\langle
74     \sum_{i \in \text{A}} \sum_{j \in \text{B}}
75     \delta( x - x_{ij})
76     \delta( y - y_{ij})
77     \delta( z - z_{ij}) \rangle
78     \end{equation}
79     Where $x_{ij}$, $y_{ij}$, and $z_{ij}$ are the $x$, $y$, and $z$
80     components respectively of vector $\mathbf{r}_{ij}$.
81    
82     The final pair correlation is similar to
83     Eq.~\ref{eq:gofrCosOmega}. $\langle \cos \omega
84     \rangle_{\text{AB}}(r)$ is calculated in the following way:
85     \begin{equation}\label{eq:cosOmegaOfR}
86     \langle \cos \omega \rangle_{\text{AB}}(r) =
87     \langle \sum_{i \in \text{A}} \sum_{j \in \text{B}}
88     (\cos \omega_{ij}) \delta( r - |\mathbf{r}_{ij}|) \rangle
89     \end{equation}
90     Here $\cos \omega_{ij}$ is defined in the same way as in
91     Eq.~\ref{eq:gofrCosOmega}. This equation is a single dimensional pair
92     correlation that gives the average correlation of two directional
93     entities as a function of their distance from each other.
94    
95     All static properties are calculated on a frame by frame basis. The
96     trajectory is read a single frame at a time, and the appropriate
97     calculations are done on each frame. Once one frame is finished, the
98     next frame is read in, and a running average of the property being
99     calculated is accumulated in each frame. The program allows for the
100     user to specify more than one property be calculated in single run,
101     preventing the need to read a file multiple times.
102    
103     \subsection{\label{dynamicProps}Dynamic Property Analysis}
104    
105     The dynamic properties of a trajectory are calculated with the program
106     \texttt{dynamicProps}. The program will calculate the following properties:
107     \begin{gather}
108     \langle | \mathbf{r}(t) - \mathbf{r}(0) |^2 \rangle \label{eq:rms}\\
109     \langle \mathbf{v}(t) \cdot \mathbf{v}(0) \rangle \label{eq:velCorr} \\
110     \langle \mathbf{j}(t) \cdot \mathbf{j}(0) \rangle \label{eq:angularVelCorr}
111     \end{gather}
112    
113     Eq.~\ref{eq:rms} is the root mean square displacement
114     function. Eq.~\ref{eq:velCorr} and Eq.~\ref{eq:angularVelCorr} are the
115     velocity and angular velocity correlation functions respectively. The
116     latter is only applicable to directional species in the simulation.
117    
118     The \texttt{dynamicProps} program handles he file in a manner different from
119     \texttt{staticProps}. As the properties calculated by this program are time
120     dependent, multiple frames must be read in simultaneously by the
121     program. For small trajectories this is no problem, and the entire
122     trajectory is read into memory. However, for long trajectories of
123     large systems, the files can be quite large. In order to accommodate
124     large files, \texttt{dynamicProps} adopts a scheme whereby two blocks of memory
125     are allocated to read in several frames each.
126    
127     In this two block scheme, the correlation functions are first
128     calculated within each memory block, then the cross correlations
129     between the frames contained within the two blocks are
130     calculated. Once completed, the memory blocks are incremented, and the
131     process is repeated. A diagram illustrating the process is shown in
132     Fig.~\ref{fig:dynamicPropsMemory}. As was the case with \texttt{staticProps},
133     multiple properties may be calculated in a single run to avoid
134     multiple reads on the same file.
135    
136     \begin{figure}
137     \epsfxsize=6in
138     \epsfbox{dynamicPropsMem.eps}
139     \caption{This diagram illustrates the dynamic memory allocation used by \texttt{dynamicProps}, which follows the scheme: $\sum^{N_{\text{memory blocks}}}_{i=1}[ \operatorname{self}(i) + \sum^{N_{\text{memory blocks}}}_{j>i} \operatorname{cross}(i,j)]$. The shaded region represents the self correlation of the memory block, and the open blocks are read one at a time and the cross correlations between blocks are calculated.}
140     \label{fig:dynamicPropsMemory}
141     \end{figure}