Fragments: one definition (atoms, charge, multiplicity) for paramagnetic systems, MO guesses, counterpoise, MO diagrams and QM/MM
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 12/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Domain
- desktop
Research direction
This is a design proposal, not a starter task: the payload names no source files, tests or entry points. Read the linked issues #132, #172, #178, #201 and #242 to see how fragments are defined today, then the Builder's atom list and selection code in the repository. Done means a fragment definition in the Builder (selection, charge, multiplicity, storage) that works for one paramagnetic example, such as a Cu(II) dimer, with generated high-spin and broken-symmetry inputs checked by running the code. Agree the design with the maintainers before writing code.
Written by the indexing model from the issue text.
Description
Many calculation types need parts of a molecule defined as fragments, each with its own properties. Today each feature that needs them defines its own: the MO diagram (#132, #172), fragment-orbital analysis (#201), counterpoise (#178), MD force-field parts (#242). This issue proposes one fragment definition, kept with the structure and used by all of them.
Defining fragments (Builder)
- Select atoms in the viewer (picking, box, by molecule (connected component), by residue or by element) or in the Builder's atom list (rows, with shift/ctrl for ranges), and assign them to a numbered or named fragment. The atom list gets a Fragment column, editable there too. Show fragments by colour.
- Per fragment: charge and spin multiplicity, plus a name.
- Check consistency: the sum of fragment charges equals the total charge; electron count and multiplicity parity per fragment.
- The total multiplicity follows from the fragments' spins and how they couple: ferromagnetic (high spin) or antiferromagnetic (broken symmetry). The user chooses.
- Fragments are stored with the structure and survive saving, duplicating a calculation and editing atoms (new atoms get no fragment).
Uses
- Paramagnetic and broken-symmetry systems (first target). Unrestricted DFT on systems with several metal centres or radicals: a fragment guess with per-fragment charge and multiplicity, then high-spin and broken-symmetry solutions (e.g. exchange coupling J).
- Gaussian: atom tags
(Fragment=n),Guess=Fragment=Nwith per-fragment charge/multiplicity pairs on the charge line. - ORCA: atom fragment tags,
! BrokenSym M,Nor%scf FlipSpin, or a fragment-based guess. - NWChem: fragment guess (
vectors fragment) from separate fragment calculations. - ECCE-QM: a fragment-superposition guess with spin flips, as a later step.
- Gaussian: atom tags
- Initial guess from fragment MOs (with #75, basis projection): converge each fragment, combine.
- Counterpoise / BSSE (#178): fragments define the ghost-atom calculations (Gaussian
Counterpoise=N; ORCA and NWChem via generated ghost-atom jobs). - MO diagrams and fragment-orbital analysis (#132, #172, #201): fragments from this definition instead of a separate one.
- QM/MM and ONIOM layers: fragments marked as QM or MM region (Gaussian ONIOM, ORCA QM/MM, NWChem QM/MM); with #242 for force-field assignment of MM parts.
- Energy decomposition where a code supports it (e.g. ORCA LED/EDA, NWChem fragment-based methods).
First step
The fragment definition in the Builder (selection, charge, multiplicity, storage), and its use for paramagnetic systems with one code (Gaussian or ORCA): a two-centre example (e.g. a Cu(II) dimer) set up entirely in the GUI, high-spin and broken-symmetry inputs generated and checked by running the code.
- 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 1/5 Under an hour Newbie friendliness 70/100
FriendsofECCE/ECCE#353 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
FriendsofECCE/ECCE#336 · 1 comment ·
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
FriendsofECCE/ECCE#355 ·
-
Icons in MacOSOpenenhancement
Difficulty 5/5 Over a week Newbie friendliness 18/100
FriendsofECCE/ECCE#354 · 4 comments ·
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
FriendsofECCE/ECCE#351 ·
All issues in FriendsofECCE/ECCE
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
Maintainers usually reply within 1 day
-
base-files: 82_config_generate: regenerate /etc/board.json if 0-bytes / truncated after power cutOpen
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
openwrt/openwrt#25940 · 5 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
FujiNetWIFI/fujinet-lib#186 ·
Maintainers usually reply within 1 day