synchronized void printMatch(BaseMapping isomorphism) { int overlap = isomorphism.getFirstAtomMapping().isEmpty() ? 0 : isomorphism.getFirstAtomMapping().getCount(); try { System.out.println("Q: " + isomorphism.getQuery().getID() + " T: " + isomorphism.getTarget().getID() + " atoms: " + isomorphism.getQuery().getAtomCount() + " atoms: " + isomorphism.getTarget().getAtomCount() + " overlaps: " + overlap + " mcs " + isomorphism.getFirstAtomMapping().getCommonFragmentAsSMILES()); } catch (CloneNotSupportedException | CDKException ex) { LOGGER.error(Level.SEVERE, "Print MCS ", ex.getMessage()); } }
+ " unique matches of size " + comparison.getFirstAtomMapping().getCount()); LOGGER.debug("MCSS for task " + taskNumber + " has " + querySeed.getAtomCount() + " atoms, and " + querySeed.getBondCount() + " bonds"); LOGGER.debug("Target for task " + taskNumber + " has " + target.getAtomCount() + " atoms, and " + target.getBondCount() + " bonds");
+ " unique matches of size " + comparison.getFirstAtomMapping().getCount()); logger.debug("MCSS for task " + taskNumber + " has " + querySeed.getAtomCount() + " atoms, and " + querySeed.getBondCount() + " bonds"); logger.debug("Target for task " + taskNumber + " has " + target.getAtomCount() + " atoms, and " + target.getBondCount() + " bonds");
+ " unique matches of size " + comparison.getFirstAtomMapping().getCount()); logger.debug("MCSS for task " + taskNumber + " has " + querySeed.getAtomCount() + " atoms, and " + querySeed.getBondCount() + " bonds"); logger.debug("Target for task " + taskNumber + " has " + target.getAtomCount() + " atoms, and " + target.getBondCount() + " bonds");
+ " unique matches of size " + comparison.getFirstAtomMapping().getCount()); logger.debug("MCSS for task " + taskNumber + " has " + querySeed.getAtomCount() + " atoms, and " + querySeed.getBondCount() + " bonds"); logger.debug("Target for task " + taskNumber + " has " + target.getAtomCount() + " atoms, and " + target.getBondCount() + " bonds");
+ " unique matches of size " + comparison.getFirstAtomMapping().getCount()); LOGGER.debug("MCSS for task " + taskNumber + " has " + querySeed.getAtomCount() + " atoms, and " + querySeed.getBondCount() + " bonds"); LOGGER.debug("Target for task " + taskNumber + " has " + target.getAtomCount() + " atoms, and " + target.getBondCount() + " bonds");
+ " unique matches of size " + comparison.getFirstAtomMapping().getCount()); logger.debug("MCSS for task " + taskNumber + " has " + querySeed.getAtomCount() + " atoms, and " + querySeed.getBondCount() + " bonds"); logger.debug("Target for task " + taskNumber + " has " + target.getAtomCount() + " atoms, and " + target.getBondCount() + " bonds");
for (IAtomContainer target : atomContainerSet) { BaseMapping smsd = run(mcsAtomContainer, target, filter, matchBonds, matchRings, matchBonds); mappings.add(getIndexMapping(smsd.getFirstAtomMapping())); secondRoundTargets.add( builder.newInstance(IAtomContainer.class, smsd.getFirstAtomMapping().getTarget()));
String targetPath = argumentHandler.getTargetFilepath(); IAtomContainer queryLocal = query.getBuilder().newInstance(IAtomContainer.class, smsd.getFirstAtomMapping().getQuery()); IAtomContainer targetLocal = target.getBuilder().newInstance(IAtomContainer.class, smsd.getFirstAtomMapping().getTarget()); Map<IAtom, IAtom> mcs = smsd.getFirstAtomMapping().getMappingsByAtoms(); int nAtomsMatched = (mcs == null) ? 0 : mcs.size(); double tanimotoSimilarity = smsd.getTanimotoSimilarity(); Map<Integer, Integer> mcsNumber = smsd.getFirstAtomMapping().getMappingsByIndex(); double stereoScore = smsd.getStereoScore(0); outputHandler.printHeader(queryPath, targetPath, nAtomsMatched); outputHandler.writeResults(queryLocal, targetLocal, tanimotoGraph, euclidianGraph, nAtomsMatched, executionTime, smsd.getFirstAtomMapping());
query = query.getBuilder().newInstance(IAtomContainer.class, smsd.getFirstAtomMapping().getQuery()); target = target.getBuilder().newInstance(IAtomContainer.class, smsd.getFirstAtomMapping().getTarget()); long endTime = System.currentTimeMillis(); long executionTime = endTime - startTime; outputHandler.writeQueryMol(smsd.getFirstAtomMapping().getQuery()); outputHandler.writeTargetMol(smsd.getFirstAtomMapping().getTarget()); Map<IAtom, IAtom> mcs = smsd.getFirstAtomMapping().getMappingsByAtoms(); int nAtomsMatched = (mcs == null) ? 0 : mcs.size(); double tanimotoSimilarity = smsd.getTanimotoSimilarity(); Map<Integer, Integer> mcsNumber = smsd.getFirstAtomMapping().getMappingsByIndex(); double stereoScore = smsd.getStereoScore(0); outputHandler.printHeader(queryPath, targetPath, nAtomsMatched); outputHandler.writeResults(query, target, tanimotoGraph, euclidianGraph, nAtomsMatched, executionTime, smsd.getFirstAtomMapping()); if (mcs != null && !mcs.isEmpty() && argumentHandler.isImage()) { String qName = inputHandler.getQueryName(); IAtomContainer subgraph = smsd.getFirstAtomMapping().getCommonFragment(); String outpath = argumentHandler.getOutputFilepath(); String outtype = argumentHandler.getOutputFiletype();