$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, int timeout) | |
Constructs an inspector with a custom timeout limiet. 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 AttachmentPoint
s 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 AttachmentPoint
s 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 68 of file FragmentIsomorphismInspector.java.
References denoptim.graph.FragmentIsomorphismInspector.fragA, and denoptim.graph.FragmentIsomorphismInspector.fragB.
denoptim.graph.FragmentIsomorphismInspector.FragmentIsomorphismInspector | ( | Fragment | fragA, |
Fragment | fragB, | ||
int | timeout | ||
) |
Constructs an inspector with a custom timeout limiet.
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 84 of file FragmentIsomorphismInspector.java.
References denoptim.graph.FragmentIsomorphismInspector.fragA, denoptim.graph.FragmentIsomorphismInspector.fragB, denoptim.graph.Fragment.getJGraphFragIsomorphism(), 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 166 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 119 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(), 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().