|
The Octet Molecular Representation Framework v0.8.2 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.sf.octet.builder.AbstractRepresentationBuilder
An abstract implementation of the RepresentationBuilder interface. Use
AbstractRepresentationBuidler as a starting point for more specific molecular
representation builders. To do so, extend AbstractRepresentationBuilder, provide
overrides for the createAtom and createAtomPair methods, and
access the builder's state with getAtomTemplates(), getAtomPairs(),
getAtoms, and getBondingSystemTemplates.
| Nested Class Summary | |
protected class |
AbstractRepresentationBuilder.AtomTemplate
A template for the construction of represenation-specific atoms. |
protected class |
AbstractRepresentationBuilder.BondingSystemTemplate
A template for the construction of represenation-specific bonding systems. |
protected class |
AbstractRepresentationBuilder.ConfigurationTemplate
A template for the construction of represenation-specific configurations. |
protected class |
AbstractRepresentationBuilder.ConformationTemplate
A template for the construction of represenation-specific conformations. |
protected class |
AbstractRepresentationBuilder.GammaSequenceTemplate
A template for the construction of represenation-specific gamma sequences. |
protected class |
AbstractRepresentationBuilder.HalfPlaneTemplate
A template for the construction of represenation-specific half planes. |
protected class |
AbstractRepresentationBuilder.OrbitalTemplate
A template for the construction of represenation-specific orbitals. |
protected class |
AbstractRepresentationBuilder.PaddleWheelTemplate
A template for the construction of represenation-specific paddle wheels. |
| Constructor Summary | |
protected |
AbstractRepresentationBuilder()
Default constructor. |
| Method Summary | |
AtomProxy |
addAtom(IsotopicDistribution distribution)
Returns an AtomProxy representing an Atom containing
the specified IsotopicDistribution. |
BondingSystemProxy |
addBondingSystem()
Creates a new BondingSystem and adds it to the current representation. |
ConfigurationProxy |
addConfiguration(AtomProxy atom)
Returns a proxy for a Configuration to be associated with atom. |
void |
addElectron(OrbitalProxy orbital,
boolean spinUp)
Populates orbital with one electron of spin spinUp. |
GammaSequenceProxy |
addGammaSequence(AtomProxy start)
Creates a new GammaSequence beginning at start and adds
it to the representation under construction. |
HalfPlaneProxy |
addHalfPlane(ConfigurationProxy configuration,
AtomProxy neighbor)
Returns a proxy for a HalfPlane to be associated with configuration
and the specified neighboring atom neighbor. |
HalfPlaneProxy |
addHalfPlane(GammaSequenceProxy sequence)
Returns a proxy for a HalfPlane to be associated with sequence. |
void |
addHydrogens(AtomProxy atom,
int hydrogenCount)
Modifies by hydrogenCount the number of virtual hydrogen atoms
associated with atom. |
OrbitalProxy |
addOrbital(AtomProxy atom)
Creates a new, empty, nonbonding Orbital localized on atom. |
void |
connect(AtomProxy source,
AtomProxy target,
BondingSystemProxy system)
Connects source with target within the
BondingSystem denoted by system. |
void |
connect(AtomProxy atom,
GammaSequenceProxy sequence)
Adds atom to sequence. |
void |
constrainCenter(AtomProxy atom,
HalfPlaneProxy plane)
Constrains atom to lie on the horizontal line bisecting plane. |
void |
constrainLower(AtomProxy atom,
HalfPlaneProxy plane)
Constrains atom to lie within the lower portion of the HalfPlane
represented by plane. |
void |
constrainUpper(AtomProxy atom,
HalfPlaneProxy plane)
Constrains atom to lie within the upper portion of the HalfPlane
represented by plane. |
protected abstract Atom |
createAtom(IsotopicDistribution distribution)
Override this method to generate a specialized Atom implementation from
distribution. |
protected abstract AtomPair |
createAtomPair(Atom source,
Atom target)
Override this method to generate a specialized AtomPair implementation from
source and target. |
void |
flush()
Clears the instruction queue. |
protected java.util.List |
getAtomPairs()
Returns an unmodifiable List of AtomPairs currently used by this
AbstractRepresenationBuilder. |
protected java.util.List |
getAtoms()
Returns an unmodifiable List of Atoms currently used by this
AbstractRepresenationBuilder. |
protected java.util.List |
getAtomTemplates()
Returns an unmodifiable List of AtomTemplates currently used by this
AbstractRepresenationBuilder. |
protected java.util.List |
getBondingSystemTemplates()
Returns an unmodifiable List of BondingSystemTemplates currently used by this
AbstractRepresenationBuilder. |
protected AbstractRepresentationBuilder.ConformationTemplate |
getConformationTemplate()
Returns the ConformationTemplate currently used by this
AbstractRepresenationBuilder. |
void |
ionizeAntibondingElectrons(BondingSystemProxy system,
int electronCount)
Modifies by electronCount the number of antibonding electrons
belonging to system. |
void |
ionizeAtom(AtomProxy atom,
int electronCount)
Modifies by electronCount the number of electrons
belonging to atom. |
void |
ionizeBondingElectrons(BondingSystemProxy system,
int electronCount)
Modifies by electronCount the number of bonding electrons
belonging to system. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
protected AbstractRepresentationBuilder()
| Method Detail |
public void flush()
RepresentationBuilderRepresentationBuilder to a state in which it is ready to start
building a new representation.
flush in interface RepresentationBuilderpublic BondingSystemProxy addBondingSystem()
RepresentationBuilderBondingSystem and adds it to the current representation.
addBondingSystem in interface RepresentationBuilder
public void connect(AtomProxy source,
AtomProxy target,
BondingSystemProxy system)
RepresentationBuildersource with target within the
BondingSystem denoted by system. The designation
of source and target are not be meaningful.
connect produces bonding arrangements suitable for extended pi-systems,
organometallic complexes, unoccupied molecular orbitals, and purely
electrostatic interactions.
connect in interface RepresentationBuildersource - the proxy for the source atomtarget - the proxy for the target atomsystem - the proxy for the bonding system
public void ionizeAtom(AtomProxy atom,
int electronCount)
RepresentationBuilderelectronCount the number of electrons
belonging to atom. Positive values of
electronCount are interpreted as oxidation (electron removal);
negative values are interpreded as reduction (electron addition).
ionizeAtom in interface RepresentationBuilderatom - the proxy for the atom to ionizeelectronCount - the number of electrons, positive for oxidation and
negative for reduction
public void addHydrogens(AtomProxy atom,
int hydrogenCount)
RepresentationBuilder
Modifies by hydrogenCount the number of virtual hydrogen atoms
associated with atom. Positive values of hydrogenCount
are interpreted as addition of virtual hydrogens; negative values
are interpreted as removal of virtual hydrogens. Invocation of
addHydrogens also modifies by -hydrogenCount
the ionization state of atom.
The intent
of the addHydrogens method is enable hydrogen-suppressed graphs
to be used within Octet, but to remove the ambiguity associated with automatic hydrogen
atom perception. Hydrogen atoms can be explicity placed
into molecular graphs with addAtom. Conversely, hydrogen-suppressed molecular
graphs can also be generated by using addHydrogens. The same representation
may mix both graph-based hydrogens and virtual hydrogens.
Open valencies (i.e. unpaired electrons) not satisfied either through explicit hydrogen addition
via addAtom or association with addHydrogens will be interpreted
as nonbonding electrons. It is the responsibility of clients to ensure that the correct
number of hydrogens is associated with each atom in the molecular representations they
construct with RepresentationBuilder.
addHydrogens in interface RepresentationBuilderatom - the proxy for the atom that will be modifiedhydrogenCount - the number of implicit hydrogens, positive values for
additions, and negative values for removal
public void ionizeBondingElectrons(BondingSystemProxy system,
int electronCount)
RepresentationBuilderelectronCount the number of bonding electrons
belonging to system. Positive values of
electronCount are interpreted as oxidation (electron removal);
negative values are interpreded as reduction (electron addition).
ionizeBondingElectrons in interface RepresentationBuildersystem - the proxy for the BondingSystem to ionizeelectronCount - the number of electrons, positive for oxidation and
negative for reduction
public void ionizeAntibondingElectrons(BondingSystemProxy system,
int electronCount)
RepresentationBuilderelectronCount the number of antibonding electrons
belonging to system. Positive values of
electronCount are interpreted as oxidation (electron removal);
negative values are interpreded as reduction (electron addition).
ionizeAntibondingElectrons in interface RepresentationBuildersystem - the proxy for the BondingSystem to ionizeelectronCount - the number of electrons, positive for oxidation and
negative for reductionpublic ConfigurationProxy addConfiguration(AtomProxy atom)
RepresentationBuilderatom.
addConfiguration in interface RepresentationBuilderatom - the proxy to the Atom for which a Configuration should be created
atom
public HalfPlaneProxy addHalfPlane(ConfigurationProxy configuration,
AtomProxy neighbor)
RepresentationBuilderconfiguration
and the specified neighboring atom neighbor. The order in which
HalfPlanes are added will result in a clockwise distribution about the axis defined
from the atom associated with configuration to neighbor.
addHalfPlane in interface RepresentationBuilderconfiguration - the Configurationneighbor - the neighbor of the Atom associated with configuration
configuration
and the specified neighboring atom neighbor
public void constrainUpper(AtomProxy atom,
HalfPlaneProxy plane)
RepresentationBuilderatom to lie within the upper portion of the HalfPlane
represented by plane. The order in which Atoms are added defines
the ordering in the resulting HalfPlane; Atoms added first
are considered closer to the horizontal line bisecting plane.
constrainUpper in interface RepresentationBuilderatom - the proxy to the Atom to constrainplane - the plane in which to constrain atom
public void constrainLower(AtomProxy atom,
HalfPlaneProxy plane)
RepresentationBuilderatom to lie within the lower portion of the HalfPlane
represented by plane. The order in which Atoms are added defines
the ordering in the resulting HalfPlane; Atoms added first
are considered closer to the horizontal line bisecting plane.
constrainLower in interface RepresentationBuilderatom - the proxy to the Atom to constrainplane - the plane in which to constrain atom
public void constrainCenter(AtomProxy atom,
HalfPlaneProxy plane)
RepresentationBuilderatom to lie on the horizontal line bisecting plane.
constrainCenter in interface RepresentationBuilderatom - the proxy to the Atom to constrainplane - the plane in which to constrain atompublic GammaSequenceProxy addGammaSequence(AtomProxy start)
RepresentationBuilder
Creates a new GammaSequence beginning at start and adds
it to the representation under construction.
Note: each GammaSequence is specified only once. Thus, it is not
necessary, for example, to specify both A-B and B-A GammaSequences, where
A and B refer to two neighboring nonterminal atoms.
addGammaSequence in interface RepresentationBuilderstart - the source of the GammaSequence
GammaSequence
public void connect(AtomProxy atom,
GammaSequenceProxy sequence)
RepresentationBuilder
Adds atom to sequence.
Note: each GammaSequence is specified only once. Thus, it is not
necessary, for example, to specify both A-B and B-A GammaSequences, where
A and B refer to two neighboring nonterminal atoms.
connect in interface RepresentationBuilderatom - the AtomProxy to add to sequencesequence - the GammaSequence to be extended by atompublic HalfPlaneProxy addHalfPlane(GammaSequenceProxy sequence)
RepresentationBuildersequence. The order in which
HalfPlanes are added will result in a clockwise distribution about the axis defined
by sequence, with the first atom in the gamma sequence at the bottom and the last
atom at the top.
addHalfPlane in interface RepresentationBuildersequence - a proxy to the GammaSequence
sequencepublic OrbitalProxy addOrbital(AtomProxy atom)
RepresentationBuilder
Creates a new, empty, nonbonding Orbital localized on atom. Returns
an OrbitalProxy that can be used to to subsequently populate the underlying
Orbital with Electrons.
addOrbital in interface RepresentationBuilderatom - the AtomProxy on which to localize an Orbital
public void addElectron(OrbitalProxy orbital,
boolean spinUp)
RepresentationBuilder
Populates orbital with one electron of spin spinUp. If true
, spinUp results in an Electron with a positive spin. If
false, spinUp results in an Electron with a negative spin.
Invocation of addElectron does not change the number of electrons otherwise
associated with the atom owning orbital. Thus, the electron populating
orbital is generated de novo, rather than being taken from the associated
atom representation. To "transfer" an electron from an atom representation to an orbital
associated with it, both addElectron and ionizeAtom will
be necessary.
addElectron in interface RepresentationBuilderorbital - the OrbitalProxy in which to specify an electronspinUp - true for positive spin, or false for negative spinpublic AtomProxy addAtom(IsotopicDistribution distribution)
RepresentationBuilderAtomProxy representing an Atom containing
the specified IsotopicDistribution.
addAtom in interface RepresentationBuilderdistribution - the IsotopicDistribtion to be associated with an Atom
protected java.util.List getAtoms()
List of Atoms currently used by this
AbstractRepresenationBuilder.
List of Atoms currently used by this
AbstractRepresenationBuilderprotected java.util.List getAtomTemplates()
List of AtomTemplates currently used by this
AbstractRepresenationBuilder.
List of AtomTemplates currently used by this
AbstractRepresenationBuilderprotected java.util.List getAtomPairs()
List of AtomPairs currently used by this
AbstractRepresenationBuilder.
List of AtomPairs currently used by this
AbstractRepresenationBuilderprotected java.util.List getBondingSystemTemplates()
List of BondingSystemTemplates currently used by this
AbstractRepresenationBuilder.
List of BondingSystemTemplates currently used by this
AbstractRepresenationBuilderprotected AbstractRepresentationBuilder.ConformationTemplate getConformationTemplate()
ConformationTemplate currently used by this
AbstractRepresenationBuilder.
ConformationTemplate currently used by this
AbstractRepresenationBuilderprotected abstract Atom createAtom(IsotopicDistribution distribution)
Atom implementation from
distribution.
distribution - the IsotopicDistribution to be used by the Atom
Atom implementation
protected abstract AtomPair createAtomPair(Atom source,
Atom target)
AtomPair implementation from
source and target.
source - the source Atomtarget - the target Atom
AtomPair implementation
|
The Octet Molecular Representation Framework v0.8.2 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||