Atom type

type Atom

An Atom is a particle in the current Frame.

An atom stores the following atomic properties:
  • atom name
  • atom type
  • atom mass
  • atom charge

The atom name is usually an unique identifier (“H1”, “C_a”) while the atom type will be shared among all particles of the same type: “H”, “Ow”, “CH3”.

function Atom(name::String)
Create an atom with the given name and set the atom type to be the same as name.
function Atom(frame::Frame, index::Integer)
Get a copy of the atom at the given index from a frame.
function Atom(topology::Topology, index::Integer)
Get a copy of the atom at the given index from a topology.
function deepcopy(atom::Atom)
Make a deep copy of an atom.
function mass(atom::Atom)
Get the mass of an atom in atomic mass units.
function set_mass!(atom::Atom, mass)

Set the mass of an atom to mass.

The mass must be in atomic mass units.

function charge(atom::Atom)
Get the charge of an atom in number of the electron charge e.
function set_charge!(atom::Atom, charge)

Set the charge of an atom to charge.

The charge must be in number of the electron charge e.

function name(atom::Atom)
Get the name of an atom.
function set_name!(atom::Atom, name::String)
Set the name of an atom to name.
function fullname(atom::Atom)

Get the full name of an atom from the atom type.

For example, the full name of an atom with type “He” is “Helium”.

function vdw_radius(atom::Atom)

Get the van der Waals radius of an atom from the atom type.

If the radius can not be found, this function returns 0.

function covalent_radius(atom::Atom)

Get the covalent radius of an atom from the atom type.

If the radius can not be found, returns 0.

function atomic_number(atom::Atom)

Get the atomic number of an atom from the atom type.

If the atomic number can not be found, returns 0.

function type(atom::Atom)
Get the type of an atom.
function set_type!(atom::Atom, type::String)
Set the type of an atom to type.
function property(atom::Atom, name::String)
Get a named property for the given atom.
function set_property!(atom::Atom, name::String, value)
Set a named property for the given atom.
function properties_count(atom::Atom)
Get the number of properties associated with an atom.
function list_properties(atom::Atom)
Get the names of all properties associated with an atom.