[]Struct lumol::energy::Morse

pub struct Morse {
    pub a: f64,
    pub x0: f64,
    pub depth: f64,
}

Morse potential

$$ V(x) = \text{depth} * \left( 1 - \exp(a (x_0 - x))^2 \right)$$

where the parameters are $x_0$ for the equilibrium value, depth for the well depth, and $a$ for the well width.

Examples

let potential = Morse { a: 2.0, x0: 1.3, depth: 4.0 };
assert_eq!(potential.energy(1.0), 2.703517287822119);
assert_eq!(potential.force(1.0), -37.12187076378477);

Fields

Exponential term width value

Equilibrium value

Well depth value

Trait Implementations

impl DihedralPotential for Morse

impl BondPotential for Morse

Compute the virial contribution corresponding to the distance r between the particles. Read more

impl AnglePotential for Morse

impl PairPotential for Morse

Compute the tail correction to the energy for the given cutoff. Read more

Compute the tail correction to the virial for the given cutoff. Read more

Compute the virial contribution corresponding to the distance r between the particles. Read more

impl Potential for Morse

Get the energy corresponding to the variable x

Get the force norm corresponding to the variable x

impl Copy for Morse

impl Clone for Morse

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl FromToml for Morse

Do the conversion from table to Self.

Auto Trait Implementations

impl Send for Morse

impl Sync for Morse

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T> From for T
[src]

Performs the conversion.

impl<T, U> Into for T where
    U: From<T>, 
[src]

Performs the conversion.

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> Borrow for T where
    T: ?Sized
[src]

Important traits for &'a mut R

Immutably borrows from an owned value. Read more

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> BorrowMut for T where
    T: ?Sized
[src]

Important traits for &'a mut R

Mutably borrows from an owned value. Read more

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

🔬 This is a nightly-only experimental API. (get_type_id)

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more

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

Get the energy corresponding to the variable x

Get the force norm corresponding to the variable x