AnyonModelImplementation

Trait AnyonModelImplementation 

Source
pub trait AnyonModelImplementation {
    // Required methods
    fn get_anyon_types(&self) -> Vec<AnyonType>;
    fn fusion_coefficients(
        &self,
        a: &AnyonType,
        b: &AnyonType,
        c: &AnyonType,
    ) -> Complex64;
    fn braiding_matrix(&self, a: &AnyonType, b: &AnyonType) -> Array2<Complex64>;
    fn f_matrix(
        &self,
        a: &AnyonType,
        b: &AnyonType,
        c: &AnyonType,
        d: &AnyonType,
    ) -> Array2<Complex64>;
    fn is_abelian(&self) -> bool;
    fn name(&self) -> &str;
}
Expand description

Trait for anyon model implementations

Required Methods§

Source

fn get_anyon_types(&self) -> Vec<AnyonType>

Get anyon types for this model

Source

fn fusion_coefficients( &self, a: &AnyonType, b: &AnyonType, c: &AnyonType, ) -> Complex64

Compute fusion coefficients

Source

fn braiding_matrix(&self, a: &AnyonType, b: &AnyonType) -> Array2<Complex64>

Compute braiding matrix

Source

fn f_matrix( &self, a: &AnyonType, b: &AnyonType, c: &AnyonType, d: &AnyonType, ) -> Array2<Complex64>

Compute F-matrix

Source

fn is_abelian(&self) -> bool

Check if model is Abelian

Source

fn name(&self) -> &str

Get model name

Implementors§