pub trait IrcorepCharTabConstruction: HasUnitarySubgroup + CharacterProperties<CharTab = CorepCharacterTable<<Self as CharacterProperties>::RowSymbol, <<Self as HasUnitarySubgroup>::UnitarySubgroup as CharacterProperties>::CharTab>>{
    // Required method
    fn set_ircorep_character_table(&mut self, chartab: Self::CharTab);

    // Provided method
    fn construct_ircorep_character_table(&mut self) { ... }
}
Expand description

Trait for the ability to construct an ircorep character table for the group.

This trait comes with a default implementation of ircorep character table calculation based on the irreps of the unitary subgroup.

Required Methods§

source

fn set_ircorep_character_table(&mut self, chartab: Self::CharTab)

Sets the ircorep character table internally.

Provided Methods§

source

fn construct_ircorep_character_table(&mut self)

Constructs the ircorep character table for this group.

For each irrep in the unitary subgroup, the type of the ircorep it induces is determined using the Dimmock–Wheeler character test, then the ircorep’s characters in the unitary-represented part of the full group are determined to give a square character table.

§References
  • Bradley, C. J. & Davies, B. L. Magnetic Groups and Their Corepresentations. Rev. Mod. Phys. 40, 359–379 (1968).
  • Newmarch, J. D. & Golding, R. M. The character table for the corepresentations of magnetic groups. J. Math. Phys. 23, 695–704 (1982).
  • Newmarch, J. D. Some character theory for groups of linear and antilinear operators. J. Math. Phys. 24, 742–756 (1983).
§Panics

Panics if any calculated ircoreps are found to be invalid.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T, RowSymbol, UG> IrcorepCharTabConstruction for MagneticRepresentedGroup<T, UG, RowSymbol>
where RowSymbol: ReducibleLinearSpaceSymbol<Subspace = UG::RowSymbol> + Serialize + DeserializeOwned, T: Mul<Output = T> + Inv<Output = T> + Hash + Eq + Clone + Sync + Debug + FiniteOrder<Int = u32> + Pow<i32, Output = T>, for<'a, 'b> &'b T: Mul<&'a T, Output = T>, UG: Clone + GroupProperties<GroupElement = T> + ClassProperties<GroupElement = T> + CharacterProperties, <UG as ClassProperties>::ClassSymbol: Serialize + DeserializeOwned, <UG as CharacterProperties>::CharTab: Serialize + DeserializeOwned, CorepCharacterTable<RowSymbol, <UG as CharacterProperties>::CharTab>: Serialize + DeserializeOwned,