TABLE OF CONTENTS


ABINIT/symlist_prim [ Functions ]

[ Top ] [ Functions ]

NAME

 symlist_prim

FUNCTION

 Determine the space group from the number and type of symmetry operations

COPYRIGHT

 Copyright (C) 2000-2018 ABINIT group (RC)
 This file is distributed under the terms of the
 GNU General Public License, see ~abinit/COPYING
 or http://www.gnu.org/copyleft/gpl.txt .
 For the initials of contributors, see ~abinit/doc/developers/contributors.txt .

INPUTS

 additional_info=information that is needed beyond n_axes, in order
  to discriminate between specific space groups
 nsym=actual number of symmetries
 n_axes(31)=array containing the number of all the possible symmetry operations

OUTPUT

 spgroup=space group number ; returns 0 if not found

NOTES

 The list of symmetry operations is for the conventional cell

TODO

 For the time being there are several groups where uncertainties still exist
 This will be solved in the very next ABINIT version

PARENTS

      symspgr

CHILDREN

SOURCE

 40 #if defined HAVE_CONFIG_H
 41 #include "config.h"
 42 #endif
 43 
 44 #include "abi_common.h"
 45 
 46 
 47 subroutine symlist_prim(additional_info,nsym,n_axes,spgroup)
 48 
 49  use defs_basis
 50  use m_profiling_abi
 51 
 52 !This section has been created automatically by the script Abilint (TD).
 53 !Do not modify the following lines by hand.
 54 #undef ABI_FUNC
 55 #define ABI_FUNC 'symlist_prim'
 56 !End of the abilint section
 57 
 58  implicit none
 59 
 60 !Arguments ------------------------------------
 61 !scalars
 62  integer,intent(in) :: additional_info,nsym
 63  integer,intent(out) :: spgroup
 64 !arrays
 65  integer,intent(in) :: n_axes(31)
 66 
 67 !Local variables-------------------------------
 68 !character(len=500) :: message
 69 !arrays
 70  integer :: n_axest(31)
 71 
 72 !**************************************************************************
 73 
 74 !DEBUG
 75 !write(std_out,*) ' symlist_prim : enter '
 76 !write(std_out,*) ' nsym = ', nsym
 77 !write(std_out,'(a,10i3)' ) ' n_axes(1:10) =',n_axes(1:10)
 78 !write(std_out,'(a,10i3)' ) ' n_axes(11:20)=',n_axes(11:20)
 79 !write(std_out,'(a,11i3)' ) ' n_axes(21:31)=',n_axes(21:31)
 80 !ENDDEBUG
 81 
 82  spgroup=0
 83 
 84  select case(nsym)
 85 
 86  case(1)
 87 
 88    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
 89    if(sum((n_axes-n_axest)**2)==0) spgroup=1
 90 
 91  case(2)
 92 
 93    n_axest=(/0,0,0,0,1,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
 94    if(sum((n_axes-n_axest)**2)==0) spgroup=2
 95    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
 96    if(sum((n_axes-n_axest)**2)==0) spgroup=3
 97    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
 98    if(sum((n_axes-n_axest)**2)==0) spgroup=4
 99    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,1,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
100    if(sum((n_axes-n_axest)**2)==0) spgroup=6
101    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,1,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
102    if(sum((n_axes-n_axest)**2)==0) spgroup=7
103    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
104    if(sum((n_axes-n_axest)**2)==0) spgroup=7
105 
106  case(3)
107 
108    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
109    if(sum((n_axes-n_axest)**2)==0) spgroup=143
110    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  0,2,0,0,0,0,0,0,0,0,0/)
111    if(sum((n_axes-n_axest)**2)==0) spgroup=144
112    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  0,0,2,0,0,0,0,0,0,0,0/)
113    if(sum((n_axes-n_axest)**2)==0) spgroup=145
114 
115  case(4)
116 
117    n_axest=(/0,0,0,0,1,0,0,1,1,0,  0,0,0,0,1,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
118    if(sum((n_axes-n_axest)**2)==0) spgroup=10
119    n_axest=(/0,0,0,0,1,0,0,1,0,0,  0,0,0,0,1,0,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
120    if(sum((n_axes-n_axest)**2)==0) spgroup=11
121    n_axest=(/0,0,0,0,1,0,0,1,1,0,  0,0,0,0,0,1,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
122    if(sum((n_axes-n_axest)**2)==0) spgroup=13
123    n_axest=(/0,0,0,0,1,0,0,1,1,0,  0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
124    if(sum((n_axes-n_axest)**2)==0) spgroup=13
125    n_axest=(/0,0,0,0,1,0,0,1,0,0,  0,0,0,0,0,1,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
126    if(sum((n_axes-n_axest)**2)==0) spgroup=14
127    n_axest=(/0,0,0,0,1,0,0,1,0,0,  0,0,0,0,0,0,0,1,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
128    if(sum((n_axes-n_axest)**2)==0) spgroup=14
129 
130    n_axest=(/0,0,0,0,0,0,0,1,3,0,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
131    if(sum((n_axes-n_axest)**2)==0) spgroup=16
132    n_axest=(/0,0,0,0,0,0,0,1,2,0,  0,0,0,0,0,0,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
133    if(sum((n_axes-n_axest)**2)==0) spgroup=17
134    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,2,  0,0,0,0,0,0,0,0,0,0,0/)
135    if(sum((n_axes-n_axest)**2)==0) spgroup=18
136    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,3,  0,0,0,0,0,0,0,0,0,0,0/)
137    if(sum((n_axes-n_axest)**2)==0) spgroup=19
138    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,2,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
139 
140    if(sum((n_axes-n_axest)**2)==0) spgroup=25
141    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,1,1,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
142    if(sum((n_axes-n_axest)**2)==0) spgroup=26
143    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,2,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
144    if(sum((n_axes-n_axest)**2)==0) spgroup=29
145    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,2,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
146    if(sum((n_axes-n_axest)**2)==0) then
147      if(additional_info==1) spgroup=27
148      if(additional_info==2) spgroup=32
149    end if
150    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,1,1,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
151    if(sum((n_axes-n_axest)**2)==0) spgroup=28
152    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,1,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
153    if(sum((n_axes-n_axest)**2)==0) spgroup=30
154    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,1,0,0,1,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
155    if(sum((n_axes-n_axest)**2)==0) spgroup=31
156    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,1,0,1,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
157    if(sum((n_axes-n_axest)**2)==0) spgroup=33
158    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,2,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
159    if(sum((n_axes-n_axest)**2)==0) spgroup=34
160 
161    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,2,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
162    if(sum((n_axes-n_axest)**2)==0) spgroup=75
163    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,1,  0,0,0,2,0,0,0,0,0,0,0/)
164    if(sum((n_axes-n_axest)**2)==0) spgroup=76
165    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,2,0,0,0,0,0,0/)
166    if(sum((n_axes-n_axest)**2)==0) spgroup=77
167    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,1,  0,0,0,0,0,2,0,0,0,0,0/)
168    if(sum((n_axes-n_axest)**2)==0) spgroup=78
169 
170 
171    n_axest=(/0,2,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
172    if(sum((n_axes-n_axest)**2)==0) spgroup=81
173 
174  case(6)
175 
176    n_axest=(/0,0,2,0,1,0,0,1,0,2,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
177    if(sum((n_axes-n_axest)**2)==0) spgroup=147
178 
179    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,0,0,0,0,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
180    if(sum((n_axes-n_axest)**2)==0) spgroup=149
181    n_axest=(/0,0,0,3,0,0,0,1,0,2,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
182    if(sum((n_axes-n_axest)**2)==0) spgroup=150
183    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  3,2,0,0,0,0,0,0,0,0,0/)
184    if(sum((n_axes-n_axest)**2)==0) spgroup=151
185    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  3,0,2,0,0,0,0,0,0,0,0/)
186    if(sum((n_axes-n_axest)**2)==0) spgroup=153
187 
188    n_axest=(/0,0,0,3,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  0,2,0,0,0,0,0,0,0,0,0/)
189    if(sum((n_axes-n_axest)**2)==0) spgroup=152
190    n_axest=(/0,0,0,3,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,  0,0,2,0,0,0,0,0,0,0,0/)
191    if(sum((n_axes-n_axest)**2)==0) spgroup=154
192 
193    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,3,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
194    if(sum((n_axes-n_axest)**2)==0) spgroup=156
195    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,0,0,3,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
196    if(sum((n_axes-n_axest)**2)==0) spgroup=157
197    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,0,3,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
198    if(sum((n_axes-n_axest)**2)==0) spgroup=158
199    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,0,0,0,3,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
200    if(sum((n_axes-n_axest)**2)==0) spgroup=159
201 
202    n_axest=(/0,0,0,0,0,0,0,1,1,2,  0,0,0,2,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
203    if(sum((n_axes-n_axest)**2)==0) spgroup=168
204    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,1,  0,2,0,0,0,0,2,0,0,0,0/)
205    if(sum((n_axes-n_axest)**2)==0) spgroup=169
206    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,1,  0,0,2,0,0,0,0,0,0,0,2/)
207    if(sum((n_axes-n_axest)**2)==0) spgroup=170
208 
209    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,0,  0,0,2,0,0,0,0,2,0,0,0/)
210    if(sum((n_axes-n_axest)**2)==0) spgroup=171
211    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,0,  0,2,0,0,0,0,0,0,0,2,0/)
212    if(sum((n_axes-n_axest)**2)==0) spgroup=172
213 
214    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,0,0,0,0,0,1,  0,0,0,0,0,0,0,0,2,0,0/)
215    if(sum((n_axes-n_axest)**2)==0) spgroup=173
216    n_axest=(/2,0,0,0,0,0,0,1,0,2,  0,0,0,0,1,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
217    if(sum((n_axes-n_axest)**2)==0) spgroup=174
218 
219  case(8)
220 
221    n_axest=(/0,0,0,0,1,0,0,1,3,0,  0,0,0,0,3,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
222    if(sum((n_axes-n_axest)**2)==0) spgroup=47
223    n_axest=(/0,0,0,0,1,0,0,1,3,0,  0,0,0,0,0,0,0,3,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
224    if(sum((n_axes-n_axest)**2)==0) spgroup=48
225    n_axest=(/0,0,0,0,1,0,0,1,3,0,  0,0,0,0,1,2,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
226    if(sum((n_axes-n_axest)**2)==0) spgroup=49
227    n_axest=(/0,0,0,0,1,0,0,1,3,0,  0,0,0,0,0,2,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
228    if(sum((n_axes-n_axest)**2)==0) spgroup=50
229 
230    n_axest=(/0,0,0,0,1,0,0,1,2,0,  0,0,0,0,2,1,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
231    if(sum((n_axes-n_axest)**2)==0) spgroup=51
232    n_axest=(/0,0,0,0,1,0,0,1,2,0,  0,0,0,0,0,1,0,2,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
233    if(sum((n_axes-n_axest)**2)==0) spgroup=52
234    n_axest=(/0,0,0,0,1,0,0,1,2,0,  0,0,0,0,1,1,0,1,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
235    if(sum((n_axes-n_axest)**2)==0) spgroup=53
236    n_axest=(/0,0,0,0,1,0,0,1,2,0,  0,0,0,0,0,3,0,0,0,1,  0,0,0,0,0,0,0,0,0,0,0/)
237    if(sum((n_axes-n_axest)**2)==0) spgroup=54
238 
239    n_axest=(/0,0,0,0,1,0,0,1,1,0,  0,0,0,0,1,2,0,0,0,2,  0,0,0,0,0,0,0,0,0,0,0/)
240    if(sum((n_axes-n_axest)**2)==0)  then
241      if(additional_info==1) spgroup=55
242      if(additional_info==2) spgroup=57
243    end if
244    n_axest=(/0,0,0,0,1,0,0,1,1,0,  0,0,0,0,0,2,0,1,0,2,  0,0,0,0,0,0,0,0,0,0,0/)
245    if(sum((n_axes-n_axest)**2)==0)  then
246      if(additional_info==1) spgroup=56
247      if(additional_info==2) spgroup=60
248    end if
249    n_axest=(/0,0,0,0,1,0,0,1,1,0,  0,0,0,0,1,0,0,2,0,2,  0,0,0,0,0,0,0,0,0,0,0/)
250    if(sum((n_axes-n_axest)**2)==0) spgroup=58
251    n_axest=(/0,0,0,0,1,0,0,1,1,0,  0,0,0,0,2,0,0,1,0,2,  0,0,0,0,0,0,0,0,0,0,0/)
252    if(sum((n_axes-n_axest)**2)==0) spgroup=59
253 
254    n_axest=(/0,0,0,0,1,0,0,1,0,0,  0,0,0,0,0,3,0,0,0,3,  0,0,0,0,0,0,0,0,0,0,0/)
255    if(sum((n_axes-n_axest)**2)==0) spgroup=61
256    n_axest=(/0,0,0,0,1,0,0,1,0,0,  0,0,0,0,1,1,0,1,0,3,  0,0,0,0,0,0,0,0,0,0,0/)
257    if(sum((n_axes-n_axest)**2)==0) spgroup=62
258 
259    n_axest=(/0,0,0,0,0,0,0,1,3,0,  0,2,0,0,0,0,0,0,0,0,  2,0,0,0,0,0,0,0,0,0,0/)
260    if(sum((n_axes-n_axest)**2)==0) spgroup=89
261    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,2,0,0,0,0,0,0,0,2,  2,0,0,0,0,0,0,0,0,0,0/)
262    if(sum((n_axes-n_axest)**2)==0) spgroup=90
263 
264    n_axest=(/0,0,0,0,0,0,0,1,2,0,  0,0,0,0,0,0,0,0,0,1,  2,0,0,2,0,0,0,0,0,0,0/)
265    if(sum((n_axes-n_axest)**2)==0) spgroup=91
266    n_axest=(/0,0,0,0,0,0,0,1,2,0,  0,0,0,0,0,0,0,0,0,1,  2,0,0,0,0,2,0,0,0,0,0/)
267    if(sum((n_axes-n_axest)**2)==0) spgroup=95
268 
269    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,3,  2,0,0,2,0,0,0,0,0,0,0/)
270    if(sum((n_axes-n_axest)**2)==0) spgroup=92
271    n_axest=(/0,0,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,3,  2,0,0,0,0,2,0,0,0,0,0/)
272    if(sum((n_axes-n_axest)**2)==0) spgroup=96
273 
274    n_axest=(/0,0,0,0,0,0,0,1,3,0,  0,0,0,0,0,0,0,0,0,0,  2,0,0,0,2,0,0,0,0,0,0/)
275    if(sum((n_axes-n_axest)**2)==0) spgroup=93
276    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,2,  2,0,0,0,2,0,0,0,0,0,0/)
277    if(sum((n_axes-n_axest)**2)==0) spgroup=94
278 
279    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,2,0,0,4,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
280    if(sum((n_axes-n_axest)**2)==0) spgroup=99
281    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,2,0,0,2,2,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
282    if(sum((n_axes-n_axest)**2)==0) spgroup=100
283    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,2,0,2,0,0,0,  0,0,0,0,2,0,0,0,0,0,0/)
284    if(sum((n_axes-n_axest)**2)==0) spgroup=101
285    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,2,0,0,2,0,0,  0,0,0,0,2,0,0,0,0,0,0/)
286    if(sum((n_axes-n_axest)**2)==0) spgroup=102
287    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,2,0,0,0,0,2,0,2,0,  0,0,0,0,0,0,0,0,0,0,0/)
288    if(sum((n_axes-n_axest)**2)==0) spgroup=103
289    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,2,0,0,0,0,0,2,2,0,  0,0,0,0,0,0,0,0,0,0,0/)
290    if(sum((n_axes-n_axest)**2)==0) spgroup=104
291    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,2,0,0,0,2,0,  0,0,0,0,2,0,0,0,0,0,0/)
292    if(sum((n_axes-n_axest)**2)==0) spgroup=105
293    n_axest=(/0,0,0,0,0,0,0,1,1,0,  0,0,0,0,0,2,0,0,2,0,  0,0,0,0,2,0,0,0,0,0,0/)
294    if(sum((n_axes-n_axest)**2)==0) spgroup=106
295 
296    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,2,0,0,1,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
297    if(sum((n_axes-n_axest)**2)==0) spgroup=83
298    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,0,0,0,1,0,0,0,0,0,  0,0,0,0,2,0,0,0,0,0,0/)
299    if(sum((n_axes-n_axest)**2)==0) spgroup=84
300    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,2,0,0,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
301    if(sum((n_axes-n_axest)**2)==0) spgroup=85
302    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,0,0,0,0,0,0,1,0,0,  0,0,0,0,2,0,0,0,0,0,0/)
303    if(sum((n_axes-n_axest)**2)==0) spgroup=86
304 
305    n_axest=(/0,2,0,0,0,0,0,1,3,0,  0,0,0,0,2,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
306    if(sum((n_axes-n_axest)**2)==0) spgroup=111
307    n_axest=(/0,2,0,0,0,0,0,1,3,0,  0,0,0,0,0,0,0,0,2,0,  0,0,0,0,0,0,0,0,0,0,0/)
308    if(sum((n_axes-n_axest)**2)==0) spgroup=112
309    n_axest=(/0,2,0,0,0,0,0,1,1,0,  0,0,0,0,2,0,0,0,0,2,  0,0,0,0,0,0,0,0,0,0,0/)
310    if(sum((n_axes-n_axest)**2)==0) spgroup=113
311    n_axest=(/0,2,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,2,2,  0,0,0,0,0,0,0,0,0,0,0/)
312    if(sum((n_axes-n_axest)**2)==0) spgroup=114
313    n_axest=(/0,2,0,0,0,0,0,1,1,0,  0,0,0,0,2,0,0,0,0,0,  2,0,0,0,0,0,0,0,0,0,0/)
314    if(sum((n_axes-n_axest)**2)==0) spgroup=115
315    n_axest=(/0,2,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,2,0,0,0,  2,0,0,0,0,0,0,0,0,0,0/)
316    if(sum((n_axes-n_axest)**2)==0) spgroup=116
317    n_axest=(/0,2,0,0,0,0,0,1,1,0,  0,0,0,0,0,2,0,0,0,0,  2,0,0,0,0,0,0,0,0,0,0/)
318    if(sum((n_axes-n_axest)**2)==0) spgroup=117
319    n_axest=(/0,2,0,0,0,0,0,1,1,0,  0,0,0,0,0,0,0,2,0,0,  2,0,0,0,0,0,0,0,0,0,0/)
320    if(sum((n_axes-n_axest)**2)==0) spgroup=118
321 
322  case(12)
323 
324    n_axest=(/0,0,2,0,1,0,0,1,0,2,  0,0,0,0,0,0,3,0,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
325    if(sum((n_axes-n_axest)**2)==0) spgroup=162
326    n_axest=(/0,0,2,0,1,0,0,1,0,2,  0,0,0,0,0,0,0,3,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
327    if(sum((n_axes-n_axest)**2)==0) spgroup=163
328    n_axest=(/0,0,2,3,1,0,0,1,0,2,  0,0,0,0,3,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
329    if(sum((n_axes-n_axest)**2)==0) spgroup=164
330    n_axest=(/0,0,2,3,1,0,0,1,0,2,  0,0,0,0,0,3,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
331    if(sum((n_axes-n_axest)**2)==0) spgroup=165
332 
333    n_axest=(/2,0,2,0,1,0,0,1,1,2,  0,0,0,2,1,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
334    if(sum((n_axes-n_axest)**2)==0) spgroup=175
335    n_axest=(/2,0,2,0,1,0,0,1,0,2,  0,0,0,0,1,0,0,0,0,1,  0,0,0,0,0,0,0,0,2,0,0/)
336    if(sum((n_axes-n_axest)**2)==0) spgroup=176
337 
338    n_axest=(/0,0,0,3,0,0,0,1,1,2,  0,0,0,2,0,0,0,0,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
339    if(sum((n_axes-n_axest)**2)==0) spgroup=177
340 
341    n_axest=(/0,0,0,3,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,1,  3,2,0,0,0,0,2,0,0,0,0/)
342    if(sum((n_axes-n_axest)**2)==0) spgroup=178
343    n_axest=(/0,0,0,3,0,0,0,1,0,0,  0,0,0,0,0,0,0,0,0,1,  3,0,2,0,0,0,0,0,0,0,2/)
344    if(sum((n_axes-n_axest)**2)==0) spgroup=179
345 
346    n_axest=(/0,0,0,3,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,0,  3,0,2,0,0,0,0,2,0,0,0/)
347    if(sum((n_axes-n_axest)**2)==0) spgroup=180
348    n_axest=(/0,0,0,3,0,0,0,1,1,0,  0,0,0,0,0,0,0,0,0,0,  3,2,0,0,0,0,0,0,0,2,0/)
349    if(sum((n_axes-n_axest)**2)==0) spgroup=181
350 
351    n_axest=(/0,0,0,3,0,0,0,1,0,2,  0,0,0,0,0,0,0,0,0,1,  3,0,0,0,0,0,0,0,2,0,0/)
352    if(sum((n_axes-n_axest)**2)==0) spgroup=182
353 
354    n_axest=(/0,0,0,0,0,0,0,1,1,2,  0,0,0,2,3,0,3,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
355    if(sum((n_axes-n_axest)**2)==0) spgroup=183
356    n_axest=(/0,0,0,0,0,0,0,1,1,2,  0,0,0,2,0,3,0,3,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
357    if(sum((n_axes-n_axest)**2)==0) spgroup=184
358    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,0,3,3,0,0,1,  0,0,0,0,0,0,0,0,2,0,0/)
359    if(sum((n_axes-n_axest)**2)==0) spgroup=185
360    n_axest=(/0,0,0,0,0,0,0,1,0,2,  0,0,0,0,3,0,0,3,0,1,  0,0,0,0,0,0,0,0,2,0,0/)
361    if(sum((n_axes-n_axest)**2)==0) spgroup=186
362 
363    n_axest=(/2,0,0,0,0,0,0,1,0,2,  0,0,0,0,4,0,0,0,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
364    if(sum((n_axes-n_axest)**2)==0) spgroup=187
365    n_axest=(/2,0,0,0,0,0,0,1,0,2,  0,0,0,0,1,3,0,0,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
366    if(sum((n_axes-n_axest)**2)==0) spgroup=188
367    n_axest=(/2,0,0,3,0,0,0,1,0,2,  0,0,0,0,1,0,3,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
368    if(sum((n_axes-n_axest)**2)==0) spgroup=189
369    n_axest=(/2,0,0,3,0,0,0,1,0,2,  0,0,0,0,1,0,0,3,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
370    if(sum((n_axes-n_axest)**2)==0) spgroup=190
371 
372    n_axest=(/0,0,0,0,0,0,0,1,3,8,  0,0,0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
373    if(sum((n_axes-n_axest)**2)==0) spgroup=195
374    n_axest=(/0,0,0,0,0,0,0,1,0,8,  0,0,0,0,0,0,0,0,0,3,  0,0,0,0,0,0,0,0,0,0,0/)
375    if(sum((n_axes-n_axest)**2)==0) spgroup=198
376 
377  case(16)
378 
379    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,2,0,0,5,0,0,0,0,0,  2,0,0,0,0,0,0,0,0,0,0/)
380    if(sum((n_axes-n_axest)**2)==0) spgroup=123
381    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,2,0,0,1,0,2,0,2,0,  2,0,0,0,0,0,0,0,0,0,0/)
382    if(sum((n_axes-n_axest)**2)==0) spgroup=124
383    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,2,0,0,2,2,0,1,0,0,  2,0,0,0,0,0,0,0,0,0,0/)
384    if(sum((n_axes-n_axest)**2)==0) spgroup=125
385    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,2,0,0,0,0,0,3,2,0,  2,0,0,0,0,0,0,0,0,0,0/)
386    if(sum((n_axes-n_axest)**2)==0) spgroup=126
387 
388    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,2,0,0,3,2,0,0,0,2,  2,0,0,0,0,0,0,0,0,0,0/)
389    if(sum((n_axes-n_axest)**2)==0) spgroup=127
390    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,2,0,0,1,0,0,2,2,2,  2,0,0,0,0,0,0,0,0,0,0/)
391    if(sum((n_axes-n_axest)**2)==0) spgroup=128
392    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,2,0,0,4,0,0,1,0,2,  2,0,0,0,0,0,0,0,0,0,0/)
393    if(sum((n_axes-n_axest)**2)==0) spgroup=129
394    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,2,0,0,0,0,2,1,2,2,  2,0,0,0,0,0,0,0,0,0,0/)
395    if(sum((n_axes-n_axest)**2)==0) spgroup=130
396 
397    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,0,0,0,3,0,0,0,2,0,  2,0,0,0,2,0,0,0,0,0,0/)
398    if(sum((n_axes-n_axest)**2)==0) spgroup=131
399    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,0,0,0,3,0,2,0,0,0,  2,0,0,0,2,0,0,0,0,0,0/)
400    if(sum((n_axes-n_axest)**2)==0) spgroup=132
401    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,0,0,0,0,2,0,1,2,0,  2,0,0,0,2,0,0,0,0,0,0/)
402    if(sum((n_axes-n_axest)**2)==0) spgroup=133
403    n_axest=(/0,2,0,0,1,0,0,1,3,0,  0,0,0,0,2,0,0,3,0,0,  2,0,0,0,2,0,0,0,0,0,0/)
404    if(sum((n_axes-n_axest)**2)==0) spgroup=134
405 
406    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,0,0,0,1,2,0,0,2,2,  2,0,0,0,2,0,0,0,0,0,0/)
407    if(sum((n_axes-n_axest)**2)==0) spgroup=135
408    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,0,0,0,3,0,0,2,0,2,  2,0,0,0,2,0,0,0,0,0,0/)
409    if(sum((n_axes-n_axest)**2)==0) spgroup=136
410    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,0,0,0,2,0,0,1,2,2,  2,0,0,0,2,0,0,0,0,0,0/)
411    if(sum((n_axes-n_axest)**2)==0) spgroup=137
412    n_axest=(/0,2,0,0,1,0,0,1,1,0,  0,0,0,0,2,0,2,1,0,2,  2,0,0,0,2,0,0,0,0,0,0/)
413    if(sum((n_axes-n_axest)**2)==0) spgroup=138
414 
415  case(24)
416 
417    n_axest=(/2,0,2,3,1,0,0,1,1,2,  0,0,0,2,4,0,3,0,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
418    if(sum((n_axes-n_axest)**2)==0) spgroup=191
419    n_axest=(/2,0,2,3,1,0,0,1,1,2,  0,0,0,2,1,3,0,3,0,0,  3,0,0,0,0,0,0,0,0,0,0/)
420    if(sum((n_axes-n_axest)**2)==0) spgroup=192
421    n_axest=(/2,0,2,3,1,0,0,1,0,2,  0,0,0,0,1,3,3,0,0,1,  3,0,0,0,0,0,0,0,2,0,0/)
422    if(sum((n_axes-n_axest)**2)==0) spgroup=193
423    n_axest=(/2,0,2,3,1,0,0,1,0,2,  0,0,0,0,4,0,0,3,0,1,  3,0,0,0,0,0,0,0,2,0,0/)
424    if(sum((n_axes-n_axest)**2)==0) spgroup=194
425 
426 
427    n_axest=(/0,0,8,0,1,0,0,1,3,8,  0,0,0,0,3,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
428    if(sum((n_axes-n_axest)**2)==0) spgroup=200
429    n_axest=(/0,0,8,0,1,0,0,1,3,8,  0,0,0,0,0,0,0,3,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
430    if(sum((n_axes-n_axest)**2)==0) spgroup=201
431    n_axest=(/0,0,8,0,1,0,0,1,0,8,  0,0,0,0,0,0,0,3,0,3,  0,0,0,0,0,0,0,0,0,0,0/)
432    if(sum((n_axes-n_axest)**2)==0) spgroup=205
433    n_axest=(/0,0,0,0,0,0,0,1,3,8,  0,6,0,0,0,0,0,0,0,0,  6,0,0,0,0,0,0,0,0,0,0/)
434    if(sum((n_axes-n_axest)**2)==0) spgroup=207
435    n_axest=(/0,0,0,0,0,0,0,1,3,8,  0,0,0,0,0,0,0,0,0,0,  6,0,0,0,6,0,0,0,0,0,0/)
436    if(sum((n_axes-n_axest)**2)==0) spgroup=208
437    n_axest=(/0,0,0,0,0,0,0,1,0,8,  0,0,0,0,0,0,0,0,0,3,  6,0,0,0,0,6,0,0,0,0,0/)
438    if(sum((n_axes-n_axest)**2)==0) spgroup=212
439    n_axest=(/0,0,0,0,0,0,0,1,0,8,  0,0,0,0,0,0,0,0,0,3,  6,0,0,6,0,0,0,0,0,0,0/)
440    if(sum((n_axes-n_axest)**2)==0) spgroup=213
441 
442    n_axest=(/0,6,0,0,0,0,0,1,3,8,  0,0,0,0,6,0,0,0,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
443    if(sum((n_axes-n_axest)**2)==0) spgroup=215
444    n_axest=(/0,6,0,0,0,0,0,1,3,8,  0,0,0,0,0,0,0,6,0,0,  0,0,0,0,0,0,0,0,0,0,0/)
445    if(sum((n_axes-n_axest)**2)==0) spgroup=218
446 
447  case(48)
448 
449    n_axest=(/0,6,8,0,1,0,0,1,3,8,  0,6,0,0,9,0,0,0,0,0,  6,0,0,0,0,0,0,0,0,0,0/)
450    if(sum((n_axes-n_axest)**2)==0) spgroup=221
451    n_axest=(/0,6,8,0,1,0,0,1,3,8,  0,6,0,0,0,0,0,9,0,0,  6,0,0,0,0,0,0,0,0,0,0/)
452    if(sum((n_axes-n_axest)**2)==0) spgroup=222
453    n_axest=(/0,6,8,0,1,0,0,1,3,8,  0,0,0,0,3,0,0,6,0,0,  6,0,0,0,6,0,0,0,0,0,0/)
454    if(sum((n_axes-n_axest)**2)==0) spgroup=223
455    n_axest=(/0,6,8,0,1,0,0,1,3,8,  0,0,0,0,6,0,0,3,0,0,  6,0,0,0,6,0,0,0,0,0,0/)
456    if(sum((n_axes-n_axest)**2)==0) spgroup=224
457 
458  end select
459 
460 end subroutine symlist_prim