[]Struct lumol::BornMayerHuggins

pub struct BornMayerHuggins {
    pub a: f64,
    pub c: f64,
    pub d: f64,
    pub sigma: f64,
    pub rho: f64,

Born-Mayer-Huggins potential.

$$ V(x) = A \exp \left(\frac{\sigma - r}{\rho} \right) - \frac{C}{r^6} + \frac{D}{r^8} $$

where $A$, $C$ and $D$ are energetic constants; $\sigma$ and $\rho$ are length parameters.


let potential = BornMayerHuggins { a: 2.0, c: 1.0, d: 0.5, sigma: 1.5, rho: 5.3 };
assert_eq!(potential.energy(2.2), 1.7446409593340713);
assert_eq!(potential.force(2.2), 0.30992873382584607);


a: f64

Exponential term energetic constant

c: f64

1/r^6 term energetic constant

d: f64

1/r^8 term energetic constant

sigma: f64

Sphere diameter length constant

rho: f64

Width of the exponential term length constant

Trait Implementations

impl Clone for BornMayerHuggins

impl Copy for BornMayerHuggins

impl FromToml for BornMayerHuggins

impl PairPotential for BornMayerHuggins

impl Potential for BornMayerHuggins

Auto Trait Implementations

impl RefUnwindSafe for BornMayerHuggins

impl Send for BornMayerHuggins

impl Sync for BornMayerHuggins

impl Unpin for BornMayerHuggins

impl UnwindSafe for BornMayerHuggins

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T> Pointable for T

type Init = T

The type for initializers.

impl<P> Potential for P where
    P: 'static + Computation + Clone

impl<T> ToOwned for T where
    T: Clone

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,