Trait StructureConstraint

Source
pub trait StructureConstraint {
    // Required methods
    fn n_coefficient_matrices(&self) -> usize;
    fn n_explicit_comps_per_coefficient_matrix(&self) -> usize;
    fn n_implicit_comps_per_coefficient_matrix(&self) -> usize;

    // Provided methods
    fn n_comps(&self) -> usize { ... }
    fn implicit_factor(&self) -> Result<usize, Error> { ... }
}
Expand description

Trait for defining the spin-spatial structure of the coefficient matrices.

Required Methods§

Source

fn n_coefficient_matrices(&self) -> usize

The total number of coefficient matrices expected in this constraint.

Source

fn n_explicit_comps_per_coefficient_matrix(&self) -> usize

The number of isostructural components explicitly specified by each coefficient matrix. The basis functions described by any accompanying basis angular order information will pertain to any one of the isostructural components.

Source

fn n_implicit_comps_per_coefficient_matrix(&self) -> usize

The number of isostructural components implicitly specified by each coefficient matrix.

Provided Methods§

Source

fn n_comps(&self) -> usize

The total number of isostructural components given by the product of Self::n_coefficient_matrices and Self::n_implicit_comps_per_coefficient_matrix.

Source

fn implicit_factor(&self) -> Result<usize, Error>

The implicit factor given by the ratio between Self::n_implicit_comps_per_coefficient_matrix and Self::n_explicit_comps_per_coefficient_matrix. It will be checked that this ratio yields an integer.

Implementors§