Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Fragments: one definition (atoms, charge, multiplicity) for paramagnetic systems, MO guesses, counterpoise, MO diagrams and QM/MM

Ouverte
#252 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
12/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Domaine
desktop

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

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

  1. 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=N with per-fragment charge/multiplicity pairs on the charge line.
    • ORCA: atom fragment tags, ! BrokenSym M,N or %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.
  2. Initial guess from fragment MOs (with #75, basis projection): converge each fragment, combine.
  3. Counterpoise / BSSE (#178): fragments define the ghost-atom calculations (Gaussian Counterpoise=N; ORCA and NWChem via generated ghost-atom jobs).
  4. MO diagrams and fragment-orbital analysis (#132, #172, #201): fragments from this definition instead of a separate one.
  5. 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.
  6. 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.

Langage dominant
C
Étoiles
10
Forks
8
Merge moyen
21 min
PR mergées (30 j)
1

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de FriendsofECCE/ECCE

Toutes les issues de FriendsofECCE/ECCE

Issues similaires

Plus d'issues C

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.