This is because you are using the CDK aromaticity model whilst in this case
the Daylight model is the correct one. It's "correct" because Daylight
created SMARTS so anything to do with SMARTS should preferably be using
this model. If all toolkits did this, SMARTS patterns (and SMIRKS
transforms) would be a lot more portable. Daylight says this molecule
*is* aromatic
(see screenshot).
The *SMARTSQueryTool* is unofficially deprecated, the newer class is
SmartsPattern
<http://cdk.github.io/cdk/latest/docs/api/index.html?org/openscience/cdk/smiles/smarts/SmartsPattern.html>
and
it uses the Daylight model. You may also find the *SmartsFragmentExtractor
<http://cdk.github.io/cdk/latest/docs/api/index.html?org/openscience/cdk/smarts/SmartsFragmentExtractor.html>*
useful, writing good SMARTS is some what of an art form, this class helps.
If you want to match patterns with a different aromaticity model you need
to use the base *Pattern* class and provide it a query molecule.
John
[image: image.png]
On Fri, 24 Aug 2018 at 06:18, Iris E. <iris.ecker...@gmail.com> wrote:
>
>
>
> Hey,
>
> I am currentyl working on a project using CDK, where I want to generate
> aromatic fragment SMARTS from an initial molecule.
> In further course of the project I want to relocate these fragments in
> their inital molecules.
>
> For the fragment SMARTS generation I aromatize the inital molecules using
> the Aromaticity class:
> Aromaticity aromaticity = new Aromaticity(ElectronDonation.cdk(),
> Cycles.all())
>
> For the relocation I use the SMARTSQueryTool class:
> SMARTSQueryTool sqt = new SMARTSQueryTool(fragmentSmarts,
> DefaultChemObjectBuilder.getInstance());
> System.out.println(sqt.matches(molecule));
>
> By doing this, I discovered the following problem.
>
> Example:
> * inital molecules SMILES: CCNC1=NC(=O)N=C(NC(C)(C)C)N1
> * fragment SMARTS: C(=NC=O)N, CCNC=N
>
> When I am aromatizing the molecule as described above, I get a
> non-aromatic ring within the molecule, what is reflected by the found
> fragments.
> When I try to find the the fragment CCNC=N in the inital molecule via the
> SMARTSQueryTool, the method returns false for not finding it.
> If I change the the fragment SMARTS to CCNcn, the method returns true.
>
> I reproduced this problem by using this online tool, too:
> http://www.simolecule.com/cdkdepict/depict.html
>
> This leads me to the question, if the
> SMARTSQueryTool internally aromatizes the molecule. The Aromaticity class
> seems to aromatize the molecule correct by flagging the ring as
> non-aromatic, because this molecule is not an aromatic compound. The ring
> features a SP2-
> hybridised double bond charateristic, but the molecule is not planar and
> its electrons are not delocalized. On request, I can provide further
> examples.
>
> Now i am wondering why the
> SMARTSQueryTool is make an own aromaticity on the molecule and under
> which conditions?
>
> I hope you can help me with this issue.
>
>
> Kind regards
> ,
>
>
> Iris
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Cdk-user mailing list
> Cdk-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/cdk-user
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Cdk-user mailing list
Cdk-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdk-user