60.3 More about Crystallographic Groups

In this section we describe how a CrystGroup G is represented internally. The casual user can skip this section in a first reading. Although the generators of a CrystGroup can be specified with respect to any basis, most computations are done internally in a special, standard basis, which is stored in G.internalBasis. The results are translated into the user-specified basis only afterwards. G.internalBasis consists of a (standard) basis of the translation lattice of G, complemented, if necessary, with suitable standard basis vectors. The standard basis of the translation lattice is stored in G.translations.

As soon as G.internalBasis has been determined, both the CrystGroup G and its point group P obtain a component internalGenerators. For the point group P, the component P.internalGenerators contains a set of generators of P, expressed with respect to the internalBasis of G, whereas for the CrystGroup G the component G.internalGenerators contains a set of homomorphic preimages of P.internalGenerators in G, also expressed in the internalBasis of G. Thus G.internalGenerators does not contain any translation generators. These are easy to add, however: With respect to the internal basis, the translations are generated by the first k standard basis vectors, where k is the rank of the translation lattice.

Note that the internalGenerators of both a point group P and a CrystGroup G may be changed by some functions, notably by FpGroup. Thus they need not have any obvious connection to P.generators and G.generators, respectively. Internal record entries of a CrystGroup should never be changed by the user.

Previous Up Top Next
Index

GAP 3.4.4
April 1997