Class KierHallSmartsDescriptor
- java.lang.Object
-
- org.openscience.cdk.qsar.AbstractMolecularDescriptor
-
- org.openscience.cdk.qsar.descriptors.molecular.KierHallSmartsDescriptor
-
- All Implemented Interfaces:
IDescriptor
,IMolecularDescriptor
public class KierHallSmartsDescriptor extends AbstractMolecularDescriptor implements IMolecularDescriptor
A fragment count descriptor that uses e-state fragments. Traditionally the e-state descriptors identify the relevant fragments and then evaluate the actual e-state value. However it has been shown in [Butina, D. . Molecules. 2004. 9] that simply using the counts of the e-state fragments can lead to QSAR models that exhibit similar performance to those built using the actual e-state indices. Atom typing and aromaticity perception should be performed prior to calling this descriptor. The atom type definitions are taken from [Hall, L.H. and Kier, L.B. . Journal of Chemical Information and Computer Science. 1995. 35]. The SMARTS definitions were obtained from RDKit. The descriptor returns an integer array result of 79 values with the following names (see here for the corresponding chemical groups).SMARTS patterns used by the descriptor Serial Name Pattern 0 khs.sLi [LiD1]-* 1 khs.ssBe [BeD2](-*)-* 2 khs.ssssBe [BeD4](-*)(-*)(-*)-* 3 khs.ssBH [BD2H](-*)-* 4 khs.sssB [BD3](-*)(-*)-* 5 khs.ssssB [BD4](-*)(-*)(-*)-* 6 khs.sCH3 [CD1H3]-* 7 khs.dCH2 [CD1H2]=* 8 khs.ssCH2 [CD2H2](-*)-* 9 khs.tCH [CD1H]#* 10 khs.dsCH [CD2H](=*)-* 11 khs.aaCH [C,c;D2H](:*):* 12 khs.sssCH [CD3H](-*)(-*)-* 13 khs.ddC [CD2H0](=*)=* 14 khs.tsC [CD2H0](#*)-* 15 khs.dssC [CD3H0](=*)(-*)-* 16 khs.aasC [C,c;D3H0](:*)(:*)-* 17 khs.aaaC [C,c;D3H0](:*)(:*):* 18 khs.ssssC [CD4H0](-*)(-*)(-*)-* 19 khs.sNH3 [ND1H3]-* 20 khs.sNH2 [ND1H2]-* 21 khs.ssNH2 [ND2H2](-*)-* 22 khs.dNH [ND1H]=* 23 khs.ssNH [ND2H](-*)-* 24 khs.aaNH [N,nD2H](:*):* 25 khs.tN [ND1H0]#* 26 khs.sssNH [ND3H](-*)(-*)-* 27 khs.dsN [ND2H0](=*)-* 28 khs.aaN [N,nD2H0](:*):* 29 khs.sssN [ND3H0](-*)(-*)-* 30 khs.ddsN [ND3H0](~[OD1H0])(~[OD1H0])-,:* 31 khs.aasN [N,nD3H0](:*)(:*)-,:* 32 khs.ssssN [ND4H0](-*)(-*)(-*)-* 33 khs.sOH [OD1H]-* 34 khs.dO [OD1H0]=* 35 khs.ssO [OD2H0](-*)-* 36 khs.aaO [O,oD2H0](:*):* 37 khs.sF [FD1]-* 38 khs.sSiH3 [SiD1H3]-* 39 khs.ssSiH2 [SiD2H2](-*)-* 40 khs.sssSiH [SiD3H1](-*)(-*)-* 41 khs.ssssSi [SiD4H0](-*)(-*)(-*)-* 42 khs.sPH2 [PD1H2]-* 43 khs.ssPH [PD2H1](-*)-* 44 khs.sssP [PD3H0](-*)(-*)-* 45 khs.dsssP [PD4H0](=*)(-*)(-*)-* 46 khs.sssssP [PD5H0](-*)(-*)(-*)(-*)-* 47 khs.sSH [SD1H1]-* 48 khs.dS [SD1H0]=* 49 khs.ssS [SD2H0](-*)-* 50 khs.aaS [S,sD2H0](:*):* 51 khs.dssS [SD3H0](=*)(-*)-* 52 khs.ddssS [SD4H0](~[OD1H0])(~[OD1H0])(-*)-* 53 khs.sCl [ClD1]-* 54 khs.sGeH3 [GeD1H3](-*) 55 khs.ssGeH2 [GeD2H2](-*)-* 56 khs.sssGeH [GeD3H1](-*)(-*)-* 57 khs.ssssGe [GeD4H0](-*)(-*)(-*)-* 58 khs.sAsH2 [AsD1H2]-* 59 khs.ssAsH [AsD2H1](-*)-* 60 khs.sssAs [AsD3H0](-*)(-*)-* 61 khs.sssdAs [AsD4H0](=*)(-*)(-*)-* 62 khs.sssssAs [AsD5H0](-*)(-*)(-*)(-*)-* 63 khs.sSeH [SeD1H1]-* 64 khs.dSe [SeD1H0]=* 65 khs.ssSe [SeD2H0](-*)-* 66 khs.aaSe [SeD2H0](:*):* 67 khs.dssSe [SeD3H0](=*)(-*)-* 68 khs.ddssSe [SeD4H0](=*)(=*)(-*)-* 69 khs.sBr [BrD1]-* 70 khs.sSnH3 [SnD1H3]-* 71 khs.ssSnH2 [SnD2H2](-*)-* 72 khs.sssSnH [SnD3H1](-*)(-*)-* 73 khs.ssssSn [SnD4H0](-*)(-*)(-*)-* 74 khs.sI [ID1]-* 75 khs.sPbH3 [PbD1H3]-* 76 khs.ssPbH2 [PbD2H2](-*)-* 77 khs.sssPbH [PbD3H1](-*)(-*)-* 78 khs.ssssPb [PbD4H0](-*)(-*)(-*)-* - Author:
- Rajarshi Guha
- Dictionary pointer(s):
- kierHallSmarts in the QSAR.sf.net Descriptors Dictionary [qsar-descriptors:kierHallSmarts]
- Source code:
- main
- Belongs to CDK module:
- qsarmolecular
-
-
Constructor Summary
Constructors Constructor Description KierHallSmartsDescriptor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DescriptorValue
calculate(IAtomContainer container)
This method calculates occurrences of the Kier & Hall E-state fragments.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 descriptor.Object[]
getParameters()
Gets the parameters attribute of the descriptor.Object
getParameterType(String name)
Gets the parameterType attribute of the descriptor.DescriptorSpecification
getSpecification()
Returns aMap
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 descriptor.-
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()
Returns aMap
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 descriptor.- Specified by:
setParameters
in interfaceIDescriptor
- Parameters:
params
- The new parameters value- Throws:
CDKException
- if any parameters are specified- See Also:
getParameters()
-
getParameters
public Object[] getParameters()
Gets the parameters attribute of the descriptor.- Specified by:
getParameters
in interfaceIDescriptor
- Returns:
- The parameters value
- See Also:
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..
-
calculate
public DescriptorValue calculate(IAtomContainer container)
This method calculates occurrences of the Kier & Hall E-state fragments.- Specified by:
calculate
in interfaceIMolecularDescriptor
- Parameters:
container
- The molecule for which this descriptor is to be calculated- Returns:
- Counts of the fragments
-
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
-
getParameterNames
public String[] getParameterNames()
Gets the parameterNames attribute of the descriptor.- Specified by:
getParameterNames
in interfaceIDescriptor
- Returns:
- The parameterNames value
-
getParameterType
public Object getParameterType(String name)
Gets the parameterType attribute of the descriptor.- Specified by:
getParameterType
in interfaceIDescriptor
- Parameters:
name
- Description of the Parameter- Returns:
- An Object whose class is that of the parameter requested
-
initialise
public void initialise(IChemObjectBuilder builder)
Default implementation of initialise allows optional override.- Specified by:
initialise
in interfaceIDescriptor
- Parameters:
builder
- chem object build
-
-