Goto Chapter: Top 1 2 3 4 5 6 7 8 Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

3 Triangle-Group Cells
 3.1 Cells
 3.2 Cell Properties
 3.3 Query Information from Cells
 3.4 Cell Translation Group
 3.5 Cell Point Group
 3.6 Maximally Symmetric Wyckoff Positions
 3.7 Cell Graphs

3 Triangle-Group Cells

3.1 Cells

A triangle-group cells is defined by the quotient group of a triangle group \Delta by a subgroup of translations \Gamma, i.e., a torsion-free normal subgroup of the proper triangle group \Delta^+. Geometrically, this includes a choice of transversal T_{\Delta^+}(\Gamma) characterizing the cell and a choice of transversal T_{G^+}(G_w^+), where G^+\cong\Delta^+/\Gamma is the (proper) point group of the cell and G_w^+ is the stabilizer of a maximally symmetric Wyckoff position of type w in the cell.

The cell is implemented as an object of category TGCellObj with the following components:

and is printed in the form

TGCell( ProperTriangleGroup(r, q, p), rels )

where (r,q,p) is the signature of the underlying triangle group and rels the relators defining the cell in terms of the generators x, y, z of the proper triangle group \Delta^+.

3.1-1 TGCell
‣ TGCell( tg, quotient[, GAMgens[, TDGAM[, TGGw]]] )( function )

Returns: cell as TGCell object

Construct the cell for the triangle group tg (\Delta^+), given as ProperTriangleGroup object (see 2.1), specified by the quotient q given as a TGQuotient object quotient (see 2.3).

Optionally, generators GAMgens of the translation group \Gamma can be explicitly given as elements of tg. If not given, they are computed automatically. Similarly, choices for the transversals T_{\Delta^+}(\Gamma) and T_{G^+}(G_w^+) can be given as TDGAM and TGGw, respectively. If not given, they are computed automatically. Here, TDGAM is a list of elements of tg and TGGw is a list of three lists, one for w=x,y,z, respectively, of elements of tg.

3.1-2 TGCellSymmetric
‣ TGCellSymmetric( tg, quotient, center )( function )

Returns: cell as TGCell object

Construct the symmetric and at centercentered cell for the triangle group tg (\Delta^+), given as ProperTriangleGroup object (see 2.1), specified by the quotient q given as a TGQuotient object quotient (see 2.3).

3.2 Cell Properties

3.2-1 GetProperTriangleGroup
‣ GetProperTriangleGroup( cell )( operation )

returns the proper triangle group on which the cell cell is based as a ProperTriangleGroup object (see 2.1).

3.2-2 CellRelators
‣ CellRelators( cell )( operation )

returns the relators defining the cell as elements of GetProperTriangleGroup(cell)

3.2-3 TGCellTranslationGroup
‣ TGCellTranslationGroup( cell )( operation )

returns the translations group \Gamma as a TGCellTranslationGroup object (see 3.4).

3.2-4 TGCellPointGroup
‣ TGCellPointGroup( cell )( operation )

returns the (proper) point group G^+\cong\Delta^+/\Gamma as a TGCellPointGroup object (see 3.5).

3.2-5 HasTGCellMSWPs
‣ HasTGCellMSWPs( cell )( operation )

returns true if the the maximally symmetry Wyckoff positions are precomputed, false otherwise.

3.2-6 TGCellMSWPs
‣ TGCellMSWPs( cell )( operation )

returns the maximally symmetry Wyckoff positions as a TGCellMSWPs object (see 3.6) and computes them if necessary.

Call HasTGCellMSWPs (3.2-5) first to check if they are already precomputed.

3.3 Query Information from Cells

3.3-1 TGCellSchwarzTriangleRep
‣ TGCellSchwarzTriangleRep( cell, elem )( operation )

returns the index of the Schwarz triangle representative in the cell, i.e., the position in GetRightTransversal(TGCellPointGroup(cell)), for a given element elem of the proper triangle group GetProperTriangleGroup(cell).

3.4 Cell Translation Group

Cell translation groups are characterized by the translation group \Gamma, a normal subgroup of the proper triangle group \Delta^+, and an explicit choice of generators. This is implemented as an object of category TGCellTranslationGroupObj with the following components:

and is printed in the form

TGCellTranslationGroup( < g1, g2, ... > | rel1, rel2, ... > )

where g1, g2, ... are the generators of \Gamma as finitely presented group, FpGroup (3.4-3), and rel1, rel2, ... are the corresponding relators.

3.4-1 AsTGSubgroup
‣ AsTGSubgroup( Gamma )( operation )

returns the translation group Gamma as a subgroup of the proper triangle group \Delta^+.

3.4-2 Generators
‣ Generators( Gamma )( operation )

returns the generators of the translation group Gamma as elements of the proper triangle group \Delta^+.

3.4-3 FpGroup
‣ FpGroup( Gamma )( operation )

returns the translation group Gamma as a finitely presented group with generators g1, g2, ....

3.4-4 FpIsomorphism
‣ FpIsomorphism( Gamma )( operation )

