Builder: metal–π bonds cannot be made to ring carbons (Metal order still needs nubs)
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 40/100
Research direction
Start in Fragment::bondAtoms and BondEditCmd, where Builder bonds currently go between two nubs, then check how addBond is reached in Bond mode with the Metal order. The change lets a Metal bond join two picked atoms directly without consuming nubs or hydrogens, while the align prompt for two molecules keeps working. Done when Fe(PPh3)3 plus benzene gets six Metal bonds to ring carbons with no change in atom count, and ferrocene can be built from two Cp⁻ rings. The typo fix ("unambigously") is part of the same change.
Written by the indexing model from the issue text.
Description
Seen: ECCE 9.1.0. A tetrahedral Fe with three PPh3, then a benzene from the Structure Library. Inserting benzene: "Cannot unambigously connect fragments. Please select the sites that should be bonded." Bond mode with the Metal (metal–π) order, Fe to a ring carbon: "No bond sites are available to create this bond."
Cause: every bond the Builder makes goes between two nubs (Fragment::bondAtoms, BondEditCmd), including the Metal order (0.5). Ring carbons of benzene, Cp⁻ or an alkene have no nub (all valences used), so a metal–π bond to them cannot be made. Elsewhere the Builder already treats Metal bonds as not counting toward valence (shape and hydrogen placement ignore them), so requiring nubs here is inconsistent.
Fix: a Metal bond neither needs nor consumes nubs: in Bond mode with the Metal order, the two picked atoms are bonded directly (addBond), and nubs and hydrogens of both atoms stay as they are. With two molecules, the align question keeps working as now. Test: Fe(PPh3)3 + benzene, six Metal bonds to the ring carbons, no change in atom count; ferrocene from two Cp⁻.
Also: "unambigously" in the first message → "unambiguously".
- Dominant language
- C
- Stars
- 10
- Forks
- 8
- Avg merge
- 21m
- Merged PRs (30d)
- 1
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from FriendsofECCE/ECCE
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
FriendsofECCE/ECCE#336 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
FriendsofECCE/ECCE#339 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 28/100
FriendsofECCE/ECCE#338 · 2 comments ·
-
Basis Set Tool: periodic table cut off on the right; elements 110-118 still have placeholder namesOpen
Difficulty 4/5 3-5 days Newbie friendliness 40/100
FriendsofECCE/ECCE#337 ·
-
Difficulty 5/5 Over a week Newbie friendliness 8/100
FriendsofECCE/ECCE#335 ·
All issues in FriendsofECCE/ECCE
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
Maintainers usually reply within 1 day
-
`inverse()` of a controlled `CUGate` drops the phase parameter γPossibly taken @rupasri118 claimed this today. Openbug mod: circuit
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Qiskit/qiskit#17223 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
OpenPrinting/libcupsfilters#284 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
libsdl-org/SDL#16530 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
fw876/helloworld#2067 ·
Maintainers usually reply within 1 day