source: trunk/tests/gensgtbx.py @ 30

Last change on this file since 30 was 30, checked in by toby, 12 years ago

document GSASIIspc for independent use and develop unit tests

  • Property svn:executable set to *
File size: 5.5 KB
Line 
1#!/Users/toby/build/cctbx_build/bin/python
2'''
3Generate symmetry operations in cctbx.sgtbx for use in testing the
4GSASII space group generation code. I think one of the 230 spacegroups
5is missing from the list below; but there are two settings included for the
6rhombohedral groups.
7
8Redirect output to sgtbxdat.py to create the input file for testing.
9'''
10
11from cctbx import sgtbx
12
13def GenSGdat(spc):
14    print "'%s': [" % spc
15    s=sgtbx.space_group_info(spc)
16    for s1 in s.group():
17        print s1.as_double_array(),","
18    print "],\n"
19print "sgtbx = {"
20#cubic
21GenSGdat('p 2 3')
22GenSGdat('f 2 3')
23GenSGdat('i 2 3')
24GenSGdat('p 21 3')
25GenSGdat('i 21 3')
26GenSGdat('p m 3')
27GenSGdat('p n -3')
28GenSGdat('f m 3')
29GenSGdat('f d -3')
30GenSGdat('i m -3')
31GenSGdat('p a 3')
32GenSGdat('i a 3')
33GenSGdat('p 4 3 2')
34GenSGdat('p 42 3 2')
35GenSGdat('f 4 3 2')
36GenSGdat('f 41 3 2')
37GenSGdat('i 4 3 2')
38GenSGdat('p 43 3 2')
39GenSGdat('p 41 3 2')
40GenSGdat('i 41 3 2')
41GenSGdat('p -4 3 m')
42GenSGdat('f -4 3 m')
43GenSGdat('i -4 3 m')
44GenSGdat('p -4 3 n')
45GenSGdat('f -4 3 c')
46GenSGdat('i -4 3 d')
47GenSGdat('p m -3 m')
48GenSGdat('p n -3 n')
49GenSGdat('p m -3 n')
50GenSGdat('p n -3 m')
51GenSGdat('f m -3 m')
52GenSGdat('f m -3 c')
53GenSGdat('f d -3 m')
54GenSGdat('f d -3 c')
55GenSGdat('i m -3 m')
56GenSGdat('i a -3 d')
57# ortho
58GenSGdat('p 2 2 2')
59GenSGdat('p 2 2 21')
60GenSGdat('p 21 21 2')
61GenSGdat('p 21 21 21')
62GenSGdat('c 2 2 21')
63GenSGdat('c 2 2 2')
64GenSGdat('f 2 2 2')
65GenSGdat('i 2 2 2')
66GenSGdat('i 21 21 21')
67GenSGdat('p m m 2')
68GenSGdat('p m c 21')
69GenSGdat('p c c 2')
70GenSGdat('p m a 2')
71GenSGdat('p c a 21')
72GenSGdat('p n c 2')
73GenSGdat('p m n 21')
74GenSGdat('p b a 2')
75GenSGdat('p n a 21')
76GenSGdat('p n n 2')
77GenSGdat('c m m 2')
78GenSGdat('c m c 21')
79GenSGdat('c c c 2')
80GenSGdat('a m m 2')
81GenSGdat('a b m 2')
82GenSGdat('a m a 2')
83GenSGdat('a b a 2')
84GenSGdat('f m m 2')
85GenSGdat('f d d 2')
86GenSGdat('i m m 2')
87GenSGdat('i b a 2')
88GenSGdat('i m a 2')
89GenSGdat('p m m m')
90GenSGdat('p n n n')
91GenSGdat('p c c m')
92GenSGdat('p b a n')
93GenSGdat('p m m a')
94GenSGdat('p n n a')
95GenSGdat('p m n a')
96GenSGdat('p c c a')
97GenSGdat('p b a m')
98GenSGdat('p c c n')
99GenSGdat('p b c m')
100GenSGdat('p n n m')
101GenSGdat('p m m n')
102GenSGdat('p b c n')
103GenSGdat('p b c a')
104GenSGdat('p n m a')
105GenSGdat('c m c m')
106GenSGdat('c m c a')
107GenSGdat('c m m m')
108GenSGdat('c c c m')
109GenSGdat('c m m a')
110GenSGdat('c c c a')
111GenSGdat('f m m m')
112GenSGdat('f d d d')
113GenSGdat('i m m m')
114GenSGdat('i b a m')
115GenSGdat('i b c a')
116GenSGdat('i m m a')
117# tetragonal
118GenSGdat('p 4')
119GenSGdat('p 41')
120GenSGdat('p 42')
121GenSGdat('p 43')
122GenSGdat('i 4')
123#GenSGdat('i 41 1 1') # not accepted by cctbx
124GenSGdat('i 41')
125GenSGdat('p -4')
126GenSGdat('i -4')
127GenSGdat('p 4/m')
128GenSGdat('p 42/m')
129#GenSGdat('p 4/n 1 ') # does not work
130GenSGdat('p 4/n')
131GenSGdat('p 42/n')
132GenSGdat('i 4/m')
133GenSGdat('i 41/a')
134GenSGdat('p 4 2 2')
135GenSGdat('p 4 21 2')
136GenSGdat('p 41 2 2')
137GenSGdat('p 41 21 2')
138GenSGdat('p 42 2 2')
139GenSGdat('p 42 21 2')
140GenSGdat('p 43 2 2 ')
141GenSGdat('p 43 21 2')
142GenSGdat('i 4 2 2')
143GenSGdat('i 41 2 2')
144GenSGdat('p 4 m m')
145GenSGdat('p 4 b m')
146GenSGdat('p 2 c m')
147GenSGdat('p 42 n m')
148GenSGdat('p 4 c c')
149GenSGdat('p 4 n c')
150GenSGdat('p 42 m c')
151GenSGdat('p 42 b c')
152GenSGdat('i 4 m m')
153GenSGdat('i 4 c m')
154GenSGdat('i 41 m d')
155GenSGdat('i 41 c d')
156GenSGdat('p -4 2 m')
157GenSGdat('p -4 2 c')
158GenSGdat('p -4 21 m')
159GenSGdat('p -4 21 c')
160GenSGdat('p -4 m 2')
161GenSGdat('p -4 c 2')
162GenSGdat('p -4 b 2')
163GenSGdat('p -4 n 2')
164GenSGdat('i -4 m 2')
165GenSGdat('i -4 c 2')
166GenSGdat('i -4 2 m')
167GenSGdat('i -4 2 d')
168GenSGdat('p 4/m m m')
169GenSGdat('p 4/m c c')
170GenSGdat('p 4/n b m')
171GenSGdat('p 4/n n c')
172GenSGdat('p 4/m b m')
173GenSGdat('p 4/m n c')
174GenSGdat('p 4/n m m')
175GenSGdat('p 4/n c c')
176GenSGdat('p 42/m m c')
177GenSGdat('p 42/m c m')
178GenSGdat('p 42/n b c')
179GenSGdat('p 42/n n m')
180GenSGdat('p 42/m b c')
181GenSGdat('p 42/m n m')
182GenSGdat('p 42/n m c')
183GenSGdat('p 42/n c m')
184GenSGdat('i 4/m m m')
185GenSGdat('i 4/m c m ')
186GenSGdat('i 41/a m d')
187GenSGdat('i 41/a c d')
188# triclinic
189GenSGdat('p 1')
190GenSGdat('p -1')
191# monoclinic
192GenSGdat('p 2')
193GenSGdat('p 21')
194GenSGdat('c 2 1 1')
195GenSGdat('p m')
196GenSGdat('p c')
197GenSGdat('c m')
198GenSGdat('c c')
199GenSGdat('p 1 2/m 1')
200GenSGdat('p 21/m')
201GenSGdat('c 2/m')
202GenSGdat('p 2/c')
203GenSGdat('p 21/c')
204GenSGdat('c 1 2/c 1')
205# trigonal
206GenSGdat('p 31')
207#GenSGdat('p 32 1 1')  # not accepted by cctbx
208GenSGdat('p 32')
209GenSGdat('r 3')
210GenSGdat('r 3 r')
211GenSGdat('p -3')
212GenSGdat('r -3')
213GenSGdat('r -3 r')
214GenSGdat('p 3 1 2')
215GenSGdat('p 3 2 1')
216GenSGdat('p 31 1 2')
217GenSGdat('p 31 2 1')
218GenSGdat('p 32 1 2')
219GenSGdat('p 32 2 1')
220GenSGdat('r 3 2 h')
221GenSGdat('r 3 2 r')
222GenSGdat('p 3 m 1')
223GenSGdat('p 3 1 m')
224GenSGdat('p 3 c 1')
225GenSGdat('p 3 1 c')
226GenSGdat('r 3 m h')
227GenSGdat('r 3 m r')
228GenSGdat('r 3 c')
229GenSGdat('r 3 c r')
230GenSGdat('p -3 1 m')
231GenSGdat('p -3 1 c')
232GenSGdat('p -3 m 1')
233GenSGdat('p -3 c 1')
234GenSGdat('r -3 m')
235GenSGdat('r -3 m r')
236GenSGdat('r -3 c')
237GenSGdat('r -3 c r')
238# hexagonal
239GenSGdat('p 6')
240GenSGdat('p 61')
241#GenSGdat('p 65 1 1')  # not accepted by cctbx
242GenSGdat('p 65')
243GenSGdat('p 62')
244GenSGdat('p 64')
245GenSGdat('p 63')
246GenSGdat('p -6')
247#GenSGdat('p 6/m 1 1')  # not accepted by cctbx
248GenSGdat('p 6/m')
249GenSGdat('p 63/m')
250GenSGdat('p 6 2 2')
251GenSGdat('p 61 2 2')
252GenSGdat('p 65 2 2')
253GenSGdat('p 62 2 2')
254GenSGdat('p 64 2 2')
255GenSGdat('p 63 2 2')
256GenSGdat('p 6 m m')
257GenSGdat('p 6 c c')
258GenSGdat('p 63 c m')
259GenSGdat('p 63 m c')
260GenSGdat('p -6 m 2')
261GenSGdat('p -6 c 2')
262GenSGdat('p -6 2 m')
263GenSGdat('p -6 2 c')
264GenSGdat('p 6/m m m')
265GenSGdat('p 6/m c c')
266GenSGdat('p 63/m c m')
267GenSGdat('p 63/m m c')
268
269print "}"
Note: See TracBrowser for help on using the repository browser.