GROMACS: Force Field Tool — per-part force-field assignment, compatibility checks, downloadable catalogue
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 25/100
Direção de pesquisa
Start with the GROMACS implementation in #106 and the MINFF work in #241, then review the Basis Set Tool as the precedent for downloads and per-site libraries. The issue calls for a wx-free component, command-line entry point, tests, and a dialog; the design questions and compatibility rules define substantial design work. Done means catalogue entries and assignments generate validated topologies, compatibility checks and checksum-verified downloads are tested.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Part of the GROMACS implementation (#106): this is the Prepare step, i.e. #106 option 2, generalised.
Goal
A Force Field Tool, analogous to the Basis Set Tool, which lets the user:
- assign force fields to different parts of a system (e.g. a mineral slab, water, ions, an organic adsorbate);
- check that the chosen combination is consistent;
- generate the GROMACS topology from it.
Force fields are downloaded on demand from their sources, not bundled with ECCE.
Assignment per part, not per element
Basis sets are chosen per element because atoms are independent there. Force-field atom types and charges depend on bonding and environment, so the unit of assignment is a part of the system:
- a molecule type, residue or fragment, using the Builder's existing fragments/residues (as used for NWChem MD segments);
- or an explicit selection.
Example assignments:
| Part | Force field |
|---|---|
| Mineral slab | MINFF (#241) |
| Water | OPC3 |
| Na⁺/Cl⁻ | ion set matching the water model |
| Organic adsorbate | GAFF2 or OpenFF |
Compatibility checks
A GROMACS topology has a single [ defaults ] section, so every part must share these settings:
- non-bonded function type;
- combining rule;
gen-pairs;fudgeLJandfudgeQQ(1-4 scaling).
Parts must also be consistent in:
- the water model their parameters were fitted with;
- ion parameters matching that water model.
Known incompatibilities include different 1-4 scaling between AMBER- and CHARMM-family force fields, and a different combining rule for OPLS-AA. The tool:
- shows these properties for every catalogue entry;
- refuses combinations with conflicting
[ defaults ]; - warns about water-model and ion mismatches;
- checks that each part's net charge is an integer and reports the total charge.
Catalogue and downloads
ECCE ships a small catalogue file, not the force fields themselves. Each entry records:
- name, version, and source URL pinned to a release or commit;
- checksum;
- licence, shown before download;
- its
[ defaults ]properties, water model and scope (biomolecules, organics, minerals, ions, water); - how types and charges are assigned:
pdb2gmx, for force fields with residue databases;- atomipy, for MINFF and CLAYFF;
- OpenFF tooling, for small organics;
- or none, for ready-made
.itpfiles such as water and ions.
Force fields are downloaded on first use into a per-user cache. A site can configure a shared read-only copy, for offline teaching labs. The Basis Set Tool's per-site library is the precedent.
Downloading per user also means ECCE does not redistribute force-field files, so their licences stay with the user.
Output
The assignment is stored with the calculation/study, as the basis set is. ECCE then writes:
topol.top, with one[ defaults ]section, the#includeof each force field and the molecule.itpfiles;- the
.grofile with the box.
The MD tasks of #106 (EM, NVT/NPT, MD) then run on these files.
First catalogue (proposal)
- GROMACS's built-in force fields (
share/gromacs/top/*.ff), viapdb2gmx. - CHARMM36, GROMACS port.
- MINFF and CLAYFF via atomipy (#241).
- Water models: SPC/E, TIP3P, TIP4P/2005, OPC3, OPC.
- Ion sets matching those water models.
Later candidates:
- Open Force Field (OpenFF) for small organics;
- charges from QM calculations in ECCE (RESP/ESP, #179).
Design rules
- Typing, charge assignment, compatibility checks and topology writing live in a wx-free component with a command-line entry point and tests. The dialog only gathers choices and shows results.
- Tests:
- every compatibility rule has a positive and a negative case;
- each first-catalogue entry produces a topology that passes
gmx gromppand a short EM; - downloads are checksum-verified.
- Platforms: Linux and macOS (Homebrew
gromacs); Windows later.
Questions for GROMACS users
- Which force fields, water models and ion sets should the first catalogue contain?
- Which mixing conventions are used in practice, e.g. CLAYFF with organics, and which water model with MINFF?
- Is per-fragment assignment enough, or is per-atom override needed for special cases, e.g. reactive edge sites?
- Is a site-wide shared cache needed for teaching?
Related: #106 (GROMACS activation and MD workflow), #241 (MINFF), #179 (force-field charges for new ions and solvents).
- Linguagem predominante
- C
- Estrelas
- 10
- Forks
- 8
- Merge médio
- 57min
- PRs com merge (30d)
- 2
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de FriendsofECCE/ECCE
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
FriendsofECCE/ECCE#336 · 1 comentário ·
-
ORCA: NEB and NEB-CI run types, and the NEB path shown like an IRCTalvez já em andamento @ohlincha assumiu hoje. Aberta
FriendsofECCE/ECCE#471 · 1 responsável ·
-
Viewer split: molecule and MO diagram / density map / spectrum side by side in one windowTalvez já em andamento @ohlincha assumiu hoje. Aberta
FriendsofECCE/ECCE#469 · 1 responsável ·
-
NEB-TS / QST: warn when the reactant or product was optimised at another level of theoryTalvez já em andamento @ohlincha assumiu hoje. Aberta
FriendsofECCE/ECCE#468 · 1 comentário · 1 responsável ·
-
Progress box: nothing shown during the NEB phase of an ORCA NEB-TS runTalvez já em andamento @ohlincha assumiu hoje. Aberta
FriendsofECCE/ECCE#466 · 1 responsável ·
Todas as issues de FriendsofECCE/ECCE
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
libsdl-org/SDL#16577 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
Mantenedores costumam responder em até 1 dia
-
halt_error adds a trailing newline for non-string input, contrary to the manualTalvez já em andamento @Huang-404-Q assumiu hoje. Aberta
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 88/100
Mantenedores costumam responder em até 2 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
MerginMaps/geodiff#272 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
open-quantum-safe/liboqs#2644 ·
Mantenedores costumam responder em até 1 dia