The Octet Molecular Representation Framework v0.8.2

net.sf.octet.model
Interface NonbondingShell

All Superinterfaces:
ElectronCollection, OrbitalCollection
All Known Implementing Classes:
BasicNonbondingShell

public interface NonbondingShell
extends ElectronCollection, OrbitalCollection

A representation of the concept of an atom's valence shell of nonbonding electrons. NonbondingShell enables the complete specification of electronic configuration. A NonbondingShell may contain any number of Electrons. These Electrons may in turn be distributed over any number of Orbitals, provided that no Orbital contains more than two Electrons.

NonbondingShell is suitable for the specification of any number of electronic configurations, including those of radicals, carbenes, and transition metal centers. Because electronic spin is explicity accounted for by the Electron interface, a variety of spin systems can also be accounted for, such as singlet versus triplet diradicals.

Electrons other than those in the valence shell are not specified by NonbondingShell, and these electrons can not currently be described using Octet. The number of core electrons for an Atom is available through ElectronCounter.countElectrons(Atom atom).

The number of Electrons contained within a NonbondingShell is included in the nonbonding electron count for an Atom as determined by Molecule.countNonbondingValenceElectrons(Atom atom).

The specification of a NonbondingShell is optional. Clients desiring to implement the Molecule interface with a lightweight alternative can consider using the NullNonbondingShell singleton.

Like every other Molecule component, NonbondingShell is immutable. Every invocation of an interface method will return the same result over the lifetime of the implementing object.

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

Methods inherited from interface net.sf.octet.collection.ElectronCollection
containsElectron, countElectrons, getElectron, getElectronIndex, iterateElectrons, toElectronArray
 
Methods inherited from interface net.sf.octet.collection.OrbitalCollection
containsOrbital, countOrbitals, getOrbital, getOrbitalIndex, iterateOrbitals, toOrbitalArray
 


The Octet Molecular Representation Framework v0.8.2