org.openscience.cdk.qsar.descriptors.molecular
Class HybridizationRatioDescriptor

java.lang.Object
  extended by org.openscience.cdk.qsar.descriptors.molecular.HybridizationRatioDescriptor
All Implemented Interfaces:
IDescriptor, IMolecularDescriptor

@TestClass(value="org.openscience.cdk.qsar.descriptors.molecular.HybridizationRatioDescriptorTest")
public class HybridizationRatioDescriptor
extends Object
implements IMolecularDescriptor

IMolecularDescriptor that reports the fraction of sp3 carbons to sp2 carbons.

Note that it only considers carbon atoms and rather than use a simple ratio it reports the value of Nsp3/ (Nsp3 + Nsp2). The original form of the descriptor (i.e., simple ratio) has been used to characterize molecular complexity, especially in the are of natural products , which usually have a high value of the sp3 to sp2 ratio.

Author:
Rajarshi Guha
Belongs to the set:
qsar-descriptors
Belongs to CDK module:
qsarmolecular
Dictionary pointer(s):
hybratio in the QSAR.sf.net Descriptors Dictionary [qsar-descriptors:hybratio]
Source code:
cdk-1.4.x

Constructor Summary
HybridizationRatioDescriptor()
          Constructor for the HybridizationRatioDescriptor object.
 
Method Summary
 DescriptorValue calculate(IAtomContainer container)
          Calculate sp3/sp2 hybridization ratio in the supplied IAtomContainer.
 String[] getDescriptorNames()
          Returns an array of names for each descriptor value calculated.
 IDescriptorResult getDescriptorResultType()
          Returns the specific type of the DescriptorResult object.
 String[] getParameterNames()
          Gets the parameterNames attribute of the HybridizationRatioDescriptor object.
 Object[] getParameters()
          Gets the parameters attribute of the HybridizationRatioDescriptor object.
 Object getParameterType(String name)
          Gets the parameterType attribute of the HybridizationRatioDescriptor object.
 DescriptorSpecification getSpecification()
          Returns a DescriptorSpecification which specifies which descriptor is implemented by this class.
 void setParameters(Object[] params)
          Sets the parameters attribute of the HybridizationRatioDescriptor object.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HybridizationRatioDescriptor

public HybridizationRatioDescriptor()
Constructor for the HybridizationRatioDescriptor object.

Method Detail

getSpecification

@TestMethod(value="testGetSpecification")
public DescriptorSpecification getSpecification()
Returns a DescriptorSpecification which specifies which descriptor is implemented by this class.

Specified by:
getSpecification in interface IDescriptor
Returns:
An object containing the descriptor specification

setParameters

@TestMethod(value="testSetParameters_arrayObject")
public void setParameters(Object[] params)
                   throws CDKException
Sets the parameters attribute of the HybridizationRatioDescriptor object.

Specified by:
setParameters in interface IDescriptor
Parameters:
params - The new parameters value
Throws:
CDKException - if more than 1 parameter is specified or if the parameter is not of type String
See Also:
getParameters()

getParameters

@TestMethod(value="testGetParameters")
public Object[] getParameters()
Gets the parameters attribute of the HybridizationRatioDescriptor object. This descriptor takes no parameters

Specified by:
getParameters in interface IDescriptor
Returns:
The parameters value
See Also:
setParameters(java.lang.Object[])

getDescriptorNames

@TestMethod(value="testNamesConsistency")
public String[] getDescriptorNames()
Description copied from interface: IDescriptor
Returns an array of names for each descriptor value calculated.

Many descriptors return multiple values. In general it is useful for the descriptor to indicate the names for each value.

In many cases, these names can be as simple as X1, X2, ..., XN where X is a prefix and 1, 2, ..., N are the indices. On the other hand it is also possible to return other arbitrary names, which should be documented in the Javadocs for the decsriptor (e.g., the CPSA descriptor).

Note that by default if a descriptor returns a single value (such as ALOGPDescriptor the return array will have a single element

Specified by:
getDescriptorNames in interface IDescriptor
Returns:
An array of descriptor names, equal in length to the number of descriptor calculated..

calculate

@TestMethod(value="testCalculate_IAtomContainer")
public DescriptorValue calculate(IAtomContainer container)
Calculate sp3/sp2 hybridization ratio in the supplied IAtomContainer.

Specified by:
calculate in interface IMolecularDescriptor
Parameters:
container - The AtomContainer for which this descriptor is to be calculated.
Returns:
The ratio of sp3 to sp2 carbons

getDescriptorResultType

@TestMethod(value="testGetDescriptorResultType")
public IDescriptorResult getDescriptorResultType()
Returns the specific type of the DescriptorResult object.

The return value from this method really indicates what type of result will be obtained from the DescriptorValue object. Note that the same result can be achieved by interrogating the DescriptorValue object; this method allows you to do the same thing, without actually calculating the descriptor.

Specified by:
getDescriptorResultType in interface IMolecularDescriptor
Returns:
an object that implements the IDescriptorResult interface indicating the actual type of values returned by the descriptor in the DescriptorValue object

getParameterNames

@TestMethod(value="testGetParameterNames")
public String[] getParameterNames()
Gets the parameterNames attribute of the HybridizationRatioDescriptor object. This descriptor takes no parameters

Specified by:
getParameterNames in interface IDescriptor
Returns:
The parameterNames value

getParameterType

@TestMethod(value="testGetParameterType_String")
public Object getParameterType(String name)
Gets the parameterType attribute of the HybridizationRatioDescriptor object. This descriptor takes no parameters

Specified by:
getParameterType in interface IDescriptor
Parameters:
name - the parameter name
Returns:
An Object whose class is that of the parameter requested