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.
Todo
Atom
objects be immutable or mutable?charge
), integral quantities (such as id
or serial
index in a PDB file),
or string labels (such as Lennard-Jones types)?Todo
Allow atoms to have associated properties.
Warning
This API is experimental and subject to change.
Attributes: |
|
---|
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.
Todo
Use attrs to validate?
Todo
We can add setters if we need to.
Parameters: |
|
---|
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. |
add_bond
(bond)[source]¶Adds a bond that this atom is involved in .. todo :: Is this how we want to keep records?
Parameters: |
|
---|
add_virtual_site
(vsite)[source]¶Adds a bond that this atom is involved in .. todo :: Is this how we want to keep records?
Parameters: |
|
---|
formal_charge
¶The atom’s formal charge
partial_charge
¶The partial charge of the atom, if any.
Returns: |
|
---|
is_aromatic
¶The atom’s is_aromatic flag
stereochemistry
¶The atom’s stereochemistry (if defined, otherwise None)
element
¶The element name
atomic_number
¶The integer atomic number of the atom.
mass
¶The standard atomic weight (abundance-weighted isotopic mass) of the atomic site.
Todo
Should we discriminate between standard atomic weight and most abundant isotopic mass?
TODO (from jeff): Are there atoms that have different chemical properties based on their isotopes?
name
¶The name of this atom, if any
bonds
¶The list of Bond
objects this atom is involved in.
bonded_atoms
¶The list of Atom
objects this atom is involved in bonds with
is_bonded_to
(atom2)[source]¶Determine whether this atom is bound to another atom
Parameters: |
|
---|---|
Returns: |
|
virtual_sites
¶The list of VirtualSite
objects this atom is involved in.
molecule_atom_index
¶The index of this Atom within the the list of atoms in Molecules
.
Note that this can be different from molecule_particle_index
.
molecule_particle_index
¶The index of this Atom within the the list of particles in the parent Molecule
.
Note that this can be different from molecule_atom_index
.
from_bson
(serialized)¶Instantiate an object from a BSON serialized representation.
Specification: http://bsonspec.org/
Parameters: |
|
---|---|
Returns: |
|
from_json
(serialized)¶Instantiate an object from a JSON serialized representation.
Specification: https://www.json.org/
Parameters: |
|
---|---|
Returns: |
|
from_messagepack
(serialized)¶Instantiate an object from a MessagePack serialized representation.
Specification: https://msgpack.org/index.html
Parameters: |
|
---|---|
Returns: |
|
from_pickle
(serialized)¶Instantiate an object from a pickle serialized representation.
Warning
This is not recommended for safe, stable storage since the pickle specification may change between Python versions.
Parameters: |
|
---|---|
Returns: |
|
from_toml
(serialized)¶Instantiate an object from a TOML serialized representation.
Specification: https://github.com/toml-lang/toml
Parameters: |
|
---|---|
Returns: |
|
from_xml
(serialized)¶Instantiate an object from an XML serialized representation.
Specification: https://www.w3.org/XML/
Parameters: |
|
---|---|
Returns: |
|
from_yaml
(serialized)¶Instantiate from a YAML serialized representation.
Specification: http://yaml.org/
Parameters: |
|
---|---|
Returns: |
|
molecule
¶The Molecule
this atom is part of.
Todo
Molecule
for each molecule type in the system,or if we have multiple copies of the same molecule, should we have multiple ``Molecule``s?
to_bson
()¶Return a BSON serialized representation.
Specification: http://bsonspec.org/
Returns: |
|
---|
to_json
(indent=None)¶Return a JSON serialized representation.
Specification: https://www.json.org/
Parameters: |
|
---|---|
Returns: |
|
to_messagepack
()¶Return a MessagePack representation.
Specification: https://msgpack.org/index.html
Returns: |
|
---|
to_pickle
()¶Return a pickle serialized representation.
Warning
This is not recommended for safe, stable storage since the pickle specification may change between Python versions.
Returns: |
|
---|
to_toml
()¶Return a TOML serialized representation.
Specification: https://github.com/toml-lang/toml
Returns: |
|
---|
to_xml
(indent=2)¶Return an XML representation.
Specification: https://www.w3.org/XML/
Parameters: |
|
---|---|
Returns: |
|
to_yaml
()¶Return a YAML serialized representation.
Specification: http://yaml.org/
Returns: |
|
---|