#[repr(C, align(32))]pub struct StaSpinor {
pub scalar: f32,
pub ex: f32,
pub ey: f32,
pub ez: f32,
pub bx: f32,
pub by: f32,
pub bz: f32,
pub pseudoscalar: f32,
}Expand description
Dirac Spinor in Spacetime Algebra Cl(1, 3) as an Even Multivector Cl+(1, 3): psi = scalar + (ex \gamma_10 + ey \gamma_20 + ez \gamma_30 + bx \gamma_32 + by \gamma_13 + bz \gamma_21) + pseudoscalar \gamma_0123. Alignment: 32 bytes (cache line half, 8 floats).
Fields§
§scalar: f32§ex: f32§ey: f32§ez: f32§bx: f32§by: f32§bz: f32§pseudoscalar: f32Implementations§
Source§impl StaSpinor
impl StaSpinor
pub const fn zero() -> Self
pub const fn new( scalar: f32, ex: f32, ey: f32, ez: f32, bx: f32, by: f32, bz: f32, pseudoscalar: f32, ) -> Self
Sourcepub fn bilinear_covariants(&self) -> SpinorBilinearCovariants
pub fn bilinear_covariants(&self) -> SpinorBilinearCovariants
Computes Lounesto’s 5 Bilinear Covariants (sigma, omega, J, S, K) (Lounesto 2001, Eq. 12.1).
Sourcepub fn lounesto_class(&self, tol: f32) -> LounestoClass
pub fn lounesto_class(&self, tol: f32) -> LounestoClass
Classifies the spinor into one of the 6 Lounesto classes (Lounesto 2001, Ch. 12).
Trait Implementations§
impl Copy for StaSpinor
impl StructuralPartialEq for StaSpinor
Auto Trait Implementations§
impl Forget for StaSpinor
impl Freeze for StaSpinor
impl Move for StaSpinor
impl RefUnwindSafe for StaSpinor
impl Send for StaSpinor
impl Sync for StaSpinor
impl Unpin for StaSpinor
impl UnsafeUnpin for StaSpinor
impl UnwindSafe for StaSpinor
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