Class FMFDescriptor

  • All Implemented Interfaces:
    IDescriptor, IMolecularDescriptor

    public class FMFDescriptor
    extends AbstractMolecularDescriptor
    implements IMolecularDescriptor
    An implementation of the FMF descriptor characterizing complexity of a molecule. The descriptor is described in [Yang, Y. et. al.. J. Med. Chem.. 2010. ASAP] and is an approach to characterizing molecular complexity based on the Murcko framework present in the molecule. The descriptor is the ratio of heavy atoms in the framework to the total number of heavy atoms in the molecule. By definition, acyclic molecules which have no frameworks, will have a value of 0. Note that the authors consider an isolated ring system to be a framework (even though there is no linker). This descriptor returns a single double value, labeled as "FMF"
    Author:
    Rajarshi Guha
    See Also:
    MurckoFragmenter
    Dictionary pointer(s):
    FMF in the QSAR.sf.net Descriptors Dictionary [qsar-descriptors:FMF]
    Source code:
    main
    Belongs to CDK module:
    qsarmolecular
    • Constructor Detail

      • FMFDescriptor

        public FMFDescriptor()
    • Method Detail

      • getDescriptorResultType

        public IDescriptorResult getDescriptorResultType()
        Returns the specific type of the FMF descriptor value. The FMF descriptor is a single, double value. 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.

        Additionally, the length indicated by the result type must match the actual length of a descriptor calculated with the current parameters. Typically, the length of array result types vary with the values of the parameters. See IDescriptor for more details.

        Specified by:
        getDescriptorResultType in interface IMolecularDescriptor
        Returns:
        an instance of the DoubleResultType
      • getSpecification

        public DescriptorSpecification getSpecification()
        Returns a Map 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 interface IDescriptor
        Returns:
        An object containing the descriptor specification
      • getParameterNames

        public String[] getParameterNames()
        Returns the names of the parameters for this descriptor. Since this descriptor takes no parameters, null is returned
        Specified by:
        getParameterNames in interface IDescriptor
        Returns:
        null, since there are no parameters
      • getParameterType

        public Object getParameterType​(String name)
        Returns a class matching that of the parameter with the given name. Since this descriptor has no parameters, null is always returned
        Specified by:
        getParameterType in interface IDescriptor
        Parameters:
        name - The name of the parameter whose type is requested
        Returns:
        null, since this descriptor has no parameters
      • setParameters

        public void setParameters​(Object[] params)
                           throws CDKException
        Sets the parameters for this descriptor. This method does nothing, since the descriptor has no parameters
        Specified by:
        setParameters in interface IDescriptor
        Parameters:
        params - An array of Object containing the parameters for this descriptor
        Throws:
        CDKException - if invalid number of type of parameters are passed to it
        See Also:
        getParameters()
      • getDescriptorNames

        public String[] getDescriptorNames()
        Returns an array of names for each descriptor value calculated. Since this descriptor returns a single value, the array has a single element, viz., "FMF"
        Specified by:
        getDescriptorNames in interface IDescriptor
        Returns:
        A 1-element string array, with the value "FMF"
      • initialise

        public void initialise​(IChemObjectBuilder builder)
        Default implementation of initialise allows optional override.
        Specified by:
        initialise in interface IDescriptor
        Parameters:
        builder - chem object build