Main class for generating crystals.
|
__init__(self,
asymmetric_unit,
space_group=ParserWrapper.SPACE_GROUP,
a_param=ParserWrapper.A_PARAM,
b_param=ParserWrapper.B_PARAM,
c_param=ParserWrapper.C_PARAM,
alpha_param=ParserWrapper.ALPHA_PARAM,
beta_param=ParserWrapper.BETA_PARAM,
gamma_param=ParserWrapper.GAMMA_PARAM,
ncella=ParserWrapper.NCELLA,
ncellb=ParserWrapper.NCELLB,
ncellc=ParserWrapper.NCELLC,
origin=ParserWrapper.ORIGIN,
bonding=ParserWrapper.BONDING_DEFAULT,
bond_orders=ParserWrapper.BOND_ORDERS_DEFAULT,
translate=ParserWrapper.TRANSLATE_DEFAULT,
keep_edge_atoms=ParserWrapper.KEEP_EDGE_ATOMS,
cov_offset=ParserWrapper.COV_OFFSET,
intact_molecules=ParserWrapper.INTACT_MOLECULES_DEFAULT,
fract_offset=FRACT_OFFSET,
no_pbc_bonding=ParserWrapper.NO_PBC_BONDING,
logger=None)
Create an instance. |
|
|
|
handleSettings(self)
Handle the settings of this crystal build. |
|
|
bool
|
doBonding(self)
Determine if this script should handle the bonding both inside and
between unit cells. |
|
|
bool
|
doBondOrders(self)
Determine if this script should handle the assignment of bond orders
both inside and between unit cells. |
|
|
bool
|
doTranslation(self)
Determine if the atoms should be translated to the first unit cell. |
|
|
|
getLatticeParameters(self)
Get lattice parameters. |
|
|
|
checkInputParams(self)
Check input parameters. |
|
|
|
updateLatticeProperties(self)
Update the lattice properties for the asymmetric unit structure. |
|
|
|
setAsuColor(self)
Set the color scheme to use for the ASU structure. |
|
|
mmcrystal handle
|
|
|
determineBasisVectors(self)
Determine the lattice vectors in the cartesian basis and the
cartesian vectors in the lattice basis. |
|
|
|
setUnitCellLowerBounds(self)
Set the lower bounds of the unit cell. |
|
|
|
|
|
labelSymEquivPos(self)
Label the symmetry equivalent positions. |
|
|
|
labelAsuAtoms(self,
astructure)
Label the atoms that make up an ASU, i.e. |
|
|
|
|
|
|
|
setStructureProperties(self)
Set some structure properties. |
|
|
|
|
|
printCrystalParams(self)
Print some crystal parameters. |
|
|
|
updateFractionals(self,
next_cell,
indexa,
indexb,
indexc)
Update the fractional coordinates of the next unit cell. |
|
|
|
setAsuAtomsFalse(self,
astructure)
Set the ASU atom labels to false for this structure. |
|
|
|
|
list
|
|
dict or None
|
getIntactMolecules(self,
crystal_super_cell)
Get the original super cell including intact molecules at the
boundary from the larger super cell. |
|
|
|
translateSupercell(self,
delta_a,
delta_b,
delta_c)
Translate the super cell by the given amount along each of the
lattice vectors and update the fractional coordinates. |
|
|
|
buildCrystalSuperCellWithIntactMolecules(self)
Build a crystal super cell while keeping intact molecules at the unit
cell boundaries. |
|
|
|
orchestrate(self)
Orchestrate the construction of the crystal. |
|
|
Inherited from object :
__delattr__ ,
__format__ ,
__getattribute__ ,
__hash__ ,
__new__ ,
__reduce__ ,
__reduce_ex__ ,
__repr__ ,
__setattr__ ,
__sizeof__ ,
__str__ ,
__subclasshook__
|
|
SPACE_GROUP_KEY = 's_pdb_PDB_CRYST1_Space_Group'
|
|
A_KEY = 'r_pdb_PDB_CRYST1_a'
|
|
B_KEY = 'r_pdb_PDB_CRYST1_b'
|
|
C_KEY = 'r_pdb_PDB_CRYST1_c'
|
|
ALPHA_KEY = 'r_pdb_PDB_CRYST1_alpha'
|
|
BETA_KEY = 'r_pdb_PDB_CRYST1_beta'
|
|
GAMMA_KEY = 'r_pdb_PDB_CRYST1_gamma'
|
|
SPACE_GROUP_ID_KEY = 'i_matsci_Space_Group_ID'
|
|
LATTICE_VECTOR_A_KEY = 's_matsci_Lattice_Vector_A/(3*Ang.)'
|
|
LATTICE_VECTOR_B_KEY = 's_matsci_Lattice_Vector_B/(3*Ang.)'
|
|
LATTICE_VECTOR_C_KEY = 's_matsci_Lattice_Vector_C/(3*Ang.)'
|
|
LATTICE_VECTOR_COORDS = 6
|
|
CHORUS_BOX_BASE_KEY = 'r_chorus_box_'
|
|
CHORUS_BOX_AX_KEY = CHORUS_BOX_BASE_KEY+ 'ax'
|
|
CHORUS_BOX_AY_KEY = CHORUS_BOX_BASE_KEY+ 'ay'
|
|
CHORUS_BOX_AZ_KEY = CHORUS_BOX_BASE_KEY+ 'az'
|
|
CHORUS_BOX_BX_KEY = CHORUS_BOX_BASE_KEY+ 'bx'
|
|
CHORUS_BOX_BY_KEY = CHORUS_BOX_BASE_KEY+ 'by'
|
|
CHORUS_BOX_BZ_KEY = CHORUS_BOX_BASE_KEY+ 'bz'
|
|
CHORUS_BOX_CX_KEY = CHORUS_BOX_BASE_KEY+ 'cx'
|
|
CHORUS_BOX_CY_KEY = CHORUS_BOX_BASE_KEY+ 'cy'
|
|
CHORUS_BOX_CZ_KEY = CHORUS_BOX_BASE_KEY+ 'cz'
|
|
CHORUS_BOX_A_KEYS = [CHORUS_BOX_AX_KEY, CHORUS_BOX_AY_KEY, CHO...
|
|
CHORUS_BOX_B_KEYS = [CHORUS_BOX_BX_KEY, CHORUS_BOX_BY_KEY, CHO...
|
|
CHORUS_BOX_C_KEYS = [CHORUS_BOX_CX_KEY, CHORUS_BOX_CY_KEY, CHO...
|
|
NUM_DECIMAL_COORDS = 4
|
|
MSGWIDTH = 80
|
|
GENERAL_VEC_1 = numpy.matrix([1.0, 0.0, 0.0]).transpose()
|
|
GENERAL_VEC_2 = numpy.matrix([0.0, 1.0, 0.0]).transpose()
|
|
GENERAL_VEC_3 = numpy.matrix([0.0, 0.0, 1.0]).transpose()
|
|
F1F2F3_FORMAT = '(%.4f, %.4f, %.4f)'
|
|
F1F2F3_KEY = 's_matsci_f1f2f3'
|
|
F1_KEY = 'r_matsci_f1'
|
|
F2_KEY = 'r_matsci_f2'
|
|
F3_KEY = 'r_matsci_f3'
|
|
FRACT_KEYS = [F1_KEY, F2_KEY, F3_KEY]
|
|
SYMMETRY_LABEL_KEY = 'i_matsci_Symmetry_Label'
|
|
ASU_LABEL_KEY = 'b_matsci_ASU_Atom'
|
|
CM_TO_ANGSTROM = float(100000000)
|
|
UNIT_CELL_FORMULA_KEY = 's_m_Unit_Cell_Formula'
|
|
UNIT_CELL_VOLUME_KEY = 'r_m_Unit_Cell_Volume/Ang.^3'
|
|
UNIT_CELL_DENSITY_KEY = 'r_m_Unit_Cell_Density/g/cm^3'
|