mstk.topology.Bond

class mstk.topology.Bond(atom1, atom2, order=0)

A bond between two atoms.

Unlike BondTerm in ForceField, the atoms are not sorted in connectivity because the properties of atoms (name, type, etc…) are prone to changing. It’s better to sort them when compare bonds or match force field parameters.

Parameters:
  • atom1 (Atom) –

  • atom2 (Atom) –

  • order (int, Optional) –

atom1
Type:

Atom

atom2
Type:

Atom

order

The integer bond order. See Bond.Order

Type:

int

Methods

__init__(atom1, atom2[, order])

equals(other)

Check if two bonds represent the same connectivity.

evaluate([cell])

Evaluate the length of this bond

Attributes

atoms

The atoms forming this bond

is_aromatic

is_conjugated

is_drude

Whether or not this bond is a Drude dipole bond

is_rotatable

name

Name of this bond

order

rdbond

The rdkit.Chem.Bond object associated with this bond.

class Order

Enumerator of integer bond orders

The bonds in aromatic rings are in kekulized form.

UNSPECIFIED = 0

unspecified bond order

SINGLE = 1

order of single bond

DOUBLE = 2

order of double bond

TRIPLE = 3

order of triple bond

equals(other)

Check if two bonds represent the same connectivity. Return True if they contain the identical atoms, regardless of the sequence and bond order.

Parameters:

other (Bond) –

Returns:

equal

Return type:

bool

property order
property name

Name of this bond

Returns:

name

Return type:

str

property atoms

The atoms forming this bond

Returns:

atoms

Return type:

tuple of Atom

property is_drude

Whether or not this bond is a Drude dipole bond

Returns:

is

Return type:

bool

evaluate(cell=None)

Evaluate the length of this bond

Parameters:

box (UnitCell, Optional) –

Returns:

value

Return type:

float

property rdbond

The rdkit.Chem.Bond object associated with this bond.

Returns:

rdbond

Return type:

rdkit.Chem.Bond

property is_aromatic
property is_conjugated
property is_rotatable