$darkmode
|
DENOPTIM
|
Public Member Functions | |
| FragmentIsomorphismInspector (Fragment fragA, Fragment fragB) | |
| Constructs a default inspector with a timeout runtime of 60 seconds. More... | |
| FragmentIsomorphismInspector (Fragment fragA, Fragment fragB, boolean ignoreAPClasses) | |
| Constructs a default inspector with a timeout runtime of 60 seconds. More... | |
| FragmentIsomorphismInspector (Fragment fragA, Fragment fragB, int timeout, boolean ignoreAPClasses) | |
| Constructs an inspector with a custom timeout limit. More... | |
| boolean | isomorphismExists () |
| Checks if an isomorphism exists between the two fragments. More... | |
| Iterator< GraphMapping< FragIsomorphNode, FragIsomorphEdge > > | getMappings () |
Protected Attributes | |
| boolean | reportTimeoutIncidents = true |
| Flag indicating if we print earning in case of timeout or not. More... | |
Package Attributes | |
| VF2GraphIsomorphismInspector< FragIsomorphNode, FragIsomorphEdge > | vf2 |
| Implementation of the Vento-Foggia 2 algorithm. More... | |
Private Attributes | |
| int | timeout |
| The maximum time we give the VF2 algorithm (seconds) More... | |
| Fragment | fragA |
| One fragment being analyzed. More... | |
| Fragment | fragB |
| The other fragment being analyzed. More... | |
Inspector for isomorphism on fragments. The graph representation considered is one where both atoms and AttachmentPoints are represented as graph nodes, and edges are either bonds or atom-to-attachment point connections.
Effectively, this class considers the composition and connectivity (including that of AttachmentPoints when comparing the fragments. Geometry and stereochemistry are not considered.
This works with the VF2GraphIsomorphismInspector, see the dedicated documentation for information of pathological cases.
Definition at line 34 of file FragmentIsomorphismInspector.java.
| denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector | ( | Fragment | fragA, |
| Fragment | fragB | ||
| ) |
Constructs a default inspector with a timeout runtime of 60 seconds.
| fragA | |
| fragB |
Definition at line 69 of file FragmentIsomorphismInspector.java.
References denoptim.graph.FragmentIsomorphismInspector.fragA, and denoptim.graph.FragmentIsomorphismInspector.fragB.
| denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector | ( | Fragment | fragA, |
| Fragment | fragB, | ||
| boolean | ignoreAPClasses | ||
| ) |
Constructs a default inspector with a timeout runtime of 60 seconds.
| fragA | |
| fragB | |
| ignoreAPClasses |
Definition at line 82 of file FragmentIsomorphismInspector.java.
References denoptim.graph.FragmentIsomorphismInspector.fragA, and denoptim.graph.FragmentIsomorphismInspector.fragB.
| denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector | ( | Fragment | fragA, |
| Fragment | fragB, | ||
| int | timeout, | ||
| boolean | ignoreAPClasses | ||
| ) |
Constructs an inspector with a custom timeout limit.
| fragA | one fragment to compare |
| fragB | the other fragment to compare |
| timeout | maximum amount of time (milliseconds) given to the inspector for performing any task. associated with returning from any public method in this class. |
Definition at line 99 of file FragmentIsomorphismInspector.java.
References denoptim.graph.FragmentIsomorphismInspector.fragA, denoptim.graph.FragmentIsomorphismInspector.fragB, denoptim.graph.Fragment.getJGraphFragIsomorphism(), denoptim.graph.FragIsomorphNode.isAtm, denoptim.graph.FragIsomorphEdge.label, denoptim.graph.FragIsomorphNode.label, denoptim.graph.FragmentIsomorphismInspector.timeout, and denoptim.graph.FragmentIsomorphismInspector.vf2.
| Iterator< GraphMapping< FragIsomorphNode, FragIsomorphEdge > > denoptim.graph.FragmentIsomorphismInspector.getMappings | ( | ) |
Definition at line 192 of file FragmentIsomorphismInspector.java.
References denoptim.graph.FragmentIsomorphismInspector.fragA, denoptim.graph.FragmentIsomorphismInspector.fragB, denoptim.graph.FragmentIsomorphismInspector.reportTimeoutIncidents, denoptim.graph.FragmentIsomorphismInspector.timeout, denoptim.graph.Fragment.toJson(), denoptim.graph.FragmentIsomorphismInspector.vf2, and denoptim.io.DenoptimIO.writeVertexesToSDF().
Referenced by denoptim.fragmenter.FragmentAlignement.FragmentAlignement().
| boolean denoptim.graph.FragmentIsomorphismInspector.isomorphismExists | ( | ) |
Checks if an isomorphism exists between the two fragments.
true is an isomorphism has been found. Definition at line 145 of file FragmentIsomorphismInspector.java.
References denoptim.graph.FragmentIsomorphismInspector.fragA, denoptim.graph.FragmentIsomorphismInspector.fragB, denoptim.graph.FragmentIsomorphismInspector.reportTimeoutIncidents, denoptim.graph.FragmentIsomorphismInspector.timeout, denoptim.graph.Fragment.toJson(), denoptim.graph.FragmentIsomorphismInspector.vf2, and denoptim.io.DenoptimIO.writeVertexesToSDF().
Referenced by denoptim.fragmenter.FragmentAlignement.FragmentAlignement(), denoptim.graph.Fragment.isIsomorphicTo(), denoptim.graph.FragmentIsomorphismInspectorTest.testIsomorphismExists(), and denoptim.graph.FragmentIsomorphismInspectorTest.testTimeout().
|
private |
One fragment being analyzed.
Definition at line 44 of file FragmentIsomorphismInspector.java.
Referenced by denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector(), denoptim.graph.FragmentIsomorphismInspector.getMappings(), and denoptim.graph.FragmentIsomorphismInspector.isomorphismExists().
|
private |
The other fragment being analyzed.
Definition at line 49 of file FragmentIsomorphismInspector.java.
Referenced by denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector(), denoptim.graph.FragmentIsomorphismInspector.getMappings(), and denoptim.graph.FragmentIsomorphismInspector.isomorphismExists().
|
protected |
Flag indicating if we print earning in case of timeout or not.
Definition at line 54 of file FragmentIsomorphismInspector.java.
Referenced by denoptim.graph.FragmentIsomorphismInspector.getMappings(), and denoptim.graph.FragmentIsomorphismInspector.isomorphismExists().
|
private |
The maximum time we give the VF2 algorithm (seconds)
Definition at line 39 of file FragmentIsomorphismInspector.java.
Referenced by denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector(), denoptim.graph.FragmentIsomorphismInspector.getMappings(), and denoptim.graph.FragmentIsomorphismInspector.isomorphismExists().
|
package |
Implementation of the Vento-Foggia 2 algorithm.
Definition at line 59 of file FragmentIsomorphismInspector.java.
Referenced by denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector(), denoptim.graph.FragmentIsomorphismInspector.getMappings(), and denoptim.graph.FragmentIsomorphismInspector.isomorphismExists().