Computational-chemistry-agent-skills dft-qe
Generate Quantum ESPRESSO DFT input tasks from a user-provided structure plus user-specified DFT settings. Use when the user wants to prepare QE calculations such as SCF, NSCF, relax, vc-relax, MD, bands, DOS, or phonons starting from a structure file or coordinates together with pseudopotentials, functional choice, cutoffs, k-point settings, smearing, spin/charge, and convergence parameters. This skill prepares the QE task only; use a separate submission skill such as dpdisp-submit to submit the generated task.
git clone https://github.com/jinzhezenggroup/computational-chemistry-agent-skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/jinzhezenggroup/computational-chemistry-agent-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/quantum-chemistry/dft-qe" ~/.claude/skills/jinzhezenggroup-computational-chemistry-agent-skills-dft-qe && rm -rf "$T"
quantum-chemistry/dft-qe/SKILL.mdDFT with Quantum ESPRESSO
Use this skill to build a QE DFT task from a user-provided structure and DFT settings.
Scope
This skill should:
- require a user-provided structure
- read or normalize the structure input
- identify the target calculation type
- collect the minimum required DFT settings
- generate the QE input file
- organize the task directory in a way that can be handed off to a submission skill
- state assumptions and unresolved choices
This skill should not:
- submit jobs
- manage schedulers
- handle remote execution
- invent critical scientific parameters
If the user wants the task submitted, hand off to another skill such as
dpdisp-submit after the QE task is generated.
Hard requirement
The user must provide a structure.
Do not generate a QE task without a user-provided structure source. If the structure is missing, stop and ask for it.
Structure input convention
Use this bundled example-plus-layout pattern as the reference:
- generated QE input example:
assets/pw-water-0.in - user-provided structure staging pattern:
containing files such asopenclaw_input/
andstructure.xyzCELL
Treat this as the canonical pattern for what the user is expected to provide and what this skill is expected to generate.
The structure format does not need to be fixed to xyz. If the user provides another reasonable atomistic structure format, convert or normalize it as needed. When format conversion is needed, use the
dpdata-cli skill.
For periodic systems, ensure cell information is preserved. If a plain xyz file is used, cell data must be provided separately, for example through a
CELL file.
For a concrete file-oriented workflow, see
references/commands-and-workflow.md.
Expected workflow
- Start from a user-provided structure.
- Normalize the structure into the task layout if needed.
- Determine the target QE calculation type.
- Collect only the missing critical DFT parameters.
- Generate the QE input file.
- Place the generated task in a runnable task directory.
- If submission is requested, pass that directory to
.dpdisp-submit
DFT parameters to collect
Must provide
Do not generate a formal QE task unless these are known or explicitly confirmed:
calculationinput_dftecutwfcpseudo_dir- pseudopotential file for each element
Usually should be explicit
These should normally be confirmed rather than guessed:
when dispersion may mattervdw_corr
when relevant to the pseudopotential family or workflowecutrho
setting, for exampleK_POINTS
or an automatic meshgamma- occupation / smearing settings for metallic or ambiguous systems
conv_threlectron_maxstep
Task-specific additions
Also collect task-dependent parameters when relevant.
For
relax / vc-relax:
forc_conv_thretot_conv_thr
forcell_dofreevc-relax
For
md:
nstepdtion_temperaturetempwion_dynamics
For spin-polarized or magnetic systems:
nspinstarting_magnetization- charge or spin-related settings if requested
For advanced workflows if explicitly requested:
- Hubbard U settings
- hybrid-functional settings
- electric field settings such as
,edir
, or related controlsemaxpos
Do not ask for everything at once; ask only for the missing essentials.
Required behavior
- Inspect the provided structure if accessible.
- Determine elements, cell information, and coordinate representation.
- If format normalization is needed, convert the structure using
.dpdata-cli - Confirm the QE task type.
- Gather only the missing critical DFT settings.
- Generate the QE input yourself.
- Explain assumptions clearly.
- Flag unresolved scientific choices instead of hiding them.
- Prepare the task directory so another skill can submit it.
Template pattern
Use the QE example input included in this repository:
assets/pw-water-0.in
as the reference pattern for how a QE task is organized and how the
pw.x input is laid out.
In this workflow:
- the user provides the structure in
-style formopenclaw_input - this skill generates the QE input task, analogous to files like
assets/pw-water-0.in - a separate submission skill handles the job script and submission stage
Do not hard-code the example chemistry. Reuse only the workflow pattern.
Defaulting policy
Allowed only for low-risk, clearly labeled assumptions.
Reasonable provisional defaults:
for a plain single-point requestcalculation='scf'- standard electronic convergence threshold when the user does not care
- basic verbosity settings
Do not silently invent:
- structure data
- pseudopotential filenames
- production cutoffs
- production k-point meshes
- magnetic state for open-shell systems
- Hubbard / vdW / hybrid settings
- metallic smearing behavior when the system character is unclear
Expected output
Provide:
- the full QE input file
- a short summary of the chosen settings
- explicit assumptions
- any decisions the user should still confirm
- the generated task directory or file set for the next skill
- if submission is requested, explicitly say the next step is
dpdisp-submit
Minimal pw.x
structure
pw.x&CONTROL calculation = 'scf' prefix = 'system' outdir = './' / &SYSTEM ibrav = 0 nat = ... ntyp = ... ecutwfc = ... ecutrho = ... / &ELECTRONS conv_thr = 1.0d-8 / ATOMIC_SPECIES ... CELL_PARAMETERS angstrom ... ATOMIC_POSITIONS angstrom ... K_POINTS automatic kx ky kz 0 0 0
Handoff rule
When the user asks to submit the generated QE task, do not implement submission logic here. Instead:
- finish generating the QE task directory and input file
- tell the user the task is ready for submission
- hand off to
dpdisp-submit
Common failure points
- missing user-provided structure
- missing cell for periodic systems
- incomplete pseudopotential mapping
/nat
inconsistent with the structurentyp- missing or poor cutoffs
- missing or inappropriate smearing
- omitted spin settings for magnetic cases
- requesting post-processing or phonons without prerequisite context