Structure match
MolecularGraph.fastquerymatches
— Methodfastquerymatches(mol::UndirectedGraph, query::QueryMol; kwargs...
) -> Dict{Int,Int}
Generate query match mappings between mol
and query
. If no match found, return nothing.
The query
should not have any component level expression that means it should not have any dots (.
). This is intended for use in functional group detection.
MolecularGraph.isquerymatch
— Methodisquerymatch(mol, query; kwargs...)
Return whether mol matches with the query.
MolecularGraph.querymatch
— Methodquerymatch(mol::UndirectedGraph, query::QueryMol; kwargs...) -> Dict{Int,Int}
Generate substructure match mappings between mol1
and mol2
. If no match found, return nothing.
This accepts also disconnected single atom but returns only the first match. This function is intended for use in SMARTS query search
MolecularGraph.structmatches
— Methodstructmatches(mol1::UndirectedGraph, mol2::UndirectedGraph; kwargs...) -> Iterator
Generate molecular graph match mappings between mol1
and mol2
. If no match found, return nothing.
MolecularGraph.substructmatches
— Methodsubstructmatches(mol1::UndirectedGraph, mol2::UndirectedGraph; kwargs...) -> Iterator
Generate substructure match mappings between mol1
and mol2
. If no match found, return nothing.
The mapping is based on only edge induced subgraph isomorphism and therefore it does not care disconnected single atom matches. This function is intended for use in substructure search. If you need single atom SMARTS match (ex. [#16;X2;!R]), see querymatch
.