def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters("--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters("--outfileParams", Options["--outfileParams"], Options["--infile"], Options["--outfile"]) FileDir, FileName, FileExt = MiscUtil.ParseFileName(Options["--outfile"]) OutfileFiltered = "%s_Filtered.%s" % (FileName, FileExt) OptionsInfo["OutfileFiltered"] = OutfileFiltered OptionsInfo["OutfileFilteredMode"] = True if re.match("^yes$", Options["--outfileFiltered"], re.I) else False OptionsInfo["Overwrite"] = Options["--overwrite"] OptionsInfo["CountMode"] = True if re.match("^count$", Options["--mode"], re.I) else False OptionsInfo["NegateMatch"] = True if re.match("^yes$", Options["--negate"], re.I) else False OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters("--mpParams", Options["--mpParams"]) OptionsInfo["AlertsMode"] = Options["--alertsMode"] ProcessChEMBLAlertsMode()
def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters("--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters("--outfileParams", Options["--outfileParams"], Options["--infile"], Options["--outfile"]) OptionsInfo["Overwrite"] = Options["--overwrite"] OptionsInfo["CountMode"] = False if re.match("^count$", Options["--mode"], re.I): OptionsInfo["CountMode"] = True OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters("--mpParams", Options["--mpParams"]) SaltsByComponentsMode = False SaltsBySMARTSFileMode = False SaltsBySMARTSMode = False if re.match("^ByComponent$", Options["--saltsMode"], re.I): SaltsByComponentsMode = True elif re.match("^BySMARTSFile$", Options["--saltsMode"], re.I): SaltsBySMARTSFileMode = False elif re.match("^BySMARTS$", Options["--saltsMode"], re.I): SaltsBySMARTSMode = True else: MiscUtil.PrintError("The salts mode specified, %s, using \"--saltsMode\" option is not valid." % Options["--saltsMode"]) OptionsInfo["SaltsByComponentsMode"] = SaltsByComponentsMode OptionsInfo["SaltsBySMARTSFileMode"] = SaltsBySMARTSFileMode OptionsInfo["SaltsBySMARTSMode"] = SaltsBySMARTSMode SaltsFile = None if re.match("^BySMARTSFile$", Options["--saltsMode"], re.I): if not re.match("^auto$", Options["--saltsFile"], re.I): SaltsFile = Options["--saltsFile"] OptionsInfo["SaltsFile"] = SaltsFile SaltsSMARTS = None if re.match("^BySMARTS$", Options["--saltsMode"], re.I): if not Options["--saltsSMARTS"]: MiscUtil.PrintError("No salts SMARTS pattern specified using \"--saltsSMARTS\" option during \"BySMARTS\" value of \"-s, --saltsMode\" option") SaltsSMARTS = Options["--saltsSMARTS"].strip(" ") if not len(SaltsSMARTS): MiscUtil.PrintError("Empty SMARTS pattern specified using \"--saltsSMARTS\" option during \"BySMARTS\" value of \"-s, --saltsMode\" option") if re.search(" ", SaltsSMARTS): SaltsSMARTS = re.sub('[ ]+', '\n', SaltsSMARTS) OptionsInfo["SaltsSMARTS"] = SaltsSMARTS
def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() OptionsInfo["CombineMatches"] = Options["--combineMatches"] OptionsInfo["CombineMatchResults"] = True if re.match("^No$", Options["--combineMatches"], re.I): OptionsInfo["CombineMatchResults"] = False if Options["--outfile"]: FileDir, FileName, FileExt = MiscUtil.ParseFileName( Options["--outfile"]) OptionsInfo["OutfileBasename"] = FileName OptionsInfo["OutfileExt"] = FileExt OptionsInfo["CombineOperator"] = Options["--combineOperator"] OptionsInfo["AndCombineOperatorMode"] = True if re.match("^or$", Options["--combineOperator"], re.I): OptionsInfo["AndCombineOperatorMode"] = False OptionsInfo["GroupNamesFile"] = None if not re.match("^auto$", Options["--groupNamesFile"], re.I): OptionsInfo["GroupNamesFile"] = Options["--groupNamesFile"] OptionsInfo["FunctionalGroups"] = Options["--functionalGroups"] OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters( "--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters( "--outfileParams", Options["--outfileParams"], Options["--infile"], Options["--outfile"]) OptionsInfo["Overwrite"] = Options["--overwrite"] OptionsInfo["CountMode"] = False if re.match("^count$", Options["--mode"], re.I): OptionsInfo["CountMode"] = True OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters( "--mpParams", Options["--mpParams"]) OptionsInfo["UseChirality"] = False if re.match("^yes$", Options["--useChirality"], re.I): OptionsInfo["UseChirality"] = True
def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() OptionsInfo["Autocorr2DExclude"] = True if not re.match("^Yes$", Options["--autocorr2DExclude"], re.I): OptionsInfo["Autocorr2DExclude"] = False OptionsInfo["FragmentCount"] = True if not re.match("^Yes$", Options["--fragmentCount"], re.I): OptionsInfo["FragmentCount"] = False OptionsInfo["DescriptorNames"] = Options["--descriptorNames"] OptionsInfo["Mode"] = Options["--mode"] OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters( "--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters( "--outfileParams", Options["--outfileParams"], Options["--infile"], Options["--outfile"]) OptionsInfo["Overwrite"] = Options["--overwrite"] TextOutFileMode = False TextOutFileDelim = "" if MiscUtil.CheckFileExt(Options["--outfile"], "csv"): TextOutFileMode = True TextOutFileDelim = "," elif MiscUtil.CheckFileExt(Options["--outfile"], "tsv txt"): TextOutFileMode = True TextOutFileDelim = "\t" OptionsInfo["TextOutFileMode"] = TextOutFileMode OptionsInfo["TextOutFileDelim"] = TextOutFileDelim OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters( "--mpParams", Options["--mpParams"]) OptionsInfo["Precision"] = int(Options["--precision"]) OptionsInfo["SMILESOut"] = False if re.match("^Yes$", Options["--smilesOut"], re.I): OptionsInfo["SMILESOut"] = True
def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters( "--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters( "--outfileParams", Options["--outfileParams"]) OptionsInfo["Overwrite"] = Options["--overwrite"] if re.match("^UFF$", Options["--forceField"], re.I): ForceField = "UFF" UseUFF = True UseMMFF = False elif re.match("^MMFF$", Options["--forceField"], re.I): ForceField = "MMFF" UseUFF = False UseMMFF = True else: MiscUtil.PrintError( "The value, %s, specified for \"--forceField\" is not supported." % (Options["--forceField"], )) MMFFVariant = "MMFF94" if re.match( "^MMFF94$", Options["--forceFieldMMFFVariant"], re.I) else "MMFF94s" OptionsInfo["ForceField"] = ForceField OptionsInfo["MMFFVariant"] = MMFFVariant OptionsInfo["UseMMFF"] = UseMMFF OptionsInfo["UseUFF"] = UseUFF if UseMMFF: OptionsInfo["EnergyLabel"] = "%s_Energy" % MMFFVariant else: OptionsInfo["EnergyLabel"] = "%s_Energy" % ForceField OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters( "--mpParams", Options["--mpParams"]) OptionsInfo["QuietMode"] = True if re.match("^yes$", Options["--quiet"], re.I) else False
def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() AllowParamFailure = True if re.match("^No", Options["--allowParamFailure"], re.I): AllowParamFailure = False OptionsInfo["AllowParamFailure"] = AllowParamFailure AtomAliasesFormatMode = True if re.match("^DataField", Options["--chargesSDFormat"], re.I): AtomAliasesFormatMode = False OptionsInfo["AtomAliasesFormatMode"] = AtomAliasesFormatMode OptionsInfo["DataFieldLabel"] = Options["--dataFieldLabel"] MMFFChargesMode = False if re.match("^MMFF", Options["--mode"], re.I): MMFFChargesMode = True OptionsInfo["Mode"] = Options["--mode"] OptionsInfo["MMFFChargesMode"] = MMFFChargesMode OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters( "--mpParams", Options["--mpParams"]) OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters( "--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters( "--outfileParams", Options["--outfileParams"], Options["--infile"], Options["--outfile"]) OptionsInfo["Overwrite"] = Options["--overwrite"] OptionsInfo["NumIters"] = int(Options["--numIters"]) OptionsInfo["Precision"] = int(Options["--precision"])
def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters("--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["RefFile"] = Options["--reffile"] OptionsInfo["Scaffold"] = Options["--scaffold"] if re.match("^auto$", Options["--scaffold"], re.I): UseScaffoldMCS = True UseScaffoldSMARTS = False ScaffoldSMARTS = None else: UseScaffoldMCS = False UseScaffoldSMARTS = True ScaffoldSMARTS = OptionsInfo["Scaffold"] OptionsInfo["UseScaffoldMCS"] = UseScaffoldMCS OptionsInfo["UseScaffoldSMARTS"] = UseScaffoldSMARTS OptionsInfo["ScaffoldSMARTS"] = ScaffoldSMARTS OptionsInfo["ScaffoldPatternMol"] = None OptionsInfo["SpecifiedMCSParams"] = Options["--mcsParams"] ProcessMCSParameters() OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters("--outfileParams", Options["--outfileParams"]) OptionsInfo["Overwrite"] = Options["--overwrite"] OptionsInfo["AddHydrogens"] = True if re.match("^yes$", Options["--addHydrogens"], re.I) else False if re.match("^ETDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "ETDG" UseExpTorsionAnglePrefs = True UseBasicKnowledge = False elif re.match("^KDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "KDG" UseExpTorsionAnglePrefs = False UseBasicKnowledge = True elif re.match("^ETKDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "ETKDG" UseExpTorsionAnglePrefs = True UseBasicKnowledge = True elif re.match("^SDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "SDG" UseExpTorsionAnglePrefs = False UseBasicKnowledge = False else: MiscUtil.PrintError("The value, %s, specified for option \"-c, --conformerGenerator\" is not supported." % (Options["--conformerGenerator"])) OptionsInfo["ConformerGenerator"] = ConformerGenerator OptionsInfo["UseExpTorsionAnglePrefs"] = UseExpTorsionAnglePrefs OptionsInfo["UseBasicKnowledge"] = UseBasicKnowledge if re.match("^UFF$", Options["--forceField"], re.I): ForceField = "UFF" UseUFF = True UseMMFF = False elif re.match("^MMFF$", Options["--forceField"], re.I): ForceField = "MMFF" UseUFF = False UseMMFF = True else: MiscUtil.PrintError("The value, %s, specified for \"--forceField\" is not supported." % (Options["--forceField"],)) MMFFVariant = "MMFF94" if re.match("^MMFF94$", Options["--forceFieldMMFFVariant"], re.I) else "MMFF94s" OptionsInfo["ForceField"] = ForceField OptionsInfo["MMFFVariant"] = MMFFVariant OptionsInfo["UseMMFF"] = UseMMFF OptionsInfo["UseUFF"] = UseUFF OptionsInfo["ScaffoldRMSDOut"] = True if re.match("^yes$", Options["--scaffoldRMSDOut"], re.I) else False OptionsInfo["EnergyOut"] = True if re.match("^yes$", Options["--energyOut"], re.I) else False if UseMMFF: OptionsInfo["EnergyLabel"] = "%s_Energy" % MMFFVariant else: OptionsInfo["EnergyLabel"] = "%s_Energy" % ForceField OptionsInfo["EnforceChirality"] = True if re.match("^yes$", Options["--enforceChirality"], re.I) else False OptionsInfo["MaxConfs"] = int(Options["--maxConfs"]) OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters("--mpParams", Options["--mpParams"]) OptionsInfo["QuietMode"] = True if re.match("^yes$", Options["--quiet"], re.I) else False OptionsInfo["RemoveHydrogens"] = True if re.match("^yes$", Options["--removeHydrogens"], re.I) else False OptionsInfo["UseTethers"] = True if re.match("^yes$", Options["--useTethers"], re.I) else False
def ProcessOptions(): """Process and validate command line arguments and options""" MiscUtil.PrintInfo("Processing options...") # Validate options... ValidateOptions() OptionsInfo["Infile"] = Options["--infile"] OptionsInfo["InfileParams"] = MiscUtil.ProcessOptionInfileParameters( "--infileParams", Options["--infileParams"], Options["--infile"]) OptionsInfo["Outfile"] = Options["--outfile"] OptionsInfo["OutfileParams"] = MiscUtil.ProcessOptionOutfileParameters( "--outfileParams", Options["--outfileParams"]) OptionsInfo["Overwrite"] = Options["--overwrite"] OptionsInfo["AddHydrogens"] = True if re.match("^no$", Options["--addHydrogens"], re.I): OptionsInfo["AddHydrogens"] = False OptionsInfo["AlignConformers"] = True if re.match("^no$", Options["--alignConformers"], re.I): OptionsInfo["AlignConformers"] = False if re.match("^ETDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "ETDG" UseExpTorsionAnglePrefs = True UseBasicKnowledge = False elif re.match("^KDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "KDG" UseExpTorsionAnglePrefs = False UseBasicKnowledge = True elif re.match("^ETKDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "ETKDG" UseExpTorsionAnglePrefs = True UseBasicKnowledge = True elif re.match("^SDG$", Options["--conformerGenerator"], re.I): ConformerGenerator = "SDG" UseExpTorsionAnglePrefs = False UseBasicKnowledge = False OptionsInfo["ConformerGenerator"] = ConformerGenerator OptionsInfo["UseExpTorsionAnglePrefs"] = UseExpTorsionAnglePrefs OptionsInfo["UseBasicKnowledge"] = UseBasicKnowledge if re.match("^UFF$", Options["--forceField"], re.I): ForceField = "UFF" UseUFF = True UseMMFF = False SkipForceFieldMinimization = False elif re.match("^MMFF$", Options["--forceField"], re.I): ForceField = "MMFF" UseUFF = False UseMMFF = True SkipForceFieldMinimization = False else: ForceField = "None" UseUFF = False UseMMFF = False SkipForceFieldMinimization = True MMFFVariant = "MMFF94" if re.match( "^MMFF94$", Options["--forceFieldMMFFVariant"], re.I) else "MMFF94s" OptionsInfo["SkipForceFieldMinimization"] = SkipForceFieldMinimization OptionsInfo["ForceField"] = ForceField OptionsInfo["MMFFVariant"] = MMFFVariant OptionsInfo["UseMMFF"] = UseMMFF OptionsInfo["UseUFF"] = UseUFF OptionsInfo["EnergyOut"] = True if re.match( "^yes$", Options["--energyOut"], re.I) else False if UseUFF: EnergyLabel = "UFF_Energy" elif UseMMFF: EnergyLabel = "%s_Energy" % MMFFVariant else: EnergyLabel = "Energy" OptionsInfo["EnergyLabel"] = EnergyLabel OptionsInfo["EnforceChirality"] = True if re.match("^no$", Options["--enforceChirality"], re.I): OptionsInfo["EnforceChirality"] = False OptionsInfo["EnergyWindow"] = float(Options["--energyWindow"]) EmbedRMSDCutoff = -1.0 if not re.match("^none$", Options["--embedRMSDCutoff"], re.I): EmbedRMSDCutoff = float(Options["--embedRMSDCutoff"]) OptionsInfo["EmbedRMSDCutoff"] = EmbedRMSDCutoff EnergyRMSDCutoff = -1.0 if not re.match("^none$", Options["--energyRMSDCutoff"], re.I): EnergyRMSDCutoff = float(Options["--energyRMSDCutoff"]) OptionsInfo["EnergyRMSDCutoff"] = EnergyRMSDCutoff OptionsInfo["MaxIters"] = int(Options["--maxIters"]) OptionsInfo["MaxConfs"] = Options["--maxConfs"] OptionsInfo["MPMode"] = True if re.match("^yes$", Options["--mp"], re.I) else False OptionsInfo["MPParams"] = MiscUtil.ProcessOptionMultiprocessingParameters( "--mpParams", Options["--mpParams"]) OptionsInfo["QuietMode"] = True if re.match("^yes$", Options["--quiet"], re.I) else False RandomSeed = -1 if not re.match("^auto$", Options["--randomSeed"], re.I): RandomSeed = int(Options["--randomSeed"]) OptionsInfo["RandomSeed"] = RandomSeed OptionsInfo["RemoveHydrogens"] = True if re.match("^no$", Options["--removeHydrogens"], re.I): OptionsInfo["RemoveHydrogens"] = False