[−]Struct lumol::CosineHarmonic
Cosine harmonic potential.
$$ V(x) = \frac{1}{2} k \left[\cos(x) - \cos(x_0) \right]^2 $$
where $x_0$ is the equilibrium value, and $k$ the elastic constant.
Examples
let potential = CosineHarmonic::new(/*k*/ 100.0, /*x0*/ 2.0); assert_eq!(potential.energy(2.0), 0.0); assert_eq!(potential.energy(3.0), 16.464942078100552); assert_eq!(potential.force(2.0), 0.0);
Implementations
impl CosineHarmonic
pub fn new(k: f64, x0: f64) -> CosineHarmonic
Create a new CosineHarmonic
potentials, with elastic constant of k
and equilibrium value of x0
Trait Implementations
impl AnglePotential for CosineHarmonic
impl Clone for CosineHarmonic
pub fn clone(&self) -> CosineHarmonic
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for CosineHarmonic
impl DihedralPotential for CosineHarmonic
impl FromToml for CosineHarmonic
impl Potential for CosineHarmonic
Auto Trait Implementations
impl RefUnwindSafe for CosineHarmonic
impl Send for CosineHarmonic
impl Sync for CosineHarmonic
impl Unpin for CosineHarmonic
impl UnwindSafe for CosineHarmonic
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<P> Potential for P where
P: 'static + Computation + Clone,
P: 'static + Computation + Clone,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,