Package schrodinger :: Package application :: Package matsci :: Module shapes :: Class Cubeoctahedron
[hide private]
[frames] | no frames]

Class Cubeoctahedron

      object --+    
               |    
ConvexPolyhedron --+
                   |
                  Cubeoctahedron

Class to manage a cubeoctahedron.

Instance Methods [hide private]
 
__init__(self, scale, center=ORIGIN, ref_face_idx=1, ref_face_normal_along=Z_AXIS, ref_edge_idx=1, ref_edge_along=X_AXIS)
Create an instance.
float
getEdgeLength(self, circumradius)
Return the edge length.
float
getCircumRadius(self, length)
Return the circumradius.
float
getVolume(self, length)
Return the volume.

Inherited from ConvexPolyhedron: addAlignmentAxesToTemplate, addNormalsToTemplate, addPointsToTemplate, addSegmentPlaneIntersectionsToTemplate, alignPolyhedron, allFacesIntersected, getFaces, getReferenceFaces, getSegmentPlaneIntersections, getSurfaceArea, getVertices, makeTemplate, pointInside, translateVertices, updateShape

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  NAME = 'cubeoctahedron'
  DEFAULT = [5.0]
  DESCRIPTION = ['edge length']
  TYPE = 'archimedean'
  VERTICES = [INVSQRT2* numpy.array(vertex) for vertex in VERTICES]
  INDICES = [[2, 5, 11], [1, 9, 5], [5, 9, 7, 11], [11, 7, 4], [...
  NUM_UNIQUE_EDGES = 1
  NUM_UNIQUE_FACES = 2
Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, scale, center=ORIGIN, ref_face_idx=1, ref_face_normal_along=Z_AXIS, ref_edge_idx=1, ref_edge_along=X_AXIS)
(Constructor)

 

Create an instance.

Parameters:
  • scale (float) - multiplicative scaling factor
  • center (numpy.array) - the center of the polyhedron
  • ref_face_idx (int) - specifies which of this polyhedron's available reference faces (symmetry unique faces sorted by decreasing area) to use in the alignment
  • ref_face_normal_along (numpy.array triple) - specifies the vector along which the reference face normal will be aligned
  • ref_edge_idx (int) - specifies which of the reference faces available reference edges (symmetry unique edges sorted by decreasing length) to use in the alignment
  • ref_edge_along (numpy.array triple) - specifies the vector along which the reference edge will be aligned
Overrides: object.__init__

getEdgeLength(self, circumradius)

 

Return the edge length.

Parameters:
  • circumradius (float) - circumradius in Angstrom
Returns: float
edge length in Angstrom

getCircumRadius(self, length)

 

Return the circumradius.

Parameters:
  • length (float) - length in Angstrom
Returns: float
circumradius in Angstrom

getVolume(self, length)

 

Return the volume.

Parameters:
  • length (float) - length in Angstrom
Returns: float
volume in cubic Angstrom

Class Variable Details [hide private]

INDICES

Value:
[[2, 5, 11], [1, 9, 5], [5, 9, 7, 11], [11, 7, 4], [11, 4, 12, 2], [2,\
 12, 6], [2, 6, 1, 5], [1, 10, 3, 9], [9, 3, 7], [7, 3, 8, 4], [4, 8, \
12], [12, 8, 10, 6], [6, 10, 1], [10, 8, 3]]