summaryrefslogtreecommitdiff
path: root/cad/doc/old_doc/mmpformat.html
blob: 68f0fdf7d15ca2188f6f24a702c70d97381551ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
<h1>mmp file format</h1>
<p>
An mmp file consists of a sequence of parts. Each is typically a
connected molecule. The simulator will check for van der Waals
interactions between atoms of different parts, but not within a given
part. If such interactions are expected, the "waals" record can be
used.
</p>
<p>
Each part is a "part" record followed by atom and bond records. The
bonds must be back-references, i.e. if atom 1 and atom 2 are bonded,
atom 1 will have no bond record, and atom 2 will have a record
pointing back to atom 1.
</p>
<p>
The intent in calling the bond records "bond1" was that there are
intended to be bond2, bond3, and bond4 for double, triple, and
aromatic bonds.
</p>
<h2>record types</h2>
 Note parentheses and commas are required. Braces are metacomments.
<ul>
<li><font size="+1"><strong>part </strong> <em> xxx comment</em></font>
 <ul> <li>
      xxx is "vdw", "bns", or "nil" (see show)
   </li></ul>
</li>
<li>
    <font size="+1"><strong>atom </strong> <em> n (e) (x, y, z)</em></font>
 <ul> <li>
  n is atom number -- intended to rise sequentially from 1
</li><li>
  e is element number, e.g. carbon = 6
</li><li>
  x, y, z, the position in 1e-13m
    </li></ul>
</li>
<li><font size="+1"><strong>bond1 </strong> <em> atom# atom# ... {up
 to 25}</em></font>
<ul><li>
  bonds the last-defined atom to the indicated ones
</li></ul>
</li>
<li><font size="+1"><strong>waals </strong> <em> atom&#035; atom&#035; ... {up to 25}</em></font>
<ul><li>
  indicates vanderwaals interaction to be simulated between
   indicated and last-defined atoms
   (NB vdW interactions are automatically simulated between atoms 
    of different parts)
</li></ul>
</li>
<li><font size="+1"><strong>show </strong> <em> xxx</em></font>
<ul><li>
       xxx is "vdw" (van der Waals), "bns" (ball and stick), or "nil"
       (don't show). Applies to all atoms until the next show or part record.
    </li></ul>
</li>
<li><font size="+1"><strong>ground </strong> <em> atom&#035; atom&#035; ... {up to 25}</em></font>
<ul><li>
  given atoms are "welded to space"
</li></ul>
</li>
<li><font size="+1"><strong>motor </strong> <em> torque, speed, (cx,
 cy, cz) (ax, ay, az) </em></font>
<ul><li>
  torque in nN*nm (float)
</li><li>
  speed in gHz (float)
</li><li>
  cx, cy, cz is center of rotation (same format as atom posns)
</li><li>
  ax, xy, az is axis of rotation (ditto)
</li></ul>
</li>
<li><font size="+1"><strong>shaft </strong> <em> atom# atom# ... </em></font>
<p>(up to 25) (must follow motor immediately)</p>
<ul><li>
  atoms to which the motor is connected
</li></ul>
</li>
<li><font size="+1"><strong>kelvin </strong> <em> n</em></font>
<ul><li>
  n is temperature in kelvins (int)
</li></ul>
</li>
<li><font size="+1"><strong>end </strong></font>
<ul><li>
  logical end of file
</li></ul>
</li></ul>
<h2>unimplemented:</h2>
<ul>
<li><font size="+1"><strong>link </strong> <em> (x1, y1, z1) (x2, y2, z2)</em></font>
<ul><li>
shaft ...
</li><li>
shaft ... or ground
</li></ul>
</li>
<li><font size="+1"><strong>bearing </strong> <em> (cx, cy, cz) (ax, ay, az) </em></font>
<ul><li>
shaft ...
</li><li>
shaft ... or ground
</li></ul>
</li>
<li><font size="+1"><strong>ball </strong> <em> (cx, cy, cz)</em></font>
<ul><li>
shaft ...
</li><li>
shaft ... or ground
</li></ul>
</li>
<li><font size="+1"><strong>linear </strong> <em> (ax, ay, az)</em></font>
<ul><li>
shaft ...
</li><li>
shaft ... or ground
</li></ul>
</li>
<li><font size="+1"><strong>planar </strong> <em> (nx, ny, nz) </em></font>
<ul><li>
shaft ...
</li><li>
shaft ... or ground
</li></ul>
</li>
<li><font size="+1"><strong>hooke  </strong> <em>(cx, cy, cz) (a1x, a1y, a1z) (a2x, a2y, a2z) </em></font>
<ul><li>
shaft ...
</li><li>
shaft ... or ground
</li></ul>
</li>
<li><font size="+1"><strong>prism  </strong> <em>(ax, ay, az)</em></font>
<ul><li>
shaft ...
</li><li>
shaft ... or ground
</li></ul>
</li></ul>