[−]Struct lumol::Bonding
The basic building block for a topology. A Bonding
contains data about
the connectivity (bonds, angles, dihedrals) between particles in a single
molecule.
Implementations
impl Bonding
pub fn new(i: usize) -> Bonding
Create a new Bonding
containing only the atom i
pub fn size(&self) -> usize
Get the number of atoms in the molecule
pub fn start(&self) -> usize
Get the first atom of this molecule
pub fn end(&self) -> usize
Get the index of the first atom after this molecule
pub fn contains(&self, i: usize) -> bool
Does this molecule contains the particle i
pub fn merge_with(&mut self, other: Bonding)
Merge this molecule with other
. The first particle in other
should
be the particle just after the last one in self
.
pub fn translate_by(&mut self, delta: isize)
Translate all indexes in this molecule by delta
.
pub fn add_bond(&mut self, i: usize, j: usize)
Add a bond between the particles at indexes i
and j
. These particles
are assumed to be in the molecule
pub fn remove_particle(&mut self, i: usize)
Removes particle at index i
and any associated bonds, angle or
dihedral. This function also update the indexes for the
bonds/angles/dihedral by remove 1 to all the values > i
pub fn bonds(&self) -> &HashSet<Bond, RandomState>
Get the internal list of bonds
pub fn angles(&self) -> &HashSet<Angle, RandomState>
Get the internal list of angles
pub fn dihedrals(&self) -> &HashSet<Dihedral, RandomState>
Get the internal list of dihedrals
pub fn bond_distances(&self, i: usize, j: usize) -> BondDistances
Get the all the possible bond paths the particles i
and j
in this molecule
pub fn indexes(&self) -> Range<usize>
Get the indexes of the particles in this molecule. All atoms in the returned range are inside this molecule.
Trait Implementations
impl Clone for Bonding
pub fn clone(&self) -> Bonding
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for Bonding
Auto Trait Implementations
impl RefUnwindSafe for Bonding
impl Send for Bonding
impl Sync for Bonding
impl Unpin for Bonding
impl UnwindSafe for Bonding
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<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>,