openforcefield.topology.Atom

class openforcefield.topology.Atom(atomic_number, formal_charge, is_aromatic, name=None, molecule=None, stereochemistry=None)[source]

A particle representing a chemical atom.

Note that non-chemical virtual sites are represented by the VirtualSite object.

Warning

This API is experimental and subject to change.

Attributes
atomic_number

The integer atomic number of the atom.

bonded_atoms

The list of Atom objects this atom is involved in bonds with

bonds

The list of Bond objects this atom is involved in.

element

The element name

formal_charge

The atom’s formal charge

is_aromatic

The atom’s is_aromatic flag

mass

The standard atomic weight (abundance-weighted isotopic mass) of the atomic site.

molecule

The Molecule this atom is part of.

molecule_atom_index

The index of this Atom within the the list of atoms in Molecules.

molecule_particle_index

The index of this Atom within the the list of particles in the parent Molecule.

name

The name of this atom, if any

partial_charge

The partial charge of the atom, if any.

stereochemistry

The atom’s stereochemistry (if defined, otherwise None)

virtual_sites

The list of VirtualSite objects this atom is involved in.

Methods

add_bond(bond)

Adds a bond that this atom is involved in .

add_virtual_site(vsite)

Adds a bond that this atom is involved in .

from_bson(serialized)

Instantiate an object from a BSON serialized representation.

from_dict(atom_dict)

Create an Atom from a dict representation.

from_json(serialized)

Instantiate an object from a JSON serialized representation.

from_messagepack(serialized)

Instantiate an object from a MessagePack serialized representation.

from_pickle(serialized)

Instantiate an object from a pickle serialized representation.

from_toml(serialized)

Instantiate an object from a TOML serialized representation.

from_xml(serialized)

Instantiate an object from an XML serialized representation.

from_yaml(serialized)

Instantiate from a YAML serialized representation.

is_bonded_to(atom2)

Determine whether this atom is bound to another atom

to_bson()

Return a BSON serialized representation.

to_dict()

Return a dict representation of the atom.

to_json([indent])

Return a JSON serialized representation.

to_messagepack()

Return a MessagePack representation.

to_pickle()

Return a pickle serialized representation.

to_toml()

Return a TOML serialized representation.

to_xml([indent])

Return an XML representation.

to_yaml()

Return a YAML serialized representation.

__init__(atomic_number, formal_charge, is_aromatic, name=None, molecule=None, stereochemistry=None)[source]

Create an immutable Atom object.

Object is serializable and immutable.

Parameters
atomic_numberint

Atomic number of the atom

formal_chargeint or simtk.unit.Quantity-wrapped int with dimension “charge”

Formal charge of the atom

is_aromaticbool

If True, atom is aromatic; if False, not aromatic

stereochemistrystr, optional, default=None

Either ‘R’ or ‘S’ for specified stereochemistry, or None for ambiguous stereochemistry

namestr, optional, default=None

An optional name to be associated with the atom

Examples

Create a non-aromatic carbon atom

>>> atom = Atom(6, 0, False)

Create a chiral carbon atom

>>> atom = Atom(6, 0, False, stereochemistry='R', name='CT')

Methods

__init__(atomic_number, formal_charge, …)

Create an immutable Atom object.

add_bond(bond)

Adds a bond that this atom is involved in .

add_virtual_site(vsite)

Adds a bond that this atom is involved in .

from_bson(serialized)

Instantiate an object from a BSON serialized representation.

from_dict(atom_dict)

Create an Atom from a dict representation.

from_json(serialized)

Instantiate an object from a JSON serialized representation.

from_messagepack(serialized)

Instantiate an object from a MessagePack serialized representation.

from_pickle(serialized)

Instantiate an object from a pickle serialized representation.

from_toml(serialized)

Instantiate an object from a TOML serialized representation.

from_xml(serialized)

Instantiate an object from an XML serialized representation.

from_yaml(serialized)

Instantiate from a YAML serialized representation.

is_bonded_to(atom2)

Determine whether this atom is bound to another atom

to_bson()

Return a BSON serialized representation.

to_dict()

Return a dict representation of the atom.

to_json([indent])

Return a JSON serialized representation.

to_messagepack()

Return a MessagePack representation.

to_pickle()

Return a pickle serialized representation.

to_toml()

Return a TOML serialized representation.

to_xml([indent])

Return an XML representation.

to_yaml()

Return a YAML serialized representation.

Attributes

atomic_number

The integer atomic number of the atom.

bonded_atoms

The list of Atom objects this atom is involved in bonds with

bonds

The list of Bond objects this atom is involved in.

element

The element name

formal_charge

The atom’s formal charge

is_aromatic

The atom’s is_aromatic flag

mass

The standard atomic weight (abundance-weighted isotopic mass) of the atomic site.

molecule

The Molecule this atom is part of.

molecule_atom_index

The index of this Atom within the the list of atoms in Molecules.

molecule_particle_index

The index of this Atom within the the list of particles in the parent Molecule.

name

The name of this atom, if any

partial_charge

The partial charge of the atom, if any.

stereochemistry

The atom’s stereochemistry (if defined, otherwise None)

virtual_sites

The list of VirtualSite objects this atom is involved in.