The Octet Molecular Representation Framework v0.8.2

net.sf.octet.model
Interface Molecule

All Superinterfaces:
AtomCollection, AtomGraph, AtomPairCollection, BondingSystemCollection
All Known Implementing Classes:
MoleculeDecorator

public interface Molecule
extends AtomGraph, BondingSystemCollection

A representation of the chemical concept of a molecule. The purpose of the Molecule interface is to define behaviors relating to three fundamental molecular properties: constitution, configuration, and conformation.

Molecules are immutable. The methods defined in this interface can be expected to return the same results throughout the lifetime of any object implementing Molecule.

Author:
Richard Apodaca
See Also:
"Immutable Pattern (Grand98)"

Method Summary
 int countBondingSystems(Atom atom)
          Returns the number of BondingSystems in which the specified Atom particpates.
 int countImplicitHydrogens(Atom atom)
          Returns the number of implicit hydrogens associated with atom.
 int countNonbondingValenceElectrons(Atom atom)
          Returns the total number of nonbonding valence electrons associeated with atom.
 Configuration getConfiguration(Atom atom)
          Returns the Configuration of the specified Atom.
 Conformation getConformation()
          Returns the Conformation of this Molecule.
 NonbondingShell getNonbondingShell(Atom atom)
          Returns the NonbondingShell of the specified Atom.
 BondingSystemIterator iterateBondingSystems(Atom atom)
          Returns an iterator over all BondingSystems in which the specified Atom participates.
 
Methods inherited from interface net.sf.octet.model.AtomGraph
countNeighbors, iterateNeighbors
 
Methods inherited from interface net.sf.octet.collection.AtomCollection
containsAtom, countAtoms, getAtom, getAtomIndex, iterateAtoms, toAtomArray
 
Methods inherited from interface net.sf.octet.collection.AtomPairCollection
containsAtomPair, containsAtomPair, countAtomPairs, getAtomPair, getAtomPair, getAtomPairIndex, iterateAtomPairs, toAtomPairArray
 
Methods inherited from interface net.sf.octet.collection.BondingSystemCollection
containsBondingSystem, countBondingSystems, getBondingSystem, getBondingSystemIndex, iterateBondingSystems, toBondingSystemArray
 

Method Detail

iterateBondingSystems

public BondingSystemIterator iterateBondingSystems(Atom atom)
Returns an iterator over all BondingSystems in which the specified Atom participates.

Specified by:
iterateBondingSystems in interface BondingSystemCollection
Parameters:
atom - the Atom
Returns:
an iterator over all BondingSystems in which the specified Atom participates
Throws:
NoSuchAtomException - if the specified Atom can not be found in this Molecule

countBondingSystems

public int countBondingSystems(Atom atom)
Returns the number of BondingSystems in which the specified Atom particpates.

Specified by:
countBondingSystems in interface BondingSystemCollection
Parameters:
atom - the Atom
Returns:
the number of BondingSystems in which the specified Atom particpates
Throws:
NoSuchAtomException - if the specified Atom can not be found in this Molecule

getConfiguration

public Configuration getConfiguration(Atom atom)
Returns the Configuration of the specified Atom. Configuration refers to the spatial arrangement of neighboring Atoms around a central Atom that do not result from rotation about an AtomPair.

Returns:
the Configuration of this Atom
Throws:
NoSuchAtomException - if the specified Atom can not be found in this Molecule

getConformation

public Conformation getConformation()
Returns the Conformation of this Molecule.

Returns:
the Conformation of this Molecule

getNonbondingShell

public NonbondingShell getNonbondingShell(Atom atom)
Returns the NonbondingShell of the specified Atom.

Parameters:
atom - the Atom
Returns:
the NonbondingShell of atom
Throws:
NoSuchAtomException - if the specified Atom can not be found in this Molecule

countImplicitHydrogens

public int countImplicitHydrogens(Atom atom)
Returns the number of implicit hydrogens associated with atom.

Parameters:
atom - the Atom
Returns:
the number of implicit hydrogens associated with atom
Throws:
NoSuchAtomException - if the specified Atom can not be found in this Molecule

countNonbondingValenceElectrons

public int countNonbondingValenceElectrons(Atom atom)
Returns the total number of nonbonding valence electrons associeated with atom. This number includes any electrons contained in the NonbondingShell of atom.

Parameters:
atom - the Atom
Returns:
the total number of nonbonding valence electrons associeated with atom
Throws:
NoSuchAtomException - if the specified Atom can not be found in this Molecule

The Octet Molecular Representation Framework v0.8.2