pub struct LocalizedBasisAction {
pub sectors: Vec<CellShiftAction>,
}Expand description
Complete localized-basis representation of one Seitz operation.
Fields§
§sectors: Vec<CellShiftAction>Implementations§
Source§impl LocalizedBasisAction
impl LocalizedBasisAction
Sourcepub fn lattice_gauge_matrix(
&self,
image_k: [f64; 3],
) -> Result<Array2<Complex64>, BasisRepresentationError>
pub fn lattice_gauge_matrix( &self, image_k: [f64; 3], ) -> Result<Array2<Complex64>, BasisRepresentationError>
Construct the lattice-gauge Bloch representation at the image momentum.
If $\mathbf k_g=W^{-T}\mathbf k$ for a unitary operation and $\mathbf k_g=-W^{-T}\mathbf k$ for an anti-unitary operation, then
$$ U_g^L(\mathbf k)=\sum_{\mathbf s}D^g_{\mathbf s} e^{-2\pi i\mathbf k_g\cdot\mathbf s}. $$
This sewing matrix is retained in the Hamiltonian report so that a later band-irrep implementation can restrict it to a little group and take traces on degenerate eigenspaces.
Trait Implementations§
Source§impl Clone for LocalizedBasisAction
impl Clone for LocalizedBasisAction
Auto Trait Implementations§
impl Freeze for LocalizedBasisAction
impl RefUnwindSafe for LocalizedBasisAction
impl Send for LocalizedBasisAction
impl Sync for LocalizedBasisAction
impl Unpin for LocalizedBasisAction
impl UnsafeUnpin for LocalizedBasisAction
impl UnwindSafe for LocalizedBasisAction
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more