ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/tengDissertation/Appendix.tex
(Generate patch)

Comparing trunk/tengDissertation/Appendix.tex (file contents):
Revision 2789 by tim, Mon Jun 5 21:00:46 2006 UTC vs.
Revision 2811 by tim, Wed Jun 7 02:24:27 2006 UTC

# Line 1 | Line 1
1 + \appendix
2   \chapter{\label{chapt:appendix}APPENDIX}
3  
4   Designing object-oriented software is hard, and designing reusable
5   object-oriented scientific software is even harder. Absence of
6   applying modern software development practices is the bottleneck of
7 < Scientific Computing community\cite{wilson}. For instance, in the
7 > Scientific Computing community\cite{Wilson}. For instance, in the
8   last 20 years , there are quite a few MD packages that were
9   developed to solve common MD problems and perform robust simulations
10   . However, many of the codes are legacy programs that are either
# Line 18 | Line 19 | for buildings and towns by Christopher Alexander \cite
19  
20   Design patterns are optimal solutions to commonly-occurring problems
21   in software design. Although originated as an architectural concept
22 < for buildings and towns by Christopher Alexander \cite{alexander},
23 < software patterns first became popular with the wide acceptance of
24 < the book, Design Patterns: Elements of Reusable Object-Oriented
25 < Software \cite{gamma94}. Patterns reflect the experience, knowledge
26 < and insights of developers who have successfully used these patterns
27 < in their own work. Patterns are reusable. They provide a ready-made
28 < solution that can be adapted to different problems as necessary.
29 < Pattern are expressive. they provide a common vocabulary of
30 < solutions that can express large solutions succinctly.
22 > for buildings and towns by Christopher Alexander
23 > \cite{Alexander1987}, software patterns first became popular with
24 > the wide acceptance of the book, Design Patterns: Elements of
25 > Reusable Object-Oriented Software \cite{Gamma1994}. Patterns reflect
26 > the experience, knowledge and insights of developers who have
27 > successfully used these patterns in their own work. Patterns are
28 > reusable. They provide a ready-made solution that can be adapted to
29 > different problems as necessary. Pattern are expressive. they
30 > provide a common vocabulary of solutions that can express large
31 > solutions succinctly.
32  
33   Patterns are usually described using a format that includes the
34   following information:
# Line 74 | Line 76 | that you are operating on.
76  
77   \subsection{\label{appendixSection:templateMethod}Template Method}
78  
77 \section{\label{appendixSection:analysisFramework}Analysis Framework}
78
79   \section{\label{appendixSection:concepts}Concepts}
80  
81   OOPSE manipulates both traditional atoms as well as some objects
# Line 83 | Line 83 | freedom.  Here is a diagram of the class heirarchy:
83   collections of atoms or atoms which have orientational degrees of
84   freedom.  Here is a diagram of the class heirarchy:
85  
86 < \begin{figure}
87 < \centering
88 < \includegraphics[width=3in]{heirarchy.eps}
89 < \caption[Class heirarchy for StuntDoubles in {\sc oopse}-3.0]{ \\
90 < The class heirarchy of StuntDoubles in {\sc oopse}-3.0. The
91 < selection syntax allows the user to select any of the objects that
92 < are descended from a StuntDouble.} \label{oopseFig:heirarchy}
93 < \end{figure}
86 > %\begin{figure}
87 > %\centering
88 > %\includegraphics[width=3in]{heirarchy.eps}
89 > %\caption[Class heirarchy for StuntDoubles in {\sc oopse}-3.0]{ \\
90 > %The class heirarchy of StuntDoubles in {\sc oopse}-3.0. The
91 > %selection syntax allows the user to select any of the objects that
92 > %are descended from a StuntDouble.} \label{oopseFig:heirarchy}
93 > %\end{figure}
94  
95   \begin{itemize}
96   \item A {\bf StuntDouble} is {\it any} object that can be manipulated by the
# Line 143 | Line 143 | not & ``!''  \\
143   \subsection{\label{appendixSection:name}Name expressions}
144  
145   \begin{center}
146 < \begin{tabular}{|llp{3in}|}
146 > \begin{tabular}{|llp{2in}|}
147   \hline {\bf type of expression} & {\bf examples} & {\bf translation
148   of
149   examples} \\
# Line 227 | Line 227 | wouldselect StuntDoubles which have mass greater than
227   \end{center}
228  
229   For example, the phrase {\tt select mass > 16.0 and charge < -2}
230 < wouldselect StuntDoubles which have mass greater than 16.0 and
230 > would select StuntDoubles which have mass greater than 16.0 and
231   charges less than -2.
232  
233   \subsection{\label{appendixSection:within}Within expressions}
# Line 241 | Line 241 | atoms.
241   select all StuntDoubles which are within 2.5 angstroms of PO4 or NC4
242   atoms.
243  
244 \section{\label{appendixSection:tools}Tools which use the selection command}
244  
245 < \subsection{\label{appendixSection:Dump2XYZ}Dump2XYZ}
245 > \section{\label{appendixSection:analysisFramework}Analysis Framework}
246  
248 Dump2XYZ can transform an OOPSE dump file into a xyz file which can
249 be opened by other molecular dynamics viewers such as Jmol and VMD.
250 The options available for Dump2XYZ are as follows:
251
252
253 \begin{longtable}[c]{|EFG|}
254 \caption{Dump2XYZ Command-line Options}
255 \\ \hline
256 {\bf option} & {\bf verbose option} & {\bf behavior} \\ \hline
257 \endhead
258 \hline
259 \endfoot
260  -h & {\tt -{}-help} &                        Print help and exit \\
261  -V & {\tt -{}-version} &                     Print version and exit \\
262  -i & {\tt -{}-input=filename}  &             input dump file \\
263  -o & {\tt -{}-output=filename} &             output file name \\
264  -n & {\tt -{}-frame=INT}   &                 print every n frame  (default=`1') \\
265  -w & {\tt -{}-water}       &                 skip the the waters  (default=off) \\
266  -m & {\tt -{}-periodicBox} &                 map to the periodic box  (default=off)\\
267  -z & {\tt -{}-zconstraint}  &                replace the atom types of zconstraint molecules  (default=off) \\
268  -r & {\tt -{}-rigidbody}  &                  add a pseudo COM atom to rigidbody  (default=off) \\
269  -t & {\tt -{}-watertype} &                   replace the atom type of water model (default=on) \\
270  -b & {\tt -{}-basetype}  &                   using base atom type  (default=off) \\
271     & {\tt -{}-repeatX=INT}  &                 The number of images to repeat in the x direction  (default=`0') \\
272     & {\tt -{}-repeatY=INT} &                 The number of images to repeat in the y direction  (default=`0') \\
273     &  {\tt -{}-repeatZ=INT}  &                The number of images to repeat in the z direction  (default=`0') \\
274  -s & {\tt -{}-selection=selection script} & By specifying {\tt -{}-selection}=``selection command'' with Dump2XYZ, the user can select an arbitrary set of StuntDoubles to be
275 converted. \\
276     & {\tt -{}-originsele} & By specifying {\tt -{}-originsele}=``selection command'' with Dump2XYZ, the user can re-center the origin of the system around a specific StuntDouble \\
277     & {\tt -{}-refsele} &  In order to rotate the system, {\tt -{}-originsele} and {\tt -{}-refsele} must be given to define the new coordinate set. A StuntDouble which contains a dipole (the direction of the dipole is always (0, 0, 1) in body frame) is specified by {\tt -{}-originsele}. The new x-z plane is defined by the direction of the dipole and the StuntDouble is specified by {\tt -{}-refsele}.
278 \end{longtable}
279
280
247   \subsection{\label{appendixSection:StaticProps}StaticProps}
248  
249   {\tt StaticProps} can compute properties which are averaged over
# Line 336 | Line 302 | distribution functions are most easily seen in the fig
302  
303   \begin{figure}
304   \centering
305 < \includegraphics[width=3in]{definition.pdf}
305 > \includegraphics[width=3in]{definition.eps}
306   \caption[Definitions of the angles between directional objects]{ \\
307   Any two directional objects (DirectionalAtoms and RigidBodies) have
308   a set of two angles ($\theta$, and $\omega$) between the z-axes of
# Line 353 | Line 319 | The options available for {\tt StaticProps} are as fol
319   \endfoot
320    -h& {\tt -{}-help}                    &  Print help and exit \\
321    -V& {\tt -{}-version}                 &  Print version and exit \\
322 <  -i& {\tt -{}-input=filename}          &  input dump file \\
323 <  -o& {\tt -{}-output=filename}         &  output file name \\
324 <  -n& {\tt -{}-step=INT}                &  process every n frame  (default=`1') \\
325 <  -r& {\tt -{}-nrbins=INT}              &  number of bins for distance  (default=`100') \\
326 <  -a& {\tt -{}-nanglebins=INT}          &  number of bins for cos(angle)  (default= `50') \\
327 <  -l& {\tt -{}-length=DOUBLE}           &  maximum length (Defaults to 1/2 smallest length of first frame) \\
328 <    & {\tt -{}-sele1=selection script}   & select the first StuntDouble set \\
329 <    & {\tt -{}-sele2=selection script}   & select the second StuntDouble set \\
330 <    & {\tt -{}-sele3=selection script}   & select the third StuntDouble set \\
331 <    & {\tt -{}-refsele=selection script} & select reference (can only be used with {\tt -{}-gxyz}) \\
332 <    & {\tt -{}-molname=STRING}           & molecule name \\
333 <    & {\tt -{}-begin=INT}                & begin internal index \\
334 <    & {\tt -{}-end=INT}                  & end internal index \\
322 >  -i& {\tt -{}-input}          &  input dump file \\
323 >  -o& {\tt -{}-output}         &  output file name \\
324 >  -n& {\tt -{}-step}                &  process every n frame  (default=`1') \\
325 >  -r& {\tt -{}-nrbins}              &  number of bins for distance  (default=`100') \\
326 >  -a& {\tt -{}-nanglebins}          &  number of bins for cos(angle)  (default= `50') \\
327 >  -l& {\tt -{}-length}           &  maximum length (Defaults to 1/2 smallest length of first frame) \\
328 >    & {\tt -{}-sele1}   & select the first StuntDouble set \\
329 >    & {\tt -{}-sele2}   & select the second StuntDouble set \\
330 >    & {\tt -{}-sele3}   & select the third StuntDouble set \\
331 >    & {\tt -{}-refsele} & select reference (can only be used with {\tt -{}-gxyz}) \\
332 >    & {\tt -{}-molname}           & molecule name \\
333 >    & {\tt -{}-begin}                & begin internal index \\
334 >    & {\tt -{}-end}                  & end internal index \\
335   \hline
336   \multicolumn{3}{|l|}{One option from the following group of options is required:} \\
337   \hline
# Line 414 | Line 380 | The options available for DynamicProps are as follows:
380   \endfoot
381    -h& {\tt -{}-help}                   & Print help and exit \\
382    -V& {\tt -{}-version}                & Print version and exit \\
383 <  -i& {\tt -{}-input=filename}         & input dump file \\
384 <  -o& {\tt -{}-output=filename}        & output file name \\
385 <    & {\tt -{}-sele1=selection script} & select first StuntDouble set \\
386 <    & {\tt -{}-sele2=selection script} & select second StuntDouble set (if sele2 is not set, use script from sele1) \\
383 >  -i& {\tt -{}-input}         & input dump file \\
384 >  -o& {\tt -{}-output}        & output file name \\
385 >    & {\tt -{}-sele1} & select first StuntDouble set \\
386 >    & {\tt -{}-sele2} & select second StuntDouble set (if sele2 is not set, use script from sele1) \\
387   \hline
388   \multicolumn{3}{|l|}{One option from the following group of options is required:} \\
389   \hline
# Line 426 | Line 392 | The options available for DynamicProps are as follows:
392    -d& {\tt -{}-dcorr}                  & compute dipole correlation function
393   \end{longtable}
394  
395 + \section{\label{appendixSection:tools}Other Useful Utilities}
396 +
397 + \subsection{\label{appendixSection:Dump2XYZ}Dump2XYZ}
398 +
399 + Dump2XYZ can transform an OOPSE dump file into a xyz file which can
400 + be opened by other molecular dynamics viewers such as Jmol and VMD.
401 + The options available for Dump2XYZ are as follows:
402 +
403 +
404 + \begin{longtable}[c]{|EFG|}
405 + \caption{Dump2XYZ Command-line Options}
406 + \\ \hline
407 + {\bf option} & {\bf verbose option} & {\bf behavior} \\ \hline
408 + \endhead
409 + \hline
410 + \endfoot
411 +  -h & {\tt -{}-help} &                        Print help and exit \\
412 +  -V & {\tt -{}-version} &                     Print version and exit \\
413 +  -i & {\tt -{}-input}  &             input dump file \\
414 +  -o & {\tt -{}-output} &             output file name \\
415 +  -n & {\tt -{}-frame}   &                 print every n frame  (default=`1') \\
416 +  -w & {\tt -{}-water}       &                 skip the the waters  (default=off) \\
417 +  -m & {\tt -{}-periodicBox} &                 map to the periodic box  (default=off)\\
418 +  -z & {\tt -{}-zconstraint}  &                replace the atom types of zconstraint molecules  (default=off) \\
419 +  -r & {\tt -{}-rigidbody}  &                  add a pseudo COM atom to rigidbody  (default=off) \\
420 +  -t & {\tt -{}-watertype} &                   replace the atom type of water model (default=on) \\
421 +  -b & {\tt -{}-basetype}  &                   using base atom type  (default=off) \\
422 +     & {\tt -{}-repeatX}  &                 The number of images to repeat in the x direction  (default=`0') \\
423 +     & {\tt -{}-repeatY} &                 The number of images to repeat in the y direction  (default=`0') \\
424 +     &  {\tt -{}-repeatZ}  &                The number of images to repeat in the z direction  (default=`0') \\
425 +  -s & {\tt -{}-selection} & By specifying {\tt -{}-selection}=``selection command'' with Dump2XYZ, the user can select an arbitrary set of StuntDoubles to be
426 + converted. \\
427 +     & {\tt -{}-originsele} & By specifying {\tt -{}-originsele}=``selection command'' with Dump2XYZ, the user can re-center the origin of the system around a specific StuntDouble \\
428 +     & {\tt -{}-refsele} &  In order to rotate the system, {\tt -{}-originsele} and {\tt -{}-refsele} must be given to define the new coordinate set. A StuntDouble which contains a dipole (the direction of the dipole is always (0, 0, 1) in body frame) is specified by {\tt -{}-originsele}. The new x-z plane is defined by the direction of the dipole and the StuntDouble is specified by {\tt -{}-refsele}.
429 + \end{longtable}
430 +
431   \subsection{\label{appendixSection:hydrodynamics}Hydrodynamics}
432 +
433 + \begin{longtable}[c]{|EFG|}
434 + \caption{Hydrodynamics Command-line Options}
435 + \\ \hline
436 + {\bf option} & {\bf verbose option} & {\bf behavior} \\ \hline
437 + \endhead
438 + \hline
439 + \endfoot
440 +  -h & {\tt -{}-help} &                        Print help and exit \\
441 +  -V & {\tt -{}-version} &                     Print version and exit \\
442 +  -i & {\tt -{}-input}  &             input dump file \\
443 +  -o & {\tt -{}-output} &             output file prefix  (default=`hydro') \\
444 +  -b & {\tt -{}-beads}  &                   generate the beads only, hydrodynamics calculation will not be performed (default=off)\\
445 +     & {\tt -{}-model}  &                 hydrodynamics model (support ``AnalyticalModel'', ``RoughShell'' and ``BeadModel'') \\
446 + \end{longtable}

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines