#include <SpaceGroup.h>
Public Methods | |
SpaceGroup () | |
Default Constructor (initializes in P1) You can use later SpaceGroup::ChangeSpaceGroup() to set the spacegroup. | |
SpaceGroup (const string &spgId) | |
Constructor with a specified spacegroup symbol or number. More... | |
~SpaceGroup () | |
Destructor. | |
void | ChangeSpaceGroup (const string &spgId) |
Change the Spacegroup. | |
const string & | GetName () const |
Get the name of this spacegroup (its name, as supplied initially by the calling program or user). | |
bool | IsInAsymmetricUnit (const double x, const double y, const double z) const |
Test if a given scatterer at (x,y,z) is in the asymmetric unit. | |
void | ChangeToAsymmetricUnit (double x, double y, double z) const |
Move (x,y,z) coordinates to their equivalent in the asym unit
| |
const AsymmetricUnit & | GetAsymUnit () const |
Get the AsymmetricUnit for this spacegroup. | |
int | GetSpaceGroupNumber () const |
Id number of the spacegroup. | |
bool | IsCentrosymmetric () const |
Is the crystal centrosymmetric ? | |
int | GetNbTranslationVectors () const |
Number of translation vectors (1 for 'P' cells, 2 for 'I', 4 for 'F',etc..). | |
CrystMatrix_double | GetTranslationVectors () const |
Return all Translation Vectors, as a 3 columns-array. More... | |
CrystMatrix_double | GetAllSymmetrics (const double x, const double y, const double z, const bool noCenter=false, const bool noTransl=false, const bool noIdentical=false) const |
Get all equivalent positions of a (xyz) position. More... | |
int | GetNbSymmetrics (const bool noCenter=false, const bool noTransl=false) const |
Return the number of equivalent positions in the spacegroup, ie the multilicity of the general position. More... | |
void | Print () const |
Prints a description of the spacegroup (symbol, properties). More... | |
bool | HasInversionCenter () const |
Is centrosymmetric ? | |
bool | IsInversionCenterAtOrigin () const |
Is the center of symmetry at the origin ? | |
const T_SgOps & | GetSgOps () const |
Get the SgOps structure. This will be removed when switching to cctbx. | |
const RefinableObjClock & | GetClockSpaceGroup () const |
Get the SpaceGroup Clock (corresponding to the time of the initialization of the SpaceGroup). | |
const T_HM_as_Hall & | GetHM_as_Hall () const |
Access to the HM_As_Hall structure. This will be removed when switching to cctbx. | |
unsigned int | GetUniqueAxis () const |
Which is the unique axis (for monoclinic space groups ). | |
Private Methods | |
void | InitSpaceGroup (const string &spgId) |
Init the spaceGroup object from its name. More... | |
Private Attributes | |
string | mId |
Spacegroup's name ( 'I422', 'D2^8','230') Maybe we should only store the Hermann-Mauguin symbol, rather than storing the string which was initially given by the user/program for the initialization. | |
T_SgOps | mSgOps |
SgOps structure for this spacegroup. (Symmetry operations). More... | |
bool | mHasInversionCenter |
Is spacegroup centrosymmetric ? | |
bool | mIsInversionCenterAtOrigin |
Is center of symmetry at the origin ? | |
T_HM_as_Hall | mHM_as_Hall |
SgOps structure for this spacegroup. (Symmetry operations). More... | |
AsymmetricUnit | mAsymmetricUnit |
The spacegroup asymmetric unit. | |
RefinableObjClock | mClock |
The Spacegroup clock. | |
unsigned int | mUniqueAxisId |
Unique axis number (0=a,1=b,2=c). | |
Static Private Attributes | |
const bool | mUseGeomStructFactor = false |
Use geometrical structure factor ? More... |
This class includes functions to get basic information about the symmetries, as well as getting all symmetrics for a given position in a unit cell.
This class included a pointer to a function calculating the "geometrical structure factor" (ie the sum of sin() and cos() for all symetrics, as could be found in the old version of the (red) International Tables), which was used to speed up computation of structure factors by using pre-factorised formulas. This is not used anymore, since methods can be used to speed up computations.
This class uses R. Grosse-Kunstleve 'SgLite' package, which is part of the Pymol package : http://pymol.sourceforge.net/
\warning: the interface of the class will somewhat change when switching from sgLite to cctbx (http://cctbx.sourceforge.net). Particularly functions Spacegroup::GetSgOps() and Spacegroup::GetHM_as_Hall() will be removed.
|
Constructor with a specified spacegroup symbol or number.
|
|
Move (x,y,z) coordinates to their equivalent in the asym unit
|
|
Get all equivalent positions of a (xyz) position.
|
|
Return the number of equivalent positions in the spacegroup, ie the multilicity of the general position.
|
|
Return all Translation Vectors, as a 3 columns-array. The first vector is always [0,0,0]
|
|
Init the spaceGroup object from its name. Initialize the SgOps & HM_as_Hall structures (SgLite), and set the function pointers to the functions used to compute the geometrical structure factors. |
|
Prints a description of the spacegroup (symbol, properties).
|
|
SgOps structure for this spacegroup. (Symmetry operations). See sglite subdirectory for more information. This is (c) R. Gross-Kunstleve, part of PyMol software http://pymol.sourceforge.net/ |
|
SgOps structure for this spacegroup. (Symmetry operations). See sglite subdirectory for more information. This is (c) R. Gross-Kunstleve, part of PyMol software http://pymol.sourceforge.net/ |
|
Use geometrical structure factor ?
|