Class WeightedPathDescriptor
- java.lang.Object
-
- org.openscience.cdk.qsar.AbstractMolecularDescriptor
-
- org.openscience.cdk.qsar.descriptors.molecular.WeightedPathDescriptor
-
- All Implemented Interfaces:
IDescriptor
,IMolecularDescriptor
public class WeightedPathDescriptor extends AbstractMolecularDescriptor implements IMolecularDescriptor
Evaluates the weighted path descriptors. These decsriptors were described by Randic ([Randic, M. . Journal of Chemical Information and Computer Science. 1984. 24]) and characterize molecular branching. Five descriptors are calculated, based on the implementation in the ADAPT software package. Note that the descriptor is based on identifying all paths between pairs of atoms and so is NP-hard. This means that it can take some time for large, complex molecules. The class returns aDoubleArrayResult
containing the five descriptors in the order described below.DMWP WTPT1 molecular ID WTPT2 molecular ID / number of atoms WTPT3 sum of path lengths starting from heteroatoms WTPT4 sum of path lengths starting from oxygens WTPT5 sum of path lengths starting from nitrogens Parameters for this descriptor: Name Default Description no parameters - Author:
- Rajarshi Guha
- Dictionary pointer(s):
- weightedPath in the QSAR.sf.net Descriptors Dictionary [qsar-descriptors:weightedPath]
- Source code:
- main
- Belongs to CDK module:
- qsarmolecular
- Created on:
- 2006-01-15
-
-
Constructor Summary
Constructors Constructor Description WeightedPathDescriptor()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DescriptorValue
calculate(IAtomContainer container)
Calculates the weighted path descriptors.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 WeightedPathDescriptor object.Object[]
getParameters()
Gets the parameters attribute of the WeightedPathDescriptor object.Object
getParameterType(String name)
Gets the parameterType attribute of the WeightedPathDescriptor object.DescriptorSpecification
getSpecification()
Returns aIImplementationSpecification
which specifies which descriptor is implemented by this class.void
initialise(IChemObjectBuilder builder)
Default implementation of initialise allows optional override.void
setParameters(Object[] params)
Sets the parameters attribute of the WeightedPathDescriptor object.static boolean
unique(List<IAtom> path)
-
Methods inherited from class org.openscience.cdk.qsar.AbstractMolecularDescriptor
clone
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.openscience.cdk.qsar.IDescriptor
initialise
-
-
-
-
Method Detail
-
getSpecification
public DescriptorSpecification getSpecification()
Description copied from interface:IDescriptor
Returns aIImplementationSpecification
which specifies which descriptor is implemented by this class. These fields are used in the map:- Specification-Reference: refers to an entry in a unique dictionary
- Implementation-Title: anything
- Implementation-Identifier: a unique identifier for this version of this class
- Implementation-Vendor: CDK, JOELib, or anything else
- Specified by:
getSpecification
in interfaceIDescriptor
- Returns:
- An object containing the descriptor specification
-
setParameters
public void setParameters(Object[] params) throws CDKException
Sets the parameters attribute of the WeightedPathDescriptor object.- Specified by:
setParameters
in interfaceIDescriptor
- Parameters:
params
- The new parameters value- Throws:
CDKException
- Description of the Exception- See Also:
IDescriptor.getParameters()
-
getParameters
public Object[] getParameters()
Gets the parameters attribute of the WeightedPathDescriptor object.- Specified by:
getParameters
in interfaceIDescriptor
- Returns:
- The parameters value
- See Also:
IDescriptor.setParameters(java.lang.Object[])
-
getDescriptorNames
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 descriptor (e.g., the CPSA descriptor). Note that by default if a descriptor returns a single value (such asALOGPDescriptor
the return array will have a single element- Specified by:
getDescriptorNames
in interfaceIDescriptor
- Returns:
- An array of descriptor names, equal in length to the number of descriptor calculated..
-
getParameterNames
public String[] getParameterNames()
Gets the parameterNames attribute of the WeightedPathDescriptor object.- Specified by:
getParameterNames
in interfaceIDescriptor
- Returns:
- The parameterNames value
-
getParameterType
public Object getParameterType(String name)
Gets the parameterType attribute of the WeightedPathDescriptor object.- Specified by:
getParameterType
in interfaceIDescriptor
- Parameters:
name
- Description of the Parameter- Returns:
- The parameterType value
-
calculate
public DescriptorValue calculate(IAtomContainer container)
Calculates the weighted path descriptors.- Specified by:
calculate
in interfaceIMolecularDescriptor
- Parameters:
container
- Parameter is the atom container.- Returns:
- A DoubleArrayResult value representing the weighted path values
-
getDescriptorResultType
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 theDescriptorValue
object. Note that the same result can be achieved by interrogating theDescriptorValue
object; this method allows you to do the same thing, without actually calculating the descriptor.- Specified by:
getDescriptorResultType
in interfaceIMolecularDescriptor
- Returns:
- an object that implements the
IDescriptorResult
interface indicating the actual type of values returned by the descriptor in theDescriptorValue
object
-
initialise
public void initialise(IChemObjectBuilder builder)
Default implementation of initialise allows optional override.- Specified by:
initialise
in interfaceIDescriptor
- Parameters:
builder
- chem object build
-
-