Class ECFPParameters


  • @PublicAPI
    public class ECFPParameters
    extends MDParameters
    Manages ECFP fingerprint parameters. This class reads, stores and provides parameters for ECFP class. These parameters together are called the ECFP fingerprint configuration. The native format of such configuration is XML.
    Since:
    JChem 5.4
    • Constructor Detail

      • ECFPParameters

        public ECFPParameters()
        Creates an empty object. Initializes fingerprint parameters to default values.
      • ECFPParameters

        public ECFPParameters​(File configFile)
                       throws MDParametersException
        Creates a new object based on a given configuration file.
        Parameters:
        configFile - XML configuration file
        Throws:
        MDParametersException - missing or bad XML configuration
      • ECFPParameters

        public ECFPParameters​(String XMLconfig)
                       throws MDParametersException
        Creates a new object based on a given configuration string.
        Parameters:
        XMLconfig - XML configuration string
        Throws:
        MDParametersException - missing or bad XML configuration
    • Method Detail

      • fromString

        public void fromString​(String parameterString)
                        throws MDParametersException
        Sets parameters from a string representation. This method processes an XML format, but derived classes may overload this and define their own format.
        Overrides:
        fromString in class MDParameters
        Parameters:
        parameterString - parameters in string
        Throws:
        MDParametersException - when the parameter string is not well-formed
      • fromFile

        public void fromFile​(File parameterFile)
                      throws MDParametersException
        Sets parameters from an XML file. Derived classes may overload this and define their own format (even other than XML).
        Overrides:
        fromFile in class MDParameters
        Parameters:
        parameterFile - initialized parameter file
        Throws:
        MDParametersException - failed to process parameter file
      • setDiameter

        public void setDiameter​(int diameter)
        Sets the diameter parameter. It specifies the diameter of the circular neighborhood considered for each atom.
      • getDiameter

        public int getDiameter()
        Gets the preset diameter parameter. It specifies the diameter of the circular neighborhood considered for each atom.
        Returns:
        the diameter parameter
      • setKeepCounts

        public void setKeepCounts​(boolean keepCounts)
        Sets the counts (multiplicity) parameter. It controls whether the generated identifiers are stored with occurrence counts or each identifier is kept only once independently of the number of the corresponding substructural features in the input molecule.
        Parameters:
        keepCounts - counts parameter
      • getKeepCounts

        public boolean getKeepCounts()
        Gets the counts (multiplicity) parameter. It controls whether the generated identifiers are stored with occurrence counts or each identifier is kept only once independently of the number of the corresponding substructural features in the input molecule.
        Returns:
        counts parameter
      • init

        protected void init()
        This method is called by the constructors before processing the XML configuration. It creates a ECFP object stored in MDParameters.md.
      • initParameters

        protected void initParameters()
        Initializes those data members that depend on the XML configuration but are not directly taken from it.
        Overrides:
        initParameters in class MDParameters
      • generate

        protected String[] generate​(Molecule m,
                                    MolecularDescriptor ecfp)
                             throws MDGeneratorException
        Calls ECFPGenerator and generates the descriptor for the given molecule.
        Parameters:
        m - a molecular structure
        ecfp - the ECFP descriptor generated for the given molecule, an output parameter
        Returns:
        names of Molecule Property-s (SDfile tags) set by the generator
        Throws:
        MDGeneratorException - when failed to generate descriptor
      • getNumberOfWeights

        protected int getNumberOfWeights​(int parametrizedMetricIndex)
                                  throws IllegalArgumentException
        Gets the number of weight factors used by the specified metric. This method can be applied to the dissimilarity metrics provided by the MolecularDescriptor class or its derived classes, but not to parametrized metric.
        Overrides:
        getNumberOfWeights in class MDParameters
        Parameters:
        parametrizedMetricIndex - parametrized metric index
        Returns:
        number of weights the metric uses
        Throws:
        IllegalArgumentException - if the given parameter is not a valid metric index
      • getDefaultDocumentFrame

        public String getDefaultDocumentFrame()
        Get the default XML configuration string. This is needed when the optional ECFP XML configuration is not specified.
        Overrides:
        getDefaultDocumentFrame in class MDParameters
        Returns:
        default XML configuration string of the ECFPParameters class
      • getDefaultStandardizerConfiguration

        public static String getDefaultStandardizerConfiguration()
        Gets the default configuration of the standardizer. This method is called if no standardizer configuration is set in the parameters configuration. The default standardization for ECFP includes aromatization.
        Returns:
        standardizer configuration XML string
      • processDocument

        protected void processDocument​(boolean all)
                                throws MDParametersException
        Processes pars of the XML configuration specific to ECFP. Find the node in the DOM tree and leaves the rest of the work to the parent class.
        Overrides:
        processDocument in class MDParameters
        Parameters:
        all - indicates if the entire document has to be processed in which case the existing configuration is overwritten
        Throws:
        MDParametersException
      • readValues

        protected void readValues​(boolean all)
                           throws MDParametersException
        Picks parameter values from the DOM tree.
        Overrides:
        readValues in class MDParameters
        Parameters:
        all - indicates if the entire document has to be processed in which case the existing configuration is overwritten
        Throws:
        MDParametersException