#include <openbabel/generic.h>
Inheritance diagram for OBUnitCell:

Public Types | |
| enum | LatticeType { Undefined, Triclinic, Monoclinic, Orthorhombic, Tetragonal, Rhombohedral, Hexagonal, Cubic } |
Public Member Functions | |
| OBUnitCell () | |
| OBUnitCell (const OBUnitCell &) | |
| virtual OBGenericData * | Clone (OBBase *) const |
| ~OBUnitCell () | |
| OBUnitCell & | operator= (const OBUnitCell &) |
| void | SetData (const double a, const double b, const double c, const double alpha, const double beta, const double gamma) |
| void | SetData (const vector3 v1, const vector3 v2, const vector3 v3) |
| void | SetOffset (const vector3 v1) |
| void | SetSpaceGroup (const std::string sg) |
| void | SetSpaceGroup (const int sg) |
| void | SetLatticeType (const LatticeType lt) |
| double | GetA () |
| double | GetB () |
| double | GetC () |
| double | GetAlpha () |
| double | GetBeta () |
| double | GetGamma () |
| vector3 | GetOffset () |
| const std::string | GetSpaceGroup () |
| LatticeType | GetLatticeType (int spacegroup) |
| LatticeType | GetLatticeType () |
| std::vector< vector3 > | GetCellVectors () |
| matrix3x3 | GetCellMatrix () |
| matrix3x3 | GetOrthoMatrix () |
| matrix3x3 | GetFractionalMatrix () |
| int | GetSpaceGroupNumber (std::string name) |
| double | GetCellVolume () |
| void | SetAttribute (const std::string &v) |
| void | SetOrigin (const DataOrigin s) |
| virtual const std::string & | GetAttribute () const |
| unsigned int | GetDataType () const |
| virtual const std::string & | GetValue () const |
| virtual DataOrigin | GetOrigin () const |
Protected Attributes | |
| double | _a |
| double | _b |
| double | _c |
| double | _alpha |
| double | _beta |
| double | _gamma |
| vector3 | _offset |
| vector3 | _v1 |
| vector3 | _v2 |
| vector3 | _v3 |
| std::string | _spaceGroup |
| int | _numericSpaceGroup |
| LatticeType | _lattice |
| std::string | _attr |
| unsigned int | _type |
| DataOrigin | _source |
| enum LatticeType |
| OBUnitCell | ( | ) |
public constructor
| OBUnitCell | ( | const OBUnitCell & | ) |
| ~OBUnitCell | ( | ) | [inline] |
| virtual OBGenericData* Clone | ( | OBBase * | ) | const [inline, virtual] |
Reimplemented from OBGenericData.
| OBUnitCell & operator= | ( | const OBUnitCell & | ) |
| void SetData | ( | const double | a, | |
| const double | b, | |||
| const double | c, | |||
| const double | alpha, | |||
| const double | beta, | |||
| const double | gamma | |||
| ) | [inline] |
Sets the vectors and angles of the unitcell.
| a | The length a | |
| b | The length b | |
| c | The length c | |
| alpha | The angle alpha | |
| beta | The angle beta | |
| gamma | The angle gamma |
Sets the vectors, angles and lengths of the unitcell.
The angles and lengths of the unitcell will be calculated from the vectors v1, v2 and v3. Those vectors will as well be stored internally. Implements blue-obelisk:convertCartesianIntoNotionalCoordinates
| v1 | The x-vector | |
| v2 | The y-vector | |
| v3 | The z-vector |
| void SetOffset | ( | const vector3 | v1 | ) | [inline] |
Set the offset to the origin to v1.
| void SetSpaceGroup | ( | const std::string | sg | ) | [inline] |
Set the space group symbol for this unit cell. Does not create an OBSymmetryData entry or attempt to convert between different symbol notations
| void SetSpaceGroup | ( | const int | sg | ) | [inline] |
Set the space group for this unit cell. Each spacegroup-symbol has a numeric equivalent which is easier to use to convert between notations. Does not create an OBSymmetryData entry or attempt to convert between different symbol notations
| void SetLatticeType | ( | const LatticeType | lt | ) | [inline] |
Set the Bravais lattice type for this unit cell.
| double GetA | ( | ) | [inline] |
| double GetB | ( | ) | [inline] |
| double GetC | ( | ) | [inline] |
| double GetAlpha | ( | ) | [inline] |
| double GetBeta | ( | ) | [inline] |
| double GetGamma | ( | ) | [inline] |
| vector3 GetOffset | ( | ) | [inline] |
| const std::string GetSpaceGroup | ( | ) | [inline] |
| OBUnitCell::LatticeType GetLatticeType | ( | int | spacegroup | ) |
spacegroup)
| OBUnitCell::LatticeType GetLatticeType | ( | ) |
| vector< vector3 > GetCellVectors | ( | ) |
| matrix3x3 GetCellMatrix | ( | ) |
| matrix3x3 GetOrthoMatrix | ( | ) |
Implements blue-obelisk:calculateOrthogonalisationMatrix.
| matrix3x3 GetFractionalMatrix | ( | ) |
Matrix to convert from Cartesian to fractional Implements blue-obelisk:convertCartesianIntoFractionalCoordinates
| int GetSpaceGroupNumber | ( | std::string | name | ) |
| double GetCellVolume | ( | ) |
| void SetAttribute | ( | const std::string & | v | ) | [inline, inherited] |
Set the attribute (key), which can be used to retrieve this data.
| void SetOrigin | ( | const DataOrigin | s | ) | [inline, inherited] |
Set the origin of this data, which can be used to filter the data.
| virtual const std::string& GetAttribute | ( | ) | const [inline, virtual, inherited] |
| unsigned int GetDataType | ( | ) | const [inline, inherited] |
| virtual const std::string& GetValue | ( | ) | const [inline, virtual, inherited] |
Base class returns a default value (the attribute type) but should never be called.
Reimplemented in OBCommentData, OBPairData, and OBPairTemplate.
| virtual DataOrigin GetOrigin | ( | ) | const [inline, virtual, inherited] |
double _a [protected] |
double _b [protected] |
double _c [protected] |
double _alpha [protected] |
double _beta [protected] |
double _gamma [protected] |
std::string _spaceGroup [protected] |
int _numericSpaceGroup [protected] |
LatticeType _lattice [protected] |
std::string _attr [protected, inherited] |
attribute tag (e.g., "UnitCell", "Comment" or "Author")
unsigned int _type [protected, inherited] |
attribute type -- declared for each subclass
DataOrigin _source [protected, inherited] |
source of data for accounting