pub trait AnyonModel: Send + Sync {
// Required methods
fn anyon_types(&self) -> &[AnyonType];
fn quantum_dimension(&self, anyon: AnyonType) -> f64;
fn topological_spin(&self, anyon: AnyonType) -> Complex64;
fn can_fuse(&self, a: AnyonType, b: AnyonType, c: AnyonType) -> bool;
fn fusion_multiplicity(
&self,
a: AnyonType,
b: AnyonType,
c: AnyonType,
) -> u32;
fn f_symbol(
&self,
a: AnyonType,
b: AnyonType,
c: AnyonType,
d: AnyonType,
e: AnyonType,
f: AnyonType,
) -> Complex64;
fn r_symbol(&self, a: AnyonType, b: AnyonType, c: AnyonType) -> Complex64;
fn name(&self) -> &str;
// Provided methods
fn is_modular(&self) -> bool { ... }
fn total_quantum_dimension(&self) -> f64 { ... }
}
Expand description
Anyon model definition
Required Methods§
Sourcefn anyon_types(&self) -> &[AnyonType]
fn anyon_types(&self) -> &[AnyonType]
Get all anyon types in this model
Sourcefn quantum_dimension(&self, anyon: AnyonType) -> f64
fn quantum_dimension(&self, anyon: AnyonType) -> f64
Get quantum dimension of an anyon
Sourcefn topological_spin(&self, anyon: AnyonType) -> Complex64
fn topological_spin(&self, anyon: AnyonType) -> Complex64
Get topological spin of an anyon
Sourcefn can_fuse(&self, a: AnyonType, b: AnyonType, c: AnyonType) -> bool
fn can_fuse(&self, a: AnyonType, b: AnyonType, c: AnyonType) -> bool
Check if two anyons can fuse into a third
Sourcefn fusion_multiplicity(&self, a: AnyonType, b: AnyonType, c: AnyonType) -> u32
fn fusion_multiplicity(&self, a: AnyonType, b: AnyonType, c: AnyonType) -> u32
Get fusion rules N^c_{ab}
Sourcefn f_symbol(
&self,
a: AnyonType,
b: AnyonType,
c: AnyonType,
d: AnyonType,
e: AnyonType,
f: AnyonType,
) -> Complex64
fn f_symbol( &self, a: AnyonType, b: AnyonType, c: AnyonType, d: AnyonType, e: AnyonType, f: AnyonType, ) -> Complex64
Get F-symbols F^{abc}_d
Provided Methods§
Sourcefn is_modular(&self) -> bool
fn is_modular(&self) -> bool
Check if the model is modular (all anyons have non-zero quantum dimension)
Sourcefn total_quantum_dimension(&self) -> f64
fn total_quantum_dimension(&self) -> f64
Get total quantum dimension