Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

CP2K: register the code, with a first editor, input generator and parser (periodic DFT+U geometry optimisation)

Aberta
#329 2 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
8/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
shell
Domínio
hpc

Direção de pesquisa

This is a multi-stage feature, so start by reading how an existing code is registered: the EDML files under scripts/codereg and the code lists, then the sh job scripts that launch cp2k.psmp or cp2k.ssmp. Stages two to four (editor, input generator, output parser) each need the existing editor and parser patterns for another code. Done means the first-case calculation is generated, run and parsed on the test cell, which the issue asks to be built from a real job.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

CP2K is one of the target codes, but ECCE has no CP2K support yet: there is no code registration (EDML, scripts/codereg), no input generator, and no output parser. The Builder already opens with the lattice tools for periodic codes (#300).

First case

A periodic geometry optimisation with Quickstep:

  • GPW, MOLOPT basis sets and GTH pseudopotentials, with the basis and potential files given by name
  • PBE, with D3 dispersion
  • DFT+U on a transition-metal site
  • UKS, with charge and multiplicity set
  • OT SCF
  • periodic in XYZ, with the cell taken from the Builder lattice
  • coordinates written into the input or a PDB coordinate file

Stages

  1. Code registration. CP2K in Register Machines and in the code lists, run as cp2k.psmp (MPI) or cp2k.ssmp, through the sh job scripts.
  2. Calculation editor for the first case: run type (ENERGY, GEO_OPT, CELL_OPT), functional, basis/potential per element, charge, multiplicity, UKS, +U per element (U value and orbital), dispersion, cutoff/rel_cutoff, SCF settings, memory in GB (#77 rule).
  3. Input generator (ai.cp2k or a .tpl) writing &GLOBAL, &FORCE_EVAL/&DFT, &SUBSYS with &CELL, &COORD, &KIND, and &MOTION for optimisations.
  4. Output parsing: total energy, SCF and optimisation progress (Organizer progress, #284), final geometry from the -pos-1.xyz trajectory, cell, Mulliken charges, spin moments.
  5. Test set: a small cell derived from a real job (no third-party research data in the repo), run on niobium and on Kebnekaise.

Later

MD (NVT/NPT), CELL_OPT, vibrational analysis, QM/MM (FIST), restart from .wfn.

Linguagem predominante
C
Estrelas
10
Forks
8
Merge médio
21min
PRs com merge (30d)
1

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

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de FriendsofECCE/ECCE

Todas as issues de FriendsofECCE/ECCE

Issues semelhantes

Mais issues de C

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.