Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

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

Abierto
#252 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
12/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Área
desktop

Línea de trabajo

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.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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.

Lenguaje dominante
C
Estrellas
10
Forks
8
Merge medio
21 min
PR fusionados (30 d)
1

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de FriendsofECCE/ECCE

Todos los issues de FriendsofECCE/ECCE

Issues similares

Más issues de C

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.