CentrosymmKernel

Trait CentrosymmKernel 

Source
pub trait CentrosymmKernel: AbstractKernel {
    // Required methods
    fn compute_reduced<T: CustomNumeric + Copy + Debug>(
        &self,
        x: T,
        y: T,
        symmetry: SymmetryType,
    ) -> T;
    fn lambda(&self) -> f64;
}
Expand description

Trait for centrosymmetric kernels

Centrosymmetric kernels satisfy K(x, y) = K(-x, -y) and can be decomposed into even and odd components for efficient computation.

Required Methods§

Source

fn compute_reduced<T: CustomNumeric + Copy + Debug>( &self, x: T, y: T, symmetry: SymmetryType, ) -> T

Compute the reduced kernel value

K_red(x, y) = K(x, y) + sign * K(x, -y) where sign = 1 for even symmetry and sign = -1 for odd symmetry

Source

fn lambda(&self) -> f64

Get the cutoff parameter Λ (lambda)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§