'Identify the space group isomorphism between the the group created by AffineCrystGroup and the one given by crystcat package
I use the following code snippet to create the diamond space group in GAP with the help of cryst package:
gap> M1:=[[0, 0, 1, 0],[1, 0, 0, 0],[0, -1, 0, 0],[1/4, 1/4, 1/4, 1]];;
gap> M2:=[[0,0,-1,0],[0,-1,0,0],[1,0,0,0],[0,0,0,1]];;
gap> S:=AffineCrystGroup([M1,M2]);
<matrix group with 2 generators>
The above code snippet comes from page 21 of the book Computer Algebra and Materials Physics
, as shown below:
As for the diamond case, in the GAP computation, the crystallographic group is
defined as follows. (The minimal generating set is used for simplicity.)
gap> M1:=[[0,0,1,0],[1,0,0,0],[0,-1,0,0],[1/4,1/4,1/4,1]];;
gap> M2:=[[0,0,-1,0],[0,-1,0,0],[1,0,0,0],[0,0,0,1]];;
gap> S:=AffineCrystGroup([M1,M2]);
<matrix group with 2 generators>
gap> P:=PointGroup(S);
Group([ [ [ 0, 0, 1 ], [ 1, 0, 0 ], [ 0, -1, 0 ] ],
[ [ 0, 0, -1 ], [ 0, -1, 0 ], [ 1, 0, 0 ] ] ])
It's well-known that diamond has the space group Fd-3m (No. 227)
. I wonder how I can verify/confirm/check this fact in GAP after I've created the above AffineCrystGroup
.
Regards, HZ
Solution 1:[1]
Based on the document here, I created the same space group using the built-in dataset in crystcat
. The two space groups should be isomorphic, but I tried the following methods and failed to get evidence of isomorphism between them:
M1:=[[0, 0, 1, 0],[1, 0, 0, 0],[0, -1, 0, 0],[1/4, 1/4, 1/4, 1]];;
M2:=[[0,0,-1,0],[0,-1,0,0],[1,0,0,0],[0,0,0,1]];;
S1:=AffineCrystGroup([M1,M2]);;
iso1:=IsomorphismFpGroup(S1);;
img1:=Image(iso1);;
# DisplaySpaceGroupType("Fd-3m");
# DisplaySpaceGroupType(3,227);
# Obtained from DisplaySpaceGroupGenerators("Fd-3m");
# DisplaySpaceGroupGenerators("Fd-3m");
gens2:=[
[ [ -1, 0, 0, 0 ],
[ 0, -1, 0, 0 ],
[ 0, 0, -1, 0 ],
[ 0, 0, 0, 1 ] ],
[ [ -1, 0, 0, 0 ],
[ 0, -1, 0, 0 ],
[ 1, 1, 1, 1/2 ],
[ 0, 0, 0, 1 ] ],
[ [ 0, 0, 1, 0 ],
[ 1, 0, 0, 0 ],
[ 0, 1, 0, 0 ],
[ 0, 0, 0, 1 ] ],
[ [ 0, 0, 1, 0 ],
[ -1, -1, -1, 1/2 ],
[ 1, 0, 0, 0 ],
[ 0, 0, 0, 1 ] ],
[ [ 0, 1, 0, 0 ],
[ 1, 0, 0, 0 ],
[ -1, -1, -1, 1/2 ],
[ 0, 0, 0, 1 ] ]];;
S2:=TransposedMatrixGroup(AffineCrystGroupOnLeft(gens2));;
iso2:=IsomorphismFpGroup(S2);;
img2:=Image(iso2);;
IsomorphismGroups(S1,S2);
IsomorphismGroups(img1,img2);
The IsomorphismGroups(S1,S2)
fails as follows:
gap> IsomorphismGroups(S1,S2);
#I Forcing finiteness test
Error, cannot test isomorphism of infinite groups at /home/werner/Public/repo/github.com/gap-system/gap.git/lib/morpheus.gi:2835 called from
<function "IsomorphismGroups">( <arguments> )
called from read-eval loop at *stdin*:63
you can 'quit;' to quit to outer loop, or
you can 'return;' to continue
The IsomorphismGroups(img1,img2)
freezes at the following step forever:
gap> IsomorphismGroups(img1,img2);
#I Forcing finiteness test
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 |