returns the group isomorphism from AsTGSubgroup(Gamma), the translation group as a subgroup of proper triangle group \Delta^+, to the finitely presented group FpGroup(Gamma).

3.5 Cell Point Group

The (proper) point group G^+ of a triangle-group cell is ismomorphic to the quotient group \Delta^+/\Gamma of the proper triangle group \Delta^+ by the translation group \Gamma. It is implemented as an object of category TGCellPointGroupObj with the following components:

and is printed in the form

TGCellPointGroup( < x, y, z > | rel1, rel2, ... > )

where x, y, z are the generators of the point group G^+ and rel1, rel2, ... are the corresponding relators.

3.5-1 AsQuotientGroup
‣ AsQuotientGroup( G )( operation )

returns the (proper) point group G^+ as quotient group \Delta^+/\Gamma.

3.5-2 AsQuotient
‣ AsQuotient( G )( operation )

returns the (proper) point group G^+\cong\Delta^+/\Gamma as a RightTransversal object.

3.5-3 GetRightTransversal
‣ GetRightTransversal( G )( operation )

returns the right transversal with representatives of point group elements as elements of the proper triangle group \Delta^+.

3.5-4 QuotientHomomorphism
‣ QuotientHomomorphism( G )( operation )

returns the group homomorphism from the proper triangle group \Delta^+ to the quotient AsQuotientGroup(G) corresponding to the point group G^+.

3.6 Maximally Symmetric Wyckoff Positions

The maximally symmetric Wyckoff positions in a triangle-group cell are given by the orbital stabilizer theorem as the coset representatives of the right cosets of the stabilizer of a maximally symmetric Wyckoff position of type w in the (proper) point group G^+, i.e., as elements of the right transversal T_{G^+}(G_w^+). Here the types of maximally symmetric Wyckoff positions, w=x,y,z, are distinguished by the order of their stabilizer group: |G_x^+|=r, |G_y^+|=q, and |G_z^+|=p.

This is implemented as an object of category TGCellMSWPsObj with the following components:

and is printed in the form

TGCellMSWPs( [ TGGx, TGGy, TGGz ] )

where TGGx, TGGy, TGGz are the right transversals T_{G^+}(G_x^+), T_{G^+}(G_y^+), T_{G^+}(G_z^+), respectively.

3.6-1 AsQuotient
‣ AsQuotient( obj )( operation )

returns the list of the three quotients G^+/G_w^+, w=x,y,z, corresponding to the list of maximally symmetric Wyckoff positions in the cell. Each quotient is given as a RightTransversal object.

3.6-2 GetRightTransversal
‣ GetRightTransversal( obj )( operation )

returns the list of the three right transversals T_{G^+}(G_w^+), w=x,y,z. Each right transversal is given as a list of elements of the proper triangle group \Delta^+, such that each elements represents a maximally symmetric Wyckoff positions of type w.

3.6-3 GetKernel
‣ GetKernel( obj )( operation )

returns the list of the three kernels, each corresponding to the list of elements of the on-site symmetry group of the maximally symmetric Wyckoff position. The list entries are given as elements of the proper point group G^+.

3.7 Cell Graphs

Given a triangle-group quotient G^+\cong\Delta^+/\Gamma and a choice of center, the cell graph defines a maximally symmetric triangular tessellation of the corresponding connected and compactified translation unit cell. It is implemented as a TGCellGraph object with the following components:

and is printed in the form

TGCellGraph( cell,
  center = w,
  vertices = [ [ w1, gi1 ], [ w2, gi2 ], ... ],
  edges = [ [ v1, v2, s, gam ], ... ],
  faces = [ [ [ e1, o1 ], [ e2, o2 ], ... ], ... ],
  boundary = [ [ d1, d2, e, b, m, gam ], ... ]
)

See the corresponding references above for details.

Cell graphs are constructed using the function TGCellGraph (3.7-1) by specifying the triangle group, its quotient and the center.

3.7-1 TGCellGraph
‣ TGCellGraph( tg, quotient, center[, GAMgens[, TDGAM[, TGGw]]] )( function )

Returns: cell graph as TGCellGraph object (see 3.7).

Construct the cell graph representing a connected and symmetric cell that is specified by

Optionally, generators GAMgens of the translation group \Gamma can be explicitly given as elements of tg. If not given, they are computed automatically. Similarly, choices for the transversals T_{\Delta^+}(\Gamma) and T_{G^+}(G_w^+) can be given as TDGAM and TGGw, respectively. If not given, they are computed automatically. Here, TDGAM is a list of elements of tg and TGGw is a list of three lists, one for w=x,y,z, respectively, of elements of tg.

The option simplify, which takes a non-negative integer as argument, can be used to specify the level of simplification of words in the translation group, both for the translation generators expressed in terms of generators of the proper triangle group and for the translations expressed as elements of the finitely presented group FpGroup(TGCellTranslationGroup(GetTGCell(cellgraph))). The additional option simplifyMethod, which takes a string, can be used to specify the method of simplification. By default simplifyMethod is set to "BruteForce". If the package kbmag (see kbmag reference manual kbmag Reference Manual) is loaded it is possible to set simplifyMethod to "KnuthBendix", such that the Knuth-Bendix completion algorithm is used in the simplification. This method uses the available space in cache, which can be flushed by calling FlushCaches (see section Mutability and Copying in the GAP Reference Manual).

3.7-2 GetProperTriangleGroup
‣ GetProperTriangleGroup( cellgraph )( operation )

returns the proper triangle group \Delta^+ on which the cell is based as a ProperTriangleGroup object (see 2.1).

3.7-3 CellRelators
‣ CellRelators( cellgraph )( operation )

returns the relators in terms of elements of GetProperTriangleGroup(cellgraph) defining the cell.

3.7-4 CellCenter
‣ CellCenter( cellgraph )( operation )

returns the an integer between 1 and 3 indicating the type of vertex of the triangle tessellation at the center of the cell graph with 1, 2, 3 corresponding to the vertices x, y, z, of the fundamental Schwarz triangle.

3.7-5 CellVertices
‣ CellVertices( cellgraph )( operation )

returns the vertices of the cell graph as a list.

Each vertex is of the form [ w, gi ] with w an integer between 1 and 3 indicating the vertex of the fundamental Schwarz triangle and gi the position of the element in the transversal T_{G^+}(G_w^+) labeling the vertex.

3.7-6 CellVertexPositions
‣ CellVertexPositions( cellgraph )( operation )

returns the positions of the vertices as elements of the proper triangle group \Delta^+.

3.7-7 CellEdges
‣ CellEdges( cellgraph )( operation )

returns the edges of the cell graph as a list.

Each edge is of the form [ v1, v2, s, gam ] with v1, v2 the positions of the vertices in CellVertices(cellgraph) connected by the edge, s the position of the element of T_{\Delta^+}(\Gamma) labeling the Schwarz triangle this edge is a part of, and gam the translation relating the unit cell containing v1 to the unit cell containing v2, as element of the finitely presented group FpGroup(TGCellTranslationGroup(GetTGCell(cellgraph))). If v1 corresponds to the vertex (w, [g_{u_w}]_w) and v2 to the vertex (w', [g_{\tilde{u}_{w'}}]_{w'}), then gam corresponds to the translation \gamma such that

g_{\tilde{u}_{w'}} = g_{u_w}\gamma.

3.7-8 CellEdgeTranslations
‣ CellEdgeTranslations( cellgraph )( operation )

returns only the list of translations associated with the edges of the cell graph in the same format as CellEdges (3.7-7).

3.7-9 CellFaces
‣ CellFaces( cellgraph )( operation )

returns the faces of the cell graph as a list.

Each face is an ordered list of tuples [ edge, orientation ], where edges is a position in CellEdges(cellgraph) and orientation is equal to +1 (-1) if the orientation is the same (opposite) compared to the entry in CellEdges(cellgraph). The edges of the face are ordered such that the orientation of the face is positive.

3.7-10 CellFacesWithCenter
‣ CellFacesWithCenter( cellgraph )( operation )

returns a list of three lists with faces of the cell graph with the x, y, z vertex of the fundamental Schwarz triangle as center, respectively. The format of the faces is the same as CellFaces (3.7-9).

3.7-11 CellBoundary
‣ CellBoundary( cellgraph )( operation )

returns a list of boundary specifications of the cell.

Each boundary is described by a list of the form [ d1, d2, e, b, m, gam ], where d1, d2 are elements of T_{\Delta^+}(\Gamma)\subset\Delta^+ labeling the Schwarz triangles this edge is a part of, e the position in the list of edges CellEdges(celgraph), b the index of the boundary (identical for identified boundaries), m either 0 or 1 indicating the orientation of the triangle associated with this instance of the boundary (0 for gray and 1 for white), and gam the translation relating the given to the identified boundary, as an element of the finitely presented group FpGroup(TGCellTranslationGroup(GetTGCell(cellgraph))).

3.7-12 GetTGCell
‣ GetTGCell( cellgraph )( operation )

returns the associated TGCell object (see 3.1).

3.7-13 Exporting TGCellGraph Objects
‣ Export( cellgraph, output-stream )( operation )
‣ Export( cellgraph, path )( operation )
‣ ExportString( cellgraph )( operation )

Export the cell graph cellgraph to the OutputTextStream output-stream or to the file at the path given by the string path. Alterantively, the cell graph can be exported to a string with ExportString, which returns said string.

3.7-14 Importing TGCellGraph Objects
‣ ImportTGCellGraph( input-stream[, tg] )( function )
‣ ImportTGCellGraphFromFile( path[, tg] )( function )
‣ ImportTGCellGraphFromString( string[, tg] )( function )

Returns: cell graph as TGCellGraph (see 3.7).

Import a cell graph from the InputTextStream input-stream or from the file at the path given by the string path. Alterantively, the cell graph can be imported from the string string. Optionally, the triangle group can be given as a ProperTriangleGroup object tg (see 2.1).

 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 6 7 8 Bib Ind

generated by GAPDoc2HTML