ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-2.0/doc/SelectionExpression.html
(Generate patch)

Comparing trunk/OOPSE-2.0/doc/SelectionExpression.html (file contents):
Revision 2061 by tim, Fri Feb 25 16:38:26 2005 UTC vs.
Revision 2063 by tim, Mon Feb 28 17:24:51 2005 UTC

# Line 1 | Line 1
1   <html>
2 +
3   <head>
4 +
5   <title>Select Commands in OOPSE</title>
6 +
7   </head>
8  
9 +
10 +
11   <body bgcolor=white>
12 +
13   <basefont size=3>
14  
15 +
16 +
17   <div align=center>
18 < <font size="+2"><b>Select Commands in </b></font><b><font size="+2">OOPSE</font></b><br>
18 >
19 >  <p><font size="+2"><b>Select Commands in </b></font><b><font size="+2">OOPSE</font></b></p>
20 >  <h2 align="left"><a name="introduction" id="introduction"> Introduction </a></h2>
21 >  <p align="left">&nbsp;</p>
22 >  <p align="center"><img src="classoopse_1_1StuntDouble.png" width="292" height="136"></p>
23 >  <p align="left"><b><a name="stuntdouble" id="stuntdouble"></a> Stuntdouble </b> stands in for some object that can be manipulated by the Integrators or Minimizers. </p>
24 >  <p align="left"><b><a name="atom" id="atom"></a> Atom </b>is a fundamental unit in OOPSE</p>
25 >  <p align="left"><b><a name="datom" id="datom"></a> DirectionalAtom </b>is a special atom</p>
26 >  <p align="left"><b><a name="rigidbody" id="rigidbody"></a> Rigid-body </b>is a collection of atoms or directional atoms. </p>
27 >  <p align="left"> Every molecule, atom and directional atom in OOPSE have their own name which are given by .md file. In contrast, the name of rigid-body, which is [MoleculeName]_RB_[index] (the content inside the brackets will be replaced), is generated automatically. For example, the name of the first rigi-body of DMPC molecule is DMPC_RB_0. <br>
28 >  </p>
29   </div>
30 +
31   <a name="syntax" id="syntax">
32 +
33   <h2>
34 +
35   Syntax of the select command
36 +
37   </h2>
38 +
39   </a>
40  
41 +
42 +
43   The most general form of the select command is: <b>select <i>expression</i>
44 +
45   </b>
46 +
47   <p>The expression represents an arbitrary set of stuntdoubles (atoms or rigid-bodies) in OOPSE. Expressions are composed of either name expressions, index expression, predefined sets, user define expression, comparison operators, within expressions, or logical combinations of the above expression types.  Expression can be combined with parentheses and the Boolean operators</p>
48 +
49   <p><b><a name="logic"></a> Logical expression. </b> </p>
50 +
51   <p>The logical operators allow complex queries to be constructed out of simpler ones using the standard boolean connectives <b>and, or, not</b>. Parentheses can be used to alter the precedence of the operators.
52 +
53   <ul>
54 +
55    <table width="441" border=1 cellpadding=5 bgcolor="#FFFFFF">
56 +
57      <tr bgcolor="#FFCCFF">
58 +
59        <td width="174"><div align="left">logical operator </div></td>
60 +
61        <td width="241"><div align="left">equivalent operator</div></td>
62 +
63      </tr>
64 +
65      <tr bgcolor="#FFCCFF">
66 +
67        <td><div align="left">and</div></td>
68 +
69        <td><div align="left">&quot;&amp;&quot;, &quot;&amp;&amp;&quot; </div></td>
70 +
71      </tr>
72 +
73      <tr bgcolor="#FFCCFF">
74 +
75        <td><div align="left">or</div></td>
76 <      <td><div align="left">&quot;|&quot;,&quot;||&quot;, &quot;,&quot; </div></td>
76 >
77 >      <td><div align="left">&quot;|&quot;, &quot;||&quot;, &quot;,&quot; </div></td>
78 >
79      </tr>
80 +
81      <tr bgcolor="#FFCCFF">
82 +
83        <td><div align="left">not</div></td>
84 +
85        <td><div align="left">&quot;!&quot;</div></td>
86 +
87      </tr>
88 +
89    </table>
90 +
91    <p>&nbsp;</p>
92 +
93   </ul>
94 +
95   <p><a name="name"><b> Name expression.
96 +
97   </b></a> </p>
98 +
99   <ul>
100 +
101   <table width="886" border="1" bordercolor="#6B7683" bgcolor="#FFFFCC">
102 +
103    <tr>
104 +
105      <td colspan="2"><div align="center">expression</div></td>
106 +
107      <td width="434"><div align="center">description</div></td>
108 +
109    </tr>
110 +
111    <tr>
112 +
113      <td width="183" rowspan="3">expression without &quot;.&quot; </td>
114 +
115      <td width="247"><div align="left">select DMPC</div></td>
116 +
117      <td>select all stuntdoubles belong to DMPC molecule </td>
118 +
119    </tr>
120 +
121    <tr>
122 +
123      <td><div align="left">select C*</div></td>
124 +
125      <td>select all carbon atoms </td>
126 +
127    </tr>
128 +
129    <tr>
130 +
131      <td><div align="left">select DMPC_RB_*</div></td>
132 +
133      <td>select all rigid-bodies (only select rigid-bodies, not include the atoms belong to them)</td>
134 +
135    </tr>
136 +
137    <tr>
138 +
139      <td rowspan="3">expression has one &quot;.&quot; </td>
140 +
141      <td>select TIP3P.O_TIP3P</td>
142 +
143      <td>select stuntdoubles belong to molecule </td>
144 +
145    </tr>
146 +
147    <tr>
148 +
149      <td>select DMPC_RB_0.PO4</td>
150 +
151      <td>select atoms belong to rigid-bodies</td>
152 +
153    </tr>
154 +
155    <tr>
156 +
157      <td>select DMPC.20</td>
158 +
159      <td>select stuntdoubles by their internal indices inside the molecules </td>
160 +
161    </tr>
162 +
163    <tr>
164 +
165      <td>expression has two &quot;.&quot;</td>
166 +
167      <td>select DMPC.DMPC_RB_?.*</td>
168 +
169      <td>select all atoms belong to rigid-bodies within DMPC molecule</td>
170 +
171    </tr>
172 +
173   </table>
174 +
175   <p>&nbsp;</p>
176 +
177   </ul>
178 +
179   <p><a name="index" id="index"><b> Index expression </b></a></p>
180 +
181   <p>Index expression is used to select stuntdobules by their global indices. </p>
182 +
183   <ul>
184 +
185   <table width="894" border=1 cellpadding=5 bgcolor="#FFFFFF"><tr bgcolor="#FFFFCC">
186 +
187    <td width="113">select 20 </td>
188 +
189      <td width="520">select stuntdoubles which global index is 20 </td>
190 +
191   </tr>
192 +
193    <tr bgcolor="#FFFFCC">
194 +
195      <td>select 20 to 30      </td>
196 +
197      <td>select stuntdoubles which global indices are between 20 (inclusive) and 30 (exclusive) </td>
198 +
199    </tr>
200 +
201   </table>
202 +
203   </ul>
204  
205 +
206 +
207   <p>&nbsp; </p>
208 +
209   <p><a name="predefine" id="predefine"><b> Predefine set </b></a></p>
210 +
211   <ul>
212 +
213    <table width="449" border=1 cellpadding=5 bgcolor="#FFFFFF">
214 +
215      <tr bgcolor="#FFCCFF">
216 +
217        <td width="91"><div align="left">keyword</div></td>
218 +
219        <td width="332"><div align="left">description</div></td>
220 +
221      </tr>
222 +
223      <tr bgcolor="#FFCCFF">
224 +
225        <td><div align="left">all</div></td>
226 +
227        <td><div align="left">select all stuntdoubles</div></td>
228 +
229      </tr>
230 +
231      <tr bgcolor="#FFCCFF">
232 +
233        <td><div align="left">none</div></td>
234 +
235        <td><div align="left">select none of the stuntdoubles </div></td>
236 +
237      </tr>
238 +
239      <tr bgcolor="#FFCCFF">
240 +
241        <td><div align="left">rigidbody</div></td>
242 +
243        <td><div align="left">select all rigid-bodies</div></td>
244 +
245      </tr>
246 +
247    </table>
248 +
249   </ul>
250 +
251   <p>&nbsp;</p>
252 +
253   <p><a name="user" id="user"><b> User define expression.</b></a></p>
254 +
255   <p> User can define arbitrary terms to represent groups of stuntdoubles, and then use the terms you have defined in select commands. The general form for the define command is: <strong>define <em>term expression</em></strong></p>
256 +
257   <p> Once defined, user can use such terms in boolean expressions </p>
258 +
259   <ul>
260 +
261    <table width="659" border=1 cellpadding=5 bgcolor="#FFFFFF">
262 +
263      <tr bgcolor="#FFFFCC">
264 +
265        <td><p>define SSDWATER SSD or SSD1 or SSDRF</p>
266 +
267        <p>select SSDWATER  </p>      <div align="left"></div></td>
268 +
269      </tr>
270 +
271    </table>
272 +
273   </ul>
274 +
275   <p><a name="comparison" id="comparison"> <b>Comparison expression.</b></a></p>
276 +
277   <p>Stuntdoubles can be distinguished using comparision operators on their properties. The general form for the comparison command is: a property name, followed by a comparision operator and then a number.</p>
278 +
279   <ul>
280 +
281    <table width="668" border=1 cellpadding=5 bgcolor="#FFFFFF">
282 +
283      <tr bgcolor="#FFCCFF">
284 +
285        <td width="305"><div align="left">property</div></td>
286 +
287        <td width="331"><div align="left">mass, dipole, charge </div></td>
288 +
289      </tr>
290 +
291      <tr bgcolor="#FFCCFF">
292 +
293        <td><div align="left">comparision operator</div></td>
294 +
295        <td><div align="left">&quot;&gt;&quot;, &quot;&lt;&quot;, &quot;=&quot;, &quot;&gt;=&quot;, &quot;&lt;=&quot;, &quot;!=&quot; </div></td>
296 +
297      </tr>
298 +
299    </table>
300 +
301   </ul>
302 +
303   <ul>
304 +
305    <table width="672" border=1 cellpadding=5 bgcolor="#FFFFFF">
306 +
307      <tr bgcolor="#FFFFCC">
308 +
309        <td width="302">select mass &gt; 16.0 and charge &lt; -2 </td>
310 +
311        <td width="338">select stuntdoubles which mass is great than 16.0 and charge is less than -2 </td>
312 +
313      </tr>
314 +
315    </table>
316 +
317   </ul>
318 +
319   <p>&nbsp;</p>
320 +
321   <p><b> <a name="within"></a>    Within expression.</b>
322 +
323   <p> Within selection selects all stuntdoubles within the specified distance (in ?) from a selection, including the selection itself. The general form for within selection is: <b>select within(<i>distance, expression</i>) </b>
324 +
325   <ul>
326 <  <table width="890" border=1 cellpadding=5 bgcolor="#FFFFFF">
326 >
327 >  <table width="681" border=1 cellpadding=5 bgcolor="#FFFFFF">
328 >
329      <tr bgcolor="#FFFFCC">
330 <      <td width="431">select within(2.5, PO4 or NC4) </td>
331 <      <td width="427"><blockquote>select stunntdoules which are within 2.5 ? from either PO4 or NC4 </blockquote></td>
330 >
331 >      <td width="306">select within(2.5, PO4 or NC4) </td>
332 >
333 >      <td width="343"><blockquote>select stunntdoules which are within 2.5 ? from either PO4 or NC4 </blockquote></td>
334 >
335      </tr>
336    </table>
337 +
338   </ul>
339 +
340   <p>
341 < <p><p>    
341 >
342 > <h2><a name="syntax" id="syntax"> Tools using selection command </a></h2>
343 > <p><b><a name="within"></a> Dump2XYZ</b>
344 > <p>Dump2XYZ can transform an OOPSE dump file into a xyz file which could be opened by other molecular viewers, such as Jmol and VMD.
345 > <ul>
346 >  <table width="890" border=1 cellpadding=5 bgcolor="#FFFFFF">
347 >    <tr bgcolor="#6699FF">
348 >      <td width="191"><blockquote>
349 >          <p>--selection</p>
350 >      </blockquote></td>
351 >      <td width="667">Specifying --selection=&quot;selection command&quot; with Dump2XYZ, user can select an arbitrary set of stuntdoubles to be converted. </td>
352 >    </tr>
353 >    <tr bgcolor="#CCFF99">
354 >      <td><blockquote>
355 >          <p>--originsele</p>
356 >      </blockquote></td>
357 >      <td rowspan="2">In order to rotate the system, --originsele and --refselec must be given to define the new coordinate set. A stuntdouble with a dipole, which direction is always (0, 0, 1) in body frame, is specified by --originsele. The new x-z plane is defined by the direction of dipole and the stuntdouble specified by --refsele. </td>
358 >    </tr>
359 >    <tr bgcolor="#CCFF99">
360 >      <td><blockquote>
361 >          <p>--refsele</p>
362 >      </blockquote></td>
363 >    </tr>
364 >  </table>
365 > </ul>
366 > <p>
367 > <p><b><a name="within"></a> StaticProps</b>
368 > <p>
369 > <p align="center"><img src="definition.jpg" width="720" height="540">
370 > <p align="left">There are five seperate radial distribution functions availiable in OOPSE. Since every radial distrbution function invlove the calculation between a pair, --sele1 and --sele2 must be given.
371 > <ul>
372 >  <table width="890" border=1 cellpadding=5 bgcolor="#FFFFFF">
373 >    <tr bgcolor="#CCFFCC">
374 >      <td width="191"><blockquote>
375 >        <p>option</p>
376 >      </blockquote></td>
377 >      <td width="667"><blockquote>
378 >          <div align="center">description</div>
379 >      </blockquote></td>
380 >    </tr>
381 >    <tr bgcolor="#CCFFCC">
382 >      <td><blockquote>
383 >        <p>--gofr</p>
384 >      </blockquote></td>
385 >      <td>normal pair distribution function.</td>
386 >    </tr>
387 >    <tr bgcolor="#CCFFCC">
388 >      <td><blockquote>
389 >        <p>--r_theta</p>
390 >      </blockquote></td>
391 >      <td>Calculate angle dependent pair distribution function. The angle is defined by r and A's dipole moment. </td>
392 >    </tr>
393 >    <tr bgcolor="#CCFFCC">
394 >      <td><blockquote>
395 >        <p>--r_omega</p>
396 >      </blockquote></td>
397 >      <td>Calculate angle dependent pair distribution function. The angle is defined by A's dipole moment and B's dipole moment . </td>
398 >    </tr>
399 >    <tr bgcolor="#CCFFCC">
400 >      <td><blockquote>
401 >        <p>--theta_omega</p>
402 >      </blockquote></td>
403 >      <td>Calculate the two dimension distribution of two angles.</td>
404 >    </tr>
405 >    <tr bgcolor="#CCFFCC">
406 >      <td><blockquote>
407 >        <p>--gxyz</p>
408 >      </blockquote></td>
409 >      <td>Calculate the three dimension distribution of the particle B in the body frame of particle A. Therefore, --originsele and --refsele must be given to define the A's internal coordinate set. </td>
410 >    </tr>
411 >  </table>
412 > </ul>
413 > <p>&nbsp; </p>
414 > <p><b><a name="within"></a> DynamicProps </b>
415 > <ul>
416 >  <table width="890" border=1 cellpadding=5 bgcolor="#FFFFFF">
417 >    <tr bgcolor="#CCFFCC">
418 >      <td width="191">        <p align="center">option</p></td>
419 >      <td width="667"><blockquote>
420 >          <div align="center">description</div>
421 >      </blockquote></td>
422 >    </tr>
423 >    <tr bgcolor="#CCFFCC">
424 >      <td>        <p align="center">--rcorr</p></td>
425 >      <td>mean square displacement </td>
426 >    </tr>
427 >    <tr bgcolor="#CCFFCC">
428 >      <td>        <p align="center">--vcorr</p></td>
429 >      <td>velocity correlation function</td>
430 >    </tr>
431 >    <tr bgcolor="#CCFFCC">
432 >      <td>        <p align="center">--dcorr</p></td>
433 >      <td>dipole correlation function </td>
434 >    </tr>
435 >  </table>
436 > </ul>
437 > <p>
438   </body>
439 +
440   </html>
441 +

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines