Polyhedron¶
- 
class sympy.combinatorics.polyhedron.Polyhedron(corners, faces=[], pgroup=[])[source]¶
- Represents the polyhedral symmetry group (PSG). - The PSG is one of the symmetry groups of the Platonic solids. There are three polyhedral groups: the tetrahedral group of order 12, the octahedral group of order 24, and the icosahedral group of order 60. - All doctests have been given in the docstring of the constructor of the object. - References - http://mathworld.wolfram.com/PolyhedralGroup.html - 
property array_form¶
- Return the indices of the corners. - The indices are given relative to the original position of corners. - Examples - >>> from sympy.combinatorics import Permutation, Cycle >>> from sympy.combinatorics.polyhedron import tetrahedron >>> tetrahedron = tetrahedron.copy() >>> tetrahedron.array_form [0, 1, 2, 3] - >>> tetrahedron.rotate(0) >>> tetrahedron.array_form [0, 2, 3, 1] >>> tetrahedron.pgroup[0].array_form [0, 2, 3, 1] - See also 
 - 
property corners¶
- Get the corners of the Polyhedron. - The method - verticesis an alias for- corners.- Examples - >>> from sympy.combinatorics import Polyhedron >>> from sympy.abc import a, b, c, d >>> p = Polyhedron(list('abcd')) >>> p.corners == p.vertices == (a, b, c, d) True - See also 
 - 
property cyclic_form¶
- Return the indices of the corners in cyclic notation. - The indices are given relative to the original position of corners. - See also 
 - 
property edges¶
- Given the faces of the polyhedra we can get the edges. - Examples - >>> from sympy.combinatorics import Polyhedron >>> from sympy.abc import a, b, c >>> corners = (a, b, c) >>> faces = [(0, 1, 2)] >>> Polyhedron(corners, faces).edges FiniteSet((0, 1), (0, 2), (1, 2)) 
 - 
property faces¶
- Get the faces of the Polyhedron. 
 - 
property pgroup¶
- Get the permutations of the Polyhedron. 
 - 
reset()[source]¶
- Return corners to their original positions. - Examples - >>> from sympy.combinatorics.polyhedron import tetrahedron as T >>> T = T.copy() >>> T.corners (0, 1, 2, 3) >>> T.rotate(0) >>> T.corners (0, 2, 3, 1) >>> T.reset() >>> T.corners (0, 1, 2, 3) 
 - 
rotate(perm)[source]¶
- Apply a permutation to the polyhedron in place. The permutation may be given as a Permutation instance or an integer indicating which permutation from pgroup of the Polyhedron should be applied. - This is an operation that is analogous to rotation about an axis by a fixed increment. - Notes - When a Permutation is applied, no check is done to see if that is a valid permutation for the Polyhedron. For example, a cube could be given a permutation which effectively swaps only 2 vertices. A valid permutation (that rotates the object in a physical way) will be obtained if one only uses permutations from the - pgroupof the Polyhedron. On the other hand, allowing arbitrary rotations (applications of permutations) gives a way to follow named elements rather than indices since Polyhedron allows vertices to be named while Permutation works only with indices.- Examples - >>> from sympy.combinatorics import Polyhedron, Permutation >>> from sympy.combinatorics.polyhedron import cube >>> cube = cube.copy() >>> cube.corners (0, 1, 2, 3, 4, 5, 6, 7) >>> cube.rotate(0) >>> cube.corners (1, 2, 3, 0, 5, 6, 7, 4) - A non-physical “rotation” that is not prohibited by this method: - >>> cube.reset() >>> cube.rotate(Permutation([[1, 2]], size=8)) >>> cube.corners (0, 2, 1, 3, 4, 5, 6, 7) - Polyhedron can be used to follow elements of set that are identified by letters instead of integers: - >>> shadow = h5 = Polyhedron(list('abcde')) >>> p = Permutation([3, 0, 1, 2, 4]) >>> h5.rotate(p) >>> h5.corners (d, a, b, c, e) >>> _ == shadow.corners True >>> copy = h5.copy() >>> h5.rotate(p) >>> h5.corners == copy.corners False 
 - 
property size¶
- Get the number of corners of the Polyhedron. 
 - 
property vertices¶
- Get the corners of the Polyhedron. - The method - verticesis an alias for- corners.- Examples - >>> from sympy.combinatorics import Polyhedron >>> from sympy.abc import a, b, c, d >>> p = Polyhedron(list('abcd')) >>> p.corners == p.vertices == (a, b, c, d) True - See also 
 
- 
property 
