[]Struct lumol::sys::Molecule

pub struct Molecule { /* fields omitted */ }

A Molecule associate some particles bonded together.

Molecule implement Deref to a Bonding struct, to give read access to all the bonds. It does not implement DerefMut, adding new bonds should be done through Molecule::add_bond().

Methods

impl Molecule

Create a new Molecule containing a single particle

Borrow self as a MoleculeRef.

Mutablely borrow self as a MoleculeRefMut.

Get access to the particles in this molecule

Get mutable access to the particles in this molecule

Add a new particle in this molecule, bonded to an other particle in the molecule.

Add bond between particles at indexes i and j in this molecule.

Panics

If i or j are not in this molecule.

impl<'a> Molecule

Return the center-of-mass of a molecule

Warning

This function does not check for the particles' positions' nearest images. To use this function properly, make sure that all particles of the molecule are adjacent.

Get a hash of this molecule. This is a hash of the particles names (in order), and the set of bonds in the molecule. This means that two molecules will have the same type if and only if they contains the same atoms and the same bonds, in the same order.

impl<'a> Molecule

Move all particles of a molecule such that the molecules center-of-mass position resides inside the simulation cell.

Note

If the CellShape is Infinite there are no changes to the positions.

Methods from Deref<Target = Bonding>

Get the number of atoms in the molecule

Get the first atom of this molecule

Get the index of the first atom after this molecule

Does this molecule contains the particle i

Get the internal list of bonds

Get the internal list of angles

Get the internal list of dihedrals

Get the all the possible bond paths the particles i and j in this molecule

Important traits for Range<A>

Get the indexes of the particles in this molecule. All atoms in the returned range are inside this molecule.

Trait Implementations

impl Deref for Molecule

The resulting type after dereferencing.

Dereferences the value.

impl Debug for Molecule

Formats the value using the given formatter. Read more

impl Clone for Molecule

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Auto Trait Implementations

impl Send for Molecule

impl Sync for Molecule

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