OSDN Git Service

Version 0.6
[molby/Molby.git] / Documents / src / molby_rb / AtomRef.html
1 <?xml version="1.0" encoding="utf-8"?>
2 <!DOCTYPE html 
3      PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7 <head>
8   <title>Class: AtomRef</title>
9   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10   <meta http-equiv="Content-Script-Type" content="text/javascript" />
11   <link rel="stylesheet" href="rdoc-style.css" type="text/css" media="screen" />
12 </head>
13 <body>
14
15 <div id="navi">
16 <a href="../index.html">[Molby Document Home]</a>
17 <a href="../ruby_ref.html">[Contents]</a>
18 </div>
19
20 <div id="classHeader">
21 <table class="header-table">
22 <tr>
23 <td><strong>Class:</strong></td>
24 <td class="class-name-in-header">AtomRef</td>
25 </tr>
26 <tr>
27 <td><strong>Parent:</strong></td>
28 <td><a href="Object.html">Object</a></td>
29 </tr>
30 </table>
31 </div>
32
33 <div id="section">
34 <h3 class="section-bar">Description</h3>
35 <h4>Overview</h4>
36 <p>
37 The class <a href="AtomRef.html">AtomRef</a> points to an atom at a particular index in a <a href="Molecule.html">Molecule</a>. <a href="AtomRef.html">AtomRef</a> does not implement <span class="method-name">initialize</span> nor <span class="method-name">new</span> methods; i.e. an AtomRef object cannot be created explicitly by calling a constructor method. Instead, an AtomRef object is implicitly created as a return value from such methods like <a href="Molecule.html#M000184">Molecule#add_atom</a>, <a href="Molecule.html#M000249">Molecule#create_atom</a>, <a href="Molecule.html#M000250">Molecule#duplicate_atom</a> and <a href="MolEnumerable.html#M000002">MolEnumerable#[]</a>, or given as a block argument in some iterator methods such as <a href="Molecule.html#M000234">Molecule#each_atom</a> and <a href="MolEnumerable.html#M000004">MolEnumerable#each</a>.
38 </p>
39 <h4>Atom Attributes</h4>
40 <p>
41 An atom has many attributes, such as name, position, atom type, and so on. All atom attributes have the corresponding accessor (setter/getter) methods. Some attributes are read only, in which case the setter functions cause exception.
42 </p>
43 <h4>AtomRef and Editing Molecule</h4>
44 <p>
45 An <a href="AtomRef.html">AtomRef</a> object contains the parent <a href="Molecule.html">Molecule</a> and the index (non-negative integer). The index is <b>not</b> automatically updated when the parent <a href="Molecule.html">Molecule</a> is edited; in such case, the <a href="AtomRef.html">AtomRef</a> object may point to a different atom, or even cause out-of-range exception.
46 </p>
47 <pre>
48 % <span class="molby-input">m = Molecule.from_formula("CH4")</span>
49 <span class="molby-output">-->#&lt;Molecule:0x16400bf8&gt;</span>
50 % <span class="molby-input">m.dump</span>
51    0 RES.1   C1   ""   C    0.000   0.000   0.000  0.000 [1,2,3,4]
52    1 RES.1   H1   ""   H   -0.355   0.000  -1.020  0.000 [0]
53    2 RES.1   H2   ""   H   -0.355  -0.883   0.510  0.000 [0]
54    3 RES.1   H3   ""   H   -0.355   0.883   0.510  0.000 [0]
55    4 RES.1   H4   ""   H    1.080   0.000   0.000  0.000 [0]
56 <span class="molby-output">--></span>
57 % <span class="molby-input">a = m.atoms[3]</span>  #  Points to "H3"
58 <span class="molby-output">-->#&lt;AtomRef:0x164449e8&gt;</span>
59 % <span class="molby-input">a.name</span>
60 <span class="molby-output">-->"H3"</span>
61 % <span class="molby-input">m.remove([0])</span>   #  Remove atom 0: now "a" points to "H4"
62 <span class="molby-output">--></span>
63 % <span class="molby-input">a.name</span>
64 <span class="molby-output">-->"H4"</span>
65 % <span class="molby-input">m.remove([0])</span>   #  Remove atom 0 again: "a" becomes out of range
66 <span class="molby-output">--></span>
67 % <span class="molby-input">a.name</span>
68 ("atom index out of range" exception)
69 </pre>
70 </div>
71
72 <div id="methods">
73 <h3 class="section-bar">Public Instance methods</h3>
74
75 <div id="method-aniso" class="method-detail">
76 <a name="aniso"></a>
77 <div class="method-heading">
78 <span class="method-name">
79 aniso       &rarr; [f11, f22, f33, f12, f13, f23]<br />
80 self.aniso = [f11, f22, f33, f12, f13, f23]<br />
81 self.aniso = [f11, f22, f33, f12, f13, f23, type]
82 </span>
83 </div>
84 <div class="method-description">
85 <p>
86 Get/set the anisotropic thermal factors. If no anisotropic thermal factors are defined for this atom, the getter returns nil. The setter can accept nil as the right-hand value, which clears anisotropic thermal factors for this atom.
87 </p>
88 <p>
89 The anisotropic thermal parameters are defined as in ORTEP type 0, with the following formula:
90 </p>
91 <p>
92 &nbsp;&nbsp;&nbsp;exp(-(f11*h<sup>2</sup> + f22*k<sup>2</sup> + f33*l<sup>2</sup> + 2*f12*h*k + 2*f13*h*l + 2*f23*k*l))
93 </p>
94 <p>
95 If the extra "type" value is given as in the third form, other types of thermal parameters can be specified. The type value corresponds to that of the ORTEP specification.
96 </p>
97 <p>
98 For type = 0, 1, 2, 3, and 10:<br />
99 &nbsp;&nbsp;&nbsp;pow(B, -D*(f11*h<sup>2</sup> + f22*k<sup>2</sup> + f33*l<sup>2</sup> + C*f12*h*k + C*f13*h*l + C*f23*k*l))
100 </p>
101 <ul>
102 <li>type = 0: B = e, C = 2, D = 1 (default)</li>
103 <li>type = 1: B = e, C = 1, D = 1</li>
104 <li>type = 2: B = 2, C = 2, D = 1</li>
105 <li>type = 3: B = 2, C = 1, D = 1</li>
106 <li>type = 10: B = e, C = 2, D = 2*pi<sup>2</sup></li>
107 </ul>
108 <p>
109 For type = 4, 5, 8, and 9:<br />
110 &nbsp;&nbsp;&nbsp;exp[-D*(<span class="bold">a</span><sub>1</sub><sup>2</sup>*f11*h<sup>2</sup> + <span class="bold">a</span><sub>2</sub><sup>2</sup>*f22*k<sup>2</sup> + <span class="bold">a</span><sub>3</sub><sup>2</sup>*f33*l<sup>2</sup> + C*<span class="bold">a</span><sub>1</sub>*<span class="bold">a</span><sub>2</sub>*f12*h*k + C*<span class="bold">a</span><sub>2</sub>*<span class="bold">a</span><sub>3</sub>*f23*k*l + C*<span class="bold">a</span><sub>1</sub>*<span class="bold">a</span><sub>3</sub>*f13*h*l)]
111 </p>
112 <ul>
113 <li>type = 4: C = 2, D = 1/4</li>
114 <li>type = 5: C = 1, D = 1/4</li>
115 <li>type = 8: C = 2, D = 2*pi<sup>2</sup></li>
116 <li>type = 9: C = 1, D = 2*pi<sup>2</sup></li>
117 </ul>
118
119 <p>
120 The thermal parameters are described in crystallographic coordinates, so that they are only meaningful when a crystallographic unit cell is defined (see also: <a href="Molecule.html#M000235">Molecule#cell</a>, <a href="Molecule.html#M000236">Molecule#cell=</a>). Nevertheless, setting anisotropic parameters without defining a unit cell does not cause exception, in which case a trivial unit cell ([1, 0, 0], [0, 1, 0], [0, 0, 1]) is implicitly assumed.
121 </p>
122 </div>
123 </div>
124
125 <div id="method-atom_type" class="method-detail">
126 <a name="atom_type"></a>
127 <div class="method-heading">
128 <span class="method-name">
129 atom_type       &rarr; String<br />
130 self.atom_type = String
131 </span>
132 </div>
133 <div class="method-description">
134 <p>
135 Get/set the atom type for molecular mechanics calculations. The atom type is a string consisting of up to 4 printable ASCII characters (case sensitive), with an optional "variant" part consisting of a period followed by one case-insensitive alphanumeric character. Thus, the following strings are all valid atom types: "ca", "C*", "Zn" ("zn" or "ZN" are different atom types), "CAHN.1".
136 </p>
137 <p>
138 The atom type with a variant part behaves similarly as the same atom type without the variant, except when a parameter is explicitly defined for the variant-containing atom type. For example, suppose there is an atom with type "cp.1" bound to an atom with type "ca"; when a bond parameter "ca-cp.1" is defined, this parameter is used for this bond; otherwise, a bond parameter "ca-cp" is looked for, and if one is found it is used for this bond.
139 </p>
140 <p>
141 The atom type "X" and "x" are reserved as wildcards. When parameters are looked for, these atom types match any atom types. Note that these are only wildcard atom types defined in Molby; atom types such as "C*" or "C?" are just individual atom types, with no "matching" behavior.
142 </p>
143 </div>
144 </div>
145
146 <div id="method-atom_type" class="method-detail">
147 <a name="atomic_number"></a>
148 <div class="method-heading">
149 <span class="method-name">
150 atomic_number       &rarr; Integer<br />
151 self.atomic_number = Integer
152 </span>
153 </div>
154 <div class="method-description">
155 <p>
156 Get/set the atomic number. Setting an atomic number also causes change of the <a href="AtomRef.html#element">element</a> and <a href="AtomRef.html#weight">weight</a> attributes.
157 </p>
158 <p>
159 <i>See Also:</i> <a href="AtomRef.html#element">AtomRef#element</a>, <a href="AtomRef.html#weight">AtomRef#weight</a>.
160 </p>
161 </div>
162 </div>
163
164 <div id="method-atom_type" class="method-detail">
165 <a name="charge"></a>
166 <div class="method-heading">
167 <span class="method-name">
168 charge       &rarr; Float<br />
169 self.charge = Float
170 </span>
171 </div>
172 <div class="method-description">
173 <p>
174 Get/set the partial charge. The partial charge is a value used in molecular mechanics calculations for evaluation of electrostatic interactions, and is different from an integer charge as defined in PDB format. For the latter attribute, use <a href="AtomRef.html#int_charge">AtomRef#int_charge</a> and <a href="AtomRef.html#int_charge">AtomRef#int_charge=</a> methods.
175 </p>
176 </div>
177 </div>
178
179 <div id="method-atom_type" class="method-detail">
180 <a name="connects"></a>
181 <div class="method-heading">
182 <span class="method-name">
183 connects       &rarr; Array of Integers<br />
184 </span>
185 </div>
186 <div class="method-description">
187 <p>
188 Get the connection table. A connection table is a list of atoms that are connected to this atom, represented by an array of atom indices (0-based). This is a read-only attribute; if new bonds are to be created or removed, <a href="Molecule.html#M000251">Molecule#create_bond</a> or <a href="Molecule.html#remove_bond">Molecule#remove_bond</a> should be used.
189 </p>
190 </div>
191 </div>
192
193 <div id="method-atom_type" class="method-detail">
194 <a name="element"></a>
195 <div class="method-heading">
196 <span class="method-name">
197 element       &rarr; String<br />
198 self.element = String<br />
199 </span>
200 </div>
201 <div class="method-description">
202 <p>
203 Get/set the chemical element. The chemical element is represented by a two-character string, the first uppercase character and the second (optional) lowercase character, although the right-hand argument for the setter is case-insensitive. It follows that the three-character element symbols for newly discovered elements cannot be used; they are hardly useful for molecular modeling anyway.
204 </p>
205 <p>
206 Setting the chemical element also causes change of the <a href="AtomRef.html#atomic_number">atomic_number</a> and <a href="AtomRef.html#weight">weight</a> attributes.
207 </p>
208 <p>
209 <i>See Also:</i> <a href="AtomRef.html#atomic_number">AtomRef#atomic_number</a>, <a href="AtomRef.html#weight">AtomRef#weight</a>.
210 </p>
211 </div>
212 </div>
213
214 <div id="method-atom_type" class="method-detail">
215 <a name="exclusion"></a>
216 <div class="method-heading">
217 <span class="method-name">
218 exclusion       &rarr; [[i1, i2, ...], [j1, j2, ...], [k1, k2, ...]]<br />
219 </span>
220 </div>
221 <div class="method-description">
222 <p>
223 Get the exclusion table, which is used to "exclude" the pair of atoms from the calculation of the non-bonding interaction. [i1, i2, ...] are the atoms which are directly connected to this atom (1-2 exclusion). [j1, j2, ...] are the atoms (other than self) that are connected to [i1, i2, ...] and not in the 1-2 exclusion list (1-3 exclusion). [k1, k2, ...] are the atoms (other than self) that are connected to [j1, j2, ...] and not in the 1-2 nor 1-3 exclusion list.
224 </p>
225 <p>
226 This is a read-only attribute.
227 </p>
228 <p>
229 This method requires that the <a href="MDArena.html">MDArena</a> object for the parent molecule is already established and <a href="MDArena.html#M000046">prepare</a>'d.
230 </p>
231 </div>
232 </div>
233
234 <div id="method-atom_type" class="method-detail">
235 <a name="f"></a>
236 <div class="method-heading">
237 <span class="method-name">
238 f       &rarr; <a href="Vector3D.html">Vector3D</a><br />
239 self.f = <a href="Vector3D.html">Vector3D</a><br />
240 </span>
241 </div>
242 <div class="method-description">
243 <p>
244 Get the force value from the last MM/MD calculation. The value is in internal force unit, amu Å fs<sup>-2</sup> (amu is the atomic mass unit, fs is femtosecond). The setter method is also implemented, however it is seldom useful.
245 </p>
246 </div>
247 </div>
248
249 <div id="method-atom_type" class="method-detail">
250 <a name="fix_force"></a>
251 <div class="method-heading">
252 <span class="method-name">
253 fix_force       &rarr; Float<br />
254 self.fix_force = Float<br />
255 </span>
256 </div>
257 <div class="method-description">
258 <p>
259 Get/set the force constant to fix the atom at the particular position during MM/MD calculations. The value is in kcal/mol. If the force constant is positive, an auxiliary harmonic potential is applied for this atom. If the force constant is negative, the forces are calculated as usual but the velocity of the atom is set to zero in every step. The latter is physically problematic, so use of negative force is not recommended.
260 </p>
261 <p>
262 <i>See Also:</i> <a href="AtomRef.html#fix_pos">AtomRef#fix_pos</a>
263 </p>
264 </div>
265 </div>
266
267 <div id="method-atom_type" class="method-detail">
268 <a name="fix_pos"></a>
269 <div class="method-heading">
270 <span class="method-name">
271 fix_pos       &rarr; <a href="Vector3D.html">Vector3D</a><br />
272 self.fix_pos = <a href="Vector3D>html">Vector3D</a><br />
273 </span>
274 </div>
275 <div class="method-description">
276 <p>
277 Get/set the position to fix the atom during MM/MD calculations. The <a href="AtomRef.html#fix_force">fix_force</a> should also be set.
278 </p>
279 <p>
280 <i>See Also:</i> <a href="AtomRef.html#fix_force">AtomRef#fix_force</a>
281 </p>
282 </div>
283 </div>
284
285 <div id="method-atom_type" class="method-detail">
286 <a name="fract_r"></a>
287 <div class="method-heading">
288 <span class="method-name">
289 fract_r       &rarr; <a href="Vector3D.html">Vector3D</a><br />
290 self.fract_r = <a href="Vector3D.html">Vector3D</a><br />
291 </span>
292 </div>
293 <div class="method-description">
294 <p>
295 Get/set the fractional coordinates as a <a href="Vector3D.html">Vector3D</a>. If the crystallographic unit cell is not defined, these methods are equivalent to <a href="AtomRef.html#r">AtomRef#r</a> and <a href="AtomRef.html#r">AtomRef#r=</a>, respectively.
296 </p>
297 </div>
298 </div>
299
300 <div id="method-atom_type" class="method-detail">
301 <a name="fract_x"></a>
302 <div class="method-heading">
303 <span class="method-name">
304 fract_x       &rarr; Float<br />
305 self.fract_x = Float<br />
306 </span>
307 </div>
308 <div class="method-description">
309 <p>
310 Get/set the fractional coordinate x. If the crystallographic unit cell is not defined, these methods are equivalent to <a href="AtomRef.html#x">AtomRef#x</a> and <a href="AtomRef.html#x">AtomRef#x=</a>, respectively.
311 </p>
312 </div>
313 </div>
314
315 <div id="method-atom_type" class="method-detail">
316 <a name="fract_y"></a>
317 <div class="method-heading">
318 <span class="method-name">
319 fract_y       &rarr; Float<br />
320 self.fract_y = Float<br />
321 </span>
322 </div>
323 <div class="method-description">
324 <p>
325 Get/set the fractional coordinate y. If the crystallographic unit cell is not defined, these methods are equivalent to <a href="AtomRef.html#y">AtomRef#y</a> and <a href="AtomRef.html#y">AtomRef#y=</a>, respectively.
326 </p>
327 </div>
328 </div>
329
330 <div id="method-atom_type" class="method-detail">
331 <a name="fract_z"></a>
332 <div class="method-heading">
333 <span class="method-name">
334 fract_z       &rarr; Float<br />
335 self.fract_z = Float<br />
336 </span>
337 </div>
338 <div class="method-description">
339 <p>
340 Get/set the fractional coordinate z. If the crystallographic unit cell is not defined, these methods are equivalent to <a href="AtomRef.html#z">AtomRef#z</a> and <a href="AtomRef.html#z">AtomRef#z=</a>, respectively.
341 </p>
342 </div>
343 </div>
344
345 <div id="method-atom_type" class="method-detail">
346 <a name="index"></a>
347 <div class="method-heading">
348 <span class="method-name">
349 index       &rarr; Integer<br />
350 </span>
351 </div>
352 <div class="method-description">
353 <p>
354 Get the atom index as an integer. This is a read-only attribute; if you want to change the order of the atoms, you should use <a href="Molecule.html#M000260">Molecule#renumber_atoms</a>.
355 </p>
356 </div>
357 </div>
358
359 <div id="method-atom_type" class="method-detail">
360 <a name="int_charge"></a>
361 <div class="method-heading">
362 <span class="method-name">
363 int_charge       &rarr; Integer<br />
364 self.int_charge = Integer<br />
365 </span>
366 </div>
367 <div class="method-description">
368 <p>
369 Get/set the integer charge. This is the integer charge of the atom as defined in PDB format, and different from the partial (fractional) charge used in MM/MD calculations. For the latter attribute, use <a href="AtomRef.html#charge">AtomRef#charge</a> and <a href="AtomRef.html#charge">AtomRef#charge=</a> methods.
370 </p>
371 </div>
372 </div>
373
374 <div id="method-atom_type" class="method-detail">
375 <a name="mm_exclude"></a>
376 <div class="method-heading">
377 <span class="method-name">
378 mm_exclude       &rarr; Integer<br />
379 self.mm_exclude = Integer<br />
380 </span>
381 </div>
382 <div class="method-description">
383 <p>
384 Get/set the flag whether to exclude this atom from MM/MD calculation. The atom is to be excluded if the flag is non-zero.
385 </p>
386 </div>
387 </div>
388
389 <div id="method-atom_type" class="method-detail">
390 <a name="name"></a>
391 <div class="method-heading">
392 <span class="method-name">
393 name       &rarr; String<br />
394 self.name = String<br />
395 </span>
396 </div>
397 <div class="method-description">
398 <p>
399 Get/set the atom name. An atom name consists of up to 4 printable ASCII characters.
400 </p>
401 </div>
402 </div>
403
404 <div id="method-atom_type" class="method-detail">
405 <a name="occupancy"></a>
406 <div class="method-heading">
407 <span class="method-name">
408 occupancy       &rarr; Float<br />
409 self.occupancy = Float<br />
410 </span>
411 </div>
412 <div class="method-description">
413 <p>
414 Get/set the occupancy.
415 </p>
416 </div>
417 </div>
418
419 <div id="method-atom_type" class="method-detail">
420 <a name="r"></a>
421 <div class="method-heading">
422 <span class="method-name">
423 r       &rarr; <a href="Vector3D.html">Vector3D</a><br />
424 self.r = <a href="Vector3D.html">Vector3D</a><br />
425 </span>
426 </div>
427 <div class="method-description">
428 <p>
429 Get/set the atom position as a <a href="Vector3D.html">Vector3D</a>. The atom positions are always in cartesian coordinates, even when the crystallographic unit cell is defined. To handle crystallographic fractional coordinates, use <a href="AtomRef.html#fract_r">AtomRef#fract_r</a> and <a href="AtomRef.html#fract_r">AtomRef#fract_r=</a>.
430 </p>
431 </div>
432 </div>
433
434 <div id="method-atom_type" class="method-detail">
435 <a name="res_name"></a>
436 <div class="method-heading">
437 <span class="method-name">
438 res_name       &rarr; String<br />
439 </span>
440 </div>
441 <div class="method-description">
442 <p>
443 Get the residue name. A residue name consists of up to 4 printable ASCII characters. This is a read-only attribute; if a residue name is to be changed, use <a href="Molecule.html#M000258">Molecule#assign_residue</a>.
444 </p>
445 </div>
446 </div>
447
448 <div id="method-atom_type" class="method-detail">
449 <a name="res_seq"></a>
450 <div class="method-heading">
451 <span class="method-name">
452 res_seq       &rarr; Integer<br />
453 </span>
454 </div>
455 <div class="method-description">
456 <p>
457 Get the residue number. Residue numbers are 1-based, and the number 0 means "no residue assigned". This is a read-only attribute; if a residue number is to be changed, use <a href="Molecule.html#M000258">Molecule#assign_residue</a>.
458 </p>
459 </div>
460 </div>
461
462 <div id="method-atom_type" class="method-detail">
463 <a name="seg_name"></a>
464 <div class="method-heading">
465 <span class="method-name">
466 seg_name       &rarr; String<br />
467 self.seg_name = String<br />
468 </span>
469 </div>
470 <div class="method-description">
471 <p>
472 Get/set the segment name. A segment name consists of up to 4 printable ASCII characters.
473 </p>
474 </div>
475 </div>
476
477 <div id="method-atom_type" class="method-detail">
478 <a name="seg_seq"></a>
479 <div class="method-heading">
480 <span class="method-name">
481 seg_seq       &rarr; Integer<br />
482 self.seg_seq = Integer<br />
483 </span>
484 </div>
485 <div class="method-description">
486 <p>
487 Get/set the segment number.
488 </p>
489 </div>
490 </div>
491
492 <div id="method-atom_type" class="method-detail">
493 <a name="symop"></a>
494 <div class="method-heading">
495 <span class="method-name">
496 symop       &rarr; nil or [sym, dx, dy, dz, base]<br />
497 </span>
498 </div>
499 <div class="method-description">
500 <p>
501 Get the symmetry operation. If this atom is not symmetry expanded, then nil is returned. Otherwise, an array of symmetry operation index, cell translation (x, y, z), and the original atom index. This is a read-only attribute; to make symmetry-expanded atoms use <a href="Molecule.html#M000292">Molecule#expand_by_symmetry</a>.
502 </p>
503 </div>
504 </div>
505
506 <div id="method-atom_type" class="method-detail">
507 <a name="temp_factor"></a>
508 <div class="method-heading">
509 <span class="method-name">
510 temp_factor       &rarr; Float<br />
511 self.temp_factor = Float<br />
512 </span>
513 </div>
514 <div class="method-description">
515 <p>
516 Get/set the (isotropic) temperature factor. For anisotropic temperature factors, see <a href="AtomRef.html#aniso">AtomRef#aniso</a>.
517 </p>
518 </div>
519 </div>
520
521 <div id="method-atom_type" class="method-detail">
522 <a name="v"></a>
523 <div class="method-heading">
524 <span class="method-name">
525 v       &rarr; <a href="Vector3D.html">Vector3D</a><br />
526 self.v = <a href="Vector3D.html">Vector3D</a><br />
527 </span>
528 </div>
529 <div class="method-description">
530 <p>
531 Get/set the velocity value from the last MM/MD calculation. The value is in Å fs<sup>-1</sup> (fs is femtosecond).
532 </p>
533 </div>
534 </div>
535
536 <div id="method-atom_type" class="method-detail">
537 <a name="weight"></a>
538 <div class="method-heading">
539 <span class="method-name">
540 weight       &rarr; Float<br />
541 self.weight = Float<br />
542 </span>
543 </div>
544 <div class="method-description">
545 <p>
546 Get/set the atomic weight. This attribute is automatically updated when <a href="AtomRef.html#atomic_number">atomic_number</a> or <a href="AtomRef.html#element">element</a> is modified, whereas changing the weight attribute does <b>not</b> cause automatic update of either <a href="AtomRef.html#atomic_number">atomic_number</a> or <a href="AtomRef.html#element">element</a> attribute.
547 </p>
548 </div>
549 </div>
550
551 <div id="method-atom_type" class="method-detail">
552 <a name="x"></a>
553 <div class="method-heading">
554 <span class="method-name">
555 x       &rarr; Float<br />
556 self.x = Float<br />
557 </span>
558 </div>
559 <div class="method-description">
560 <p>
561 Get/set the cartesian coordinate x. To handle crystallographic fractional coordinates, use <a href="AtomRef.html#fract_x">AtomRef#fract_x</a> and <a href="AtomRef.html#fract_x">AtomRef#fract_x=</a>.
562 </p>
563 </div>
564 </div>
565
566 <div id="method-atom_type" class="method-detail">
567 <a name="y"></a>
568 <div class="method-heading">
569 <span class="method-name">
570 y       &rarr; Float<br />
571 self.y = Float<br />
572 </span>
573 </div>
574 <div class="method-description">
575 <p>
576 Get/set the cartesian coordinate y. To handle crystallographic fractional coordinates, use <a href="AtomRef.html#fract_y">AtomRef#fract_y</a> and <a href="AtomRef.html#fract_y">AtomRef#fract_y=</a>.
577 </p>
578 </div>
579 </div>
580
581 <div id="method-atom_type" class="method-detail">
582 <a name="z"></a>
583 <div class="method-heading">
584 <span class="method-name">
585 z       &rarr; Float<br />
586 self.z = Float<br />
587 </span>
588 </div>
589 <div class="method-description">
590 <p>
591 Get/set the cartesian coordinate z. To handle crystallographic fractional coordinates, use <a href="AtomRef.html#fract_z">AtomRef#fract_z</a> and <a href="AtomRef.html#fract_z">AtomRef#fract_z=</a>.
592 </p>
593 </div>
594 </div>
595
596 </div>
597
598 </body>
599 </html>