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§
Sourcefn get_anyon_types(&self) -> Vec<AnyonType>
fn get_anyon_types(&self) -> Vec<AnyonType>
Get anyon types for this model
Sourcefn fusion_coefficients(
&self,
a: &AnyonType,
b: &AnyonType,
c: &AnyonType,
) -> Complex64
fn fusion_coefficients( &self, a: &AnyonType, b: &AnyonType, c: &AnyonType, ) -> Complex64
Compute fusion coefficients
Sourcefn braiding_matrix(&self, a: &AnyonType, b: &AnyonType) -> Array2<Complex64>
fn braiding_matrix(&self, a: &AnyonType, b: &AnyonType) -> Array2<Complex64>
Compute braiding matrix
Sourcefn f_matrix(
&self,
a: &AnyonType,
b: &AnyonType,
c: &AnyonType,
d: &AnyonType,
) -> Array2<Complex64>
fn f_matrix( &self, a: &AnyonType, b: &AnyonType, c: &AnyonType, d: &AnyonType, ) -> Array2<Complex64>
Compute F-matrix
Sourcefn is_abelian(&self) -> bool
fn is_abelian(&self) -> bool
Check if model is Abelian