Package diffpy :: Package Structure :: Module SymmetryUtilities :: Class SymmetryConstraints
[hide private]
[frames] | no frames]

Class SymmetryConstraints

source code

Generate symmetry constraints for specified positions

Data members:
    spacegroup -- instance of SpaceGroup
    positions  -- all positions to be constrained
    Uijs       -- thermal factors for all positions (defaults to zeros)
    sgoffset   -- optional offset of space group origin [0, 0, 0]
    eps        -- cutoff for equivalent positions
Calculated data members:
    corepos    -- list of of positions in the asymmetric unit
    coremap    -- dictionary mapping indices of asymmetric core positions
                  to indices of all symmetry related positions
    poseqns    -- list of coordinate formula dictionaries per each site.
                  Formula dictionary keys are from ("x", "y", "z") and
                  the values are formatted as [[-]{x|y|z}%i] [{+|-}%g],
                  for example: "x0", "-x3", "z7 +0.5", "0.25".
    pospars    -- list of (xyz symbol, value) pairs
    Ueqns      -- list of anisotropic atomic displacement formula
                  dictionaries per each position.  Formula dictionary
                  keys are from ('U11','U22','U33','U12','U13','U23')
                  and the values are formatted as {[%g*][Uij%i]|0},
                  for example: "U110", "0.5*U2213", "0"
    Upars      -- list of (U symbol, value) pairs
    Uisotropy  -- list of bool flags for isotropic thermal displacements



Instance Methods [hide private]
 
__init__(self, spacegroup, positions, Uijs=None, sgoffset=[0, 0, 0], eps=1e-05)
Initialize and calculate SymmetryConstraints.
source code
 
_findConstraints(self)
Find constraints for positions and anisotropic displacements Uij...
source code
 
posparSymbols(self)
Return list of standard position parameter symbols.
source code
 
posparValues(self)
Return list of position parameters values.
source code
 
positionFormulas(self, xyzsymbols=None)
List of position formulas with custom parameter symbols.
source code
 
positionFormulasPruned(self, xyzsymbols=None)
List of position formula dictionaries with constant items removed.
source code
 
UparSymbols(self)
Return list of standard atom displacement parameter symbols.
source code
 
UparValues(self)
Return list of atom displacement parameters values.
source code
 
UFormulas(self, Usymbols=None)
List of atom displacement formulas with custom parameter symbols.
source code
 
UFormulasPruned(self, Usymbols=None)
List of atom displacement formula dictionaries with constant items removed.
source code
Method Details [hide private]

__init__(self, spacegroup, positions, Uijs=None, sgoffset=[0, 0, 0], eps=1e-05)
(Constructor)

source code 
Initialize and calculate SymmetryConstraints.

spacegroup -- instance of SpaceGroup
positions  -- list of all positions to be constrained
Uijs       -- list of U matrices for all constrained positions
sgoffset   -- optional offset of space group origin [0, 0, 0]
eps        -- cutoff for equivalent positions

_findConstraints(self)

source code 
Find constraints for positions and anisotropic displacements Uij
        

positionFormulas(self, xyzsymbols=None)

source code 
List of position formulas with custom parameter symbols.

xyzsymbols -- list of custom symbols used in formula strings

Return list of coordinate formulas dictionaries.  Formulas dictionary
keys are from ("x", "y", "z") and the values are formatted as
[[-]{symbol}] [{+|-}%g], for example: "x0", "-sym", "@7 +0.5", "0.25".

positionFormulasPruned(self, xyzsymbols=None)

source code 
List of position formula dictionaries with constant items removed.
See also positionFormulas().

xyzsymbols -- list of custom symbols used in formula strings

Return list of coordinate formula dictionaries.

UFormulas(self, Usymbols=None)

source code 
List of atom displacement formulas with custom parameter symbols.

Usymbols -- list of custom symbols used in formula strings

Return list of atom displacement formula dictionaries per each site.
Formula dictionary keys are from ('U11','U22','U33','U12','U13','U23')
and the values are formatted as {[%g*][Usymbol]|0}, for example:
"U11", "0.5*@37", "0".

UFormulasPruned(self, Usymbols=None)

source code 
List of atom displacement formula dictionaries with constant items
removed.  See also UFormulas().

Usymbols -- list of custom symbols used in formula strings

Return list of atom displacement formulas in tuples of
(U11, U22, U33, U12, U13, U23).