Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mancude rings refuse to fuse? #30

Open
dan2097 opened this issue Aug 23, 2016 · 1 comment
Open

Mancude rings refuse to fuse? #30

dan2097 opened this issue Aug 23, 2016 · 1 comment
Labels
bug Something isn't working minor

Comments

@dan2097
Copy link
Owner

dan2097 commented Aug 23, 2016

Original report by Steve Chapman (Bitbucket: isomerdesign, ).


I tried to construct this structure: 11,12-dihydroindolo[2,3-a]carbazole, by instead approaching the name as 11,12-dihydrobenzo[2,1-b:3,4-b']diindole.

That does in fact work, but the fully conjugated (didehydro) name benzo[2,1-b:3,4-b']diindole is rebuffed with "Could not assign all higher order bonds."

Still, this name benzo[1,2-b:3,4-b']diindole, and this name benzo[2,1-b:4,5-b']diindole are accepted, which seems odd. This name indolo[2,3-a]carbazole is also accepted.

@dan2097
Copy link
Owner Author

dan2097 commented Aug 23, 2016

Original comment by Daniel Lowe (Bitbucket: dan2097, GitHub: dan2097).


Thanks for the bug report.

There does appear to be a perfectly reasonable arrangement of double bonds for the fully unsaturated ring system, so it is indeed a bug. The algorithm OPSIN uses for assigning double bonds isn't really right as it doesn't have a provision for backtracking if it assigns a wrong bond as double. If this happens it can get into a situation where it knows two atoms are both supposed to have a double bond, but the atoms are not next to each other, and hence that error message is produced. Admitedly I'm surprised that molecule fails as I thought the double bonds were assigned in the same order as the numbering of the ring system which in this case should give a valid kekule form. That's a nice case to motivate me to actually rewrite the algorithm, I'd not encountered many cases with the issue which weren't also ambigous. Ideally the double bond assignment algorithm should also report if it is ambiguous where to place the double bonds.

I should really update that error message to say "Could not assign all double bonds", or maybe "Could not kekulise"

@dan2097 dan2097 added minor bug Something isn't working labels Apr 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working minor
Projects
None yet
Development

No branches or pull requests

1 participant