PSCF v1.1
|
A list of wavevectors that are related by space-group symmetries. More...
#include <Basis.h>
Public Attributes | |
int | size |
Number of wavevectors in this star. More... | |
int | beginId |
Wave index of first wavevector in star. More... | |
int | endId |
Wave index of last wavevector in star. More... | |
int | invertFlag |
Index for inversion symmetry of star. More... | |
IntVec< D > | waveBz |
Integer indices indexBz of a characteristic wave of this star. More... | |
int | starId |
Index of this star in ordered array of all stars. More... | |
int | basisId |
Index of basis function associated with this star. More... | |
bool | cancel |
Is this star cancelled, i.e., associated with a zero function? More... | |
A list of wavevectors that are related by space-group symmetries.
The wavevectors in a star form a continuous block within the array waves defined by the Basis classes. Within this block, waves are listed in descending lexigraphical order of their integer (ijk) indices as given by Basis::Wave::indexBz.
int Pscf::Basis< D >::Star::size |
Number of wavevectors in this star.
Definition at line 446 of file Basis.h.
Referenced by pscfpp.file.File::__eq__(), pscfpp.text.Record::__init__(), pscfpp.file.File::__init__(), pscfpp.file.File::__repr__(), pscfpp.text.Record::__str__(), and Pscf::Pspc::FieldIo< D >::readFieldsBasis().
int Pscf::Basis< D >::Star::beginId |
Wave index of first wavevector in star.
Definition at line 451 of file Basis.h.
Referenced by Pscf::Pspg::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspc::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspg::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::hasSymmetry(), Pscf::Pspc::FieldIo< D >::readFieldsBasis(), and Pscf::Pspg::FieldIo< D >::readFieldsBasis().
int Pscf::Basis< D >::Star::endId |
Wave index of last wavevector in star.
Definition at line 456 of file Basis.h.
Referenced by Pscf::Pspg::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::convertKGridToBasis(), and Pscf::Pspc::FieldIo< D >::hasSymmetry().
int Pscf::Basis< D >::Star::invertFlag |
Index for inversion symmetry of star.
A star is said to be closed under inversion iff, for each vector G in the star, -G is also in the star. If a star S is not closed under inversion, then there is another star S' that is related to S by inversion, i.e., such that for each G in S, -G is in S'. Stars that are related by inversion are listed consecutively within the waves array of the Basis class.
If a star is closed under inversion, then invertFlag = 0.
If a star is not closed under inversion, then invertFlag = +1 or -1, with inverFlag = +1 for the first star in the pair of stars related by inversion and invertFlag = -1 for the second.
In a centro-symmetric group (i.e., a group that includes the inversion operation, with an inversion center at the origin of the coordinate system), all stars are closed under inversion. In this case, all stars in the basis must thus have starInvert = 0.
In a non-centro-symmetric group, a stars may either be closed closed under inversion (starInvert = 0) or belong to a pair of consecutive stars that are related by inversion (starInver = +1 or -1).
Definition at line 485 of file Basis.h.
Referenced by Pscf::Pspg::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspc::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspg::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::readFieldsBasis(), and Pscf::Pspg::FieldIo< D >::readFieldsBasis().
IntVec<D> Pscf::Basis< D >::Star::waveBz |
Integer indices indexBz of a characteristic wave of this star.
Wave given here is the value of indexBz for a characteristic wave for the star. For invertFlag = 0 or 1, the characteristic wave is the first wave in the star. For invertFlag = -1, this is the negation of the waveBz of the partner star for which invertFlag = 1.
The coefficient of wave waveBz is always real and positive.
Definition at line 498 of file Basis.h.
Referenced by Pscf::Pspg::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::readFieldsBasis(), and Pscf::Pspg::FieldIo< D >::readFieldsBasis().
int Pscf::Basis< D >::Star::starId |
Index of this star in ordered array of all stars.
This is the index of this star within array stars_.
Definition at line 505 of file Basis.h.
Referenced by Pscf::Pspg::FieldIo< D >::convertKGridToBasis().
int Pscf::Basis< D >::Star::basisId |
Index of basis function associated with this star.
If this star is not cancelled (cancel == false), then basisId is set equal to the index of the associated basis function in in a list of nonzero basis functions or (equivalently) in a list of non-cancelled stars.
If this star is cancelled (cancel == true), then basisId = -1.
Definition at line 517 of file Basis.h.
Referenced by Pscf::Pspg::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspc::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspg::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::readFieldsBasis(), and Pscf::Pspg::FieldIo< D >::readFieldsBasis().
bool Pscf::Basis< D >::Star::cancel |
Is this star cancelled, i.e., associated with a zero function?
The cancel flag is true iff no nonzero basis function can be constructed from the waves of this star that is invariant under all elements of the space group. Basis functions are thus associated only with stars for which cancel == false.
Each cancelled star contains a set of waves that are related by symmetry for which the X-ray or neutron scattering intensity would exhibit a systematic cancellation required by the space group symmetry.
Definition at line 532 of file Basis.h.
Referenced by Pscf::Pspg::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspc::FieldIo< D >::convertBasisToKGrid(), Pscf::Pspg::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::convertKGridToBasis(), Pscf::Pspc::FieldIo< D >::hasSymmetry(), Pscf::Pspc::FieldIo< D >::readFieldsBasis(), and Pscf::Pspg::FieldIo< D >::readFieldsBasis().