Package chemaxon.marvin.calculations
Class OrbitalElectronegativityPlugin
java.lang.Object
chemaxon.marvin.plugin.CalculatorPlugin
chemaxon.marvin.calculations.MajorMicrospeciesAccessorPlugin
chemaxon.marvin.calculations.OrbitalElectronegativityPlugin
- All Implemented Interfaces:
TaggedCalculator,chemaxon.license.Licensable
Plugin class for orbital electronegativity calculation.
Sigma anf pi orbital electronegativity values can be calculated by this plugin.
References:
- J.Gasteiger and M.Marsili: Tetrahedron Vol. 36. , pp. 3219-3288 (1980)
- M.Marsili and J.Gasteiger: International Symposium on Aromaticity, Dubrovnik, Yugoslavia , Sept (1979), Croat.Chim.Acta. (1979)
- Steven L. Dixon and Peter C. Jurs: J.Comp.Chem., Vol.13. No.4, 492-504 (1992)
- W.J.Mortier, K.V.Genechten and J.Gasteiger: J.Am.Chem.Soc., Vol. 107,829-835 (1985)
API usage example:
// create plugin
OrbitalElectronegativityPlugin plugin = new OrbitalElectronegativityPlugin();
try (MolImporter mi = new MolImporter(new ByteArrayInputStream("Clc1cc(Cl)c(Cl)cc1".getBytes()))) {
// read target molecule
Molecule mol = mi.read();
// optional: take major microspecies at pH=7.4
// skip this if you want to calculate orbital electronegativity for the input molecule as it is
plugin.setpH(7.4);
// set target molecule
plugin.setMolecule(mol);
// run the calculation
plugin.run();
// get orbital electronegativity values for each atom
int count = mol.getAtomCount();
for (int i=0; i < count; ++i) {
double sigmaOen = plugin.getSigmaOEN(i);
if (!Double.isNaN(sigmaOen)) {
System.out.println("sigma orbital electronegativity for atom "+(i+1)+": "+sigmaOen);
}
}
}
For concurrent plugin example applications using ChemAxon's concurrent framework, refer to the Concurrent plugin examples.
- Since:
- Marvin 4.1, 07/25/2006
-
Nested Class Summary
Nested classes/interfaces inherited from class chemaxon.marvin.plugin.CalculatorPlugin
CalculatorPlugin.HydrogenData -
Field Summary
Fields inherited from class chemaxon.marvin.calculations.MajorMicrospeciesAccessorPlugin
ionizerFields inherited from class chemaxon.marvin.plugin.CalculatorPlugin
ATOM, BLUE, CALCRGB_OFF, COVALENT_HYDRATION_ERROR_REMARK, CRITICAL_ERROR_MSG, EPSILON, explicitHydrogens, INCORRECT_AROMATIC_NITROGEN_REMARK, INSTABLE_TAUTOMERIC_FORM_REMARK, KEEP_HYDROGENS, keepHydrogens, licenseEnvironment, MOLECULE, MOLECULES, NAN, PLUGIN_CLASS_KEY, PLUGIN_DIR, RED, TRUE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the calculation error information message ifrun()returned false (calculation error): hydrogen valence error.doublegetPiOEN(int index) Returns the pi orbital electronegativity of a specified atom.Returns the product identifier of the plugin as given byLicenseManager.Returns the result item for the specified type and index.getResultAsString(Object type, int index, Object result) Returns the specified result in String format.intgetResultCount(Object type) Returns the number of result items for the given result type.intgetResultDomain(Object type) Returns the calculation domainCalculatorPlugin.ATOMorCalculatorPlugin.MOLECULE.Returns the result molecule for display.Object[]Returns the result types (possible types: "sigma", "pi").doublegetSigmaOEN(int index) Returns the sigma orbital electronegativity of a specified atom.getTypeString(Object type) Returns a string representation of the given type.booleanReturnstrueif the plugin is licensed.booleanrun()Runs the orbital electornegativity calculation.protected voidsetInputMolecule(Molecule mol) Sets the input molecule.voidsetParameters(Properties params) Sets the input parameters for the plugin.voidsetTakeResonantStructures(boolean resonance) Sets calculation with resonant structures.Methods inherited from class chemaxon.marvin.calculations.MajorMicrospeciesAccessorPlugin
checkMolecule, createModifiedInputMolecule, getIonizerErrorMessage, getpH, setChemicalTermsArgument, setpH, standardizeMethods inherited from class chemaxon.marvin.plugin.CalculatorPlugin
addHeavyAtomLimitChecker, addInputChecker, arrangeHydrogenIncerments, canRepeat, checkLicense, checkType, containsCoordinateBond, containsMulticenterSgroup, containsPseudoAtom, containsSRUSgroup, create, create, createStandardizedMolecule, createStandardizedMolecule, dehydrogenize, format, format, format, format, getAtomCount, getAtomIndex, getAtomIndexMap, getAtomIndexMapping, getCalcMolecule, getDisplayMolecule, getDocument, getDoublePrecision, getExplicitHydrogenData, getInputMolDim, getMainMolecule, getOriginalMolecule, getPluginResource, getQueryMoleculeErrorMessage, getRemark, getResult, getResult, getResult, getResultAsRGB, getResultAsRGB, getResultAsString, getResultCount, getResultDomain, getResultMessage, getResultMolecules, getResultsAsRGB, getResultsAsRGB, getResultsAsString, getResultsAsString, getResultSource, getWarningMessage, handlesMultiFragmentMolecules, isInputMoleculeAromatized, isMsCalc, isMultiThreadedRunEnabled, isNegligibleResult, isOK, isRgrouped, loadClass, loadPluginClass, loadPluginClass, readAttribute, removeWhitespace, restoreExplicitHydrogens, setAtomIndexMap, setChemicalTermsParameters, setDoublePrecision, setDoublePrecision, setDoublePrecision, setKeepHydrogens, setLicenseEnvironment, setMolecule, setMolecule, setMolecule, setMolecule, setProgressMonitor, standardizeIonicGroupsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface chemaxon.calculator.TaggedCalculator
tags
-
Constructor Details
-
OrbitalElectronegativityPlugin
public OrbitalElectronegativityPlugin()Constructor.
-
-
Method Details
-
isLicensed
public boolean isLicensed()Returnstrueif the plugin is licensed. The license checking is based on the product name, returned bygetProductName().- Specified by:
isLicensedin interfacechemaxon.license.Licensable- Overrides:
isLicensedin classMajorMicrospeciesAccessorPlugin- Returns:
trueif the plugin is licensed
-
getProductName
Returns the product identifier of the plugin as given byLicenseManager.- Specified by:
getProductNamein classCalculatorPlugin- Returns:
- The identifier
LicenseManager.CHARGE_PLUGIN_GROUP
-
setParameters
Sets the input parameters for the plugin. Orbital electronegativity parameters and value ranges:- type: sigma,pi
- precision: 0-8 or inf (number of displayed fractional digits, inf for unrounded value)
- resonance: true or false - true if calculate with resonant structures (default: false)
- pH: major microspecies on given pH is taken as input molecule if omitted then the input molecule is taken as it is
- Overrides:
setParametersin classMajorMicrospeciesAccessorPlugin- Parameters:
params- is the parameter table- Throws:
PluginException- on error
-
setTakeResonantStructures
public void setTakeResonantStructures(boolean resonance) Sets calculation with resonant structures. Default:false.- Parameters:
resonance- istrueif orbital electornegativity should be calculated with resonant structures
-
setInputMolecule
Sets the input molecule.- Specified by:
setInputMoleculein classCalculatorPlugin- Parameters:
mol- is the input molecule- Throws:
PluginException- on error
-
run
Runs the orbital electornegativity calculation.- Specified by:
runin classCalculatorPlugin- Returns:
- true if the calculation was successful, false on calculation error
- Throws:
PluginException- on error- See Also:
-
getErrorMessage
Returns the calculation error information message ifrun()returned false (calculation error): hydrogen valence error.- Overrides:
getErrorMessagein classMajorMicrospeciesAccessorPlugin- Returns:
- the calculation error information message
-
getSigmaOEN
public double getSigmaOEN(int index) Returns the sigma orbital electronegativity of a specified atom.- Parameters:
index- is the atom index- Returns:
- the sigma orbital electronegativity of a specified atom
-
getPiOEN
public double getPiOEN(int index) Returns the pi orbital electronegativity of a specified atom.- Parameters:
index- is the atom index- Returns:
- the pi orbital electronegativity of a specified atom
-
getResultTypes
Returns the result types (possible types: "sigma", "pi").- Overrides:
getResultTypesin classCalculatorPlugin- Returns:
- the result types
-
getResultDomain
Returns the calculation domainCalculatorPlugin.ATOMorCalculatorPlugin.MOLECULE. Orbital electornegativity plugin always returnsCalculatorPlugin.ATOM.- Overrides:
getResultDomainin classCalculatorPlugin- Parameters:
type- is the result type- Returns:
CalculatorPlugin.ATOM- See Also:
-
getResultCount
Returns the number of result items for the given result type. Orbital electornegativity plugin returns the atom count.- Overrides:
getResultCountin classCalculatorPlugin- Parameters:
type- is the result type- Returns:
- the number of result items
- See Also:
-
getTypeString
Returns a string representation of the given type.- Overrides:
getTypeStringin classCalculatorPlugin- Parameters:
type- is the type object- Returns:
- the type string
-
getResult
Returns the result item for the specified type and index. Orbital electornegativity plugin returns the required Orbital electornegativity value as a Double object.- Overrides:
getResultin classCalculatorPlugin- Parameters:
type- is the result type ("sigma" or "pi")index- is the atom index- Returns:
- the result item for the specified type and index
- Throws:
PluginException- if the result cannot be returned- See Also:
-
getResultAsString
Returns the specified result in String format.- Overrides:
getResultAsStringin classCalculatorPlugin- Parameters:
type- is the result typeindex- is the result indexresult- is the result item- Returns:
- the specified result in String format
- Throws:
PluginException- if an invalid result item is given
-
getResultMolecule
Returns the result molecule for display. Atomic results are stored in atom extra labels (MolAtom.getExtraLabel()). Molecular results are stored in molecule properties with keys being the result types (MPropHandler.convertToString(MPropertyContainer, String)).- Overrides:
getResultMoleculein classCalculatorPlugin- Returns:
- the result molecule
- Throws:
PluginException- on error
-