You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit c2fbf52
Browse filesBrowse the repository at this point in the historyBrowse files
Quantum ESPRESSO: add the Geometry runtype (calculation='relax')
Reported from a live session: "Tested QE implementation. Very broken ...
Nothing in Runtype details -- can't edit. Final edit doesn't bring
anything up. Launch doesn't do anything."
Most of that follows from one line. QuantumESPRESSO.edml declared a
single <runtype>Energy</runtype>, by design -- ai.qe's header still says
"PHASE 1, REDUCED SCOPE. calculation='scf' only". So QE could do single
points and nothing else: qeruntype.py built a dialog only for Energy and
was empty for anything else, and with no usable runtype there is nothing
to edit and nothing to launch.
Geometry now maps to calculation='relax', end to end:
* QuantumESPRESSO.edml offers the runtype.
* ai.qe gains QECalculationType(), which maps the ECCE runtype name
onto pw.x's &CONTROL calculation value and dies in the MAIN FLOW for
anything unsupported -- not inside a ##token## resolver, where such a
die used to be swallowed and emit a deck with the line silently
missing.
* A relax forces tprnfor on regardless of the checkbox, because pw.x
needs forces to move the ions. The control is not hidden; the deck
stays valid even if someone unticks it.
* qe.tpl gains a ##QEIons## slot. The resolver returns empty for scf,
so the line is dropped -- pw.x rejects &IONS outright on an scf run.
* qeruntype.py gains a Geometry branch exposing forc_conv_thr and
nstep, the two values that decide whether an optimisation finishes
in six steps or sixty, or stops at the cap WITHOUT converging while
still writing a final geometry that looks like success. Forces are
deliberately not offered there, since ai.qe overrides them.
Verified the whole chain rather than the pieces: ai.qe generated the deck
from a .frag/.param pair with RunType: Geometry, the real pw.x 6.7
accepted it and ran to convergence ("JOB DONE", final coordinates
written), and qe.desc read the trajectory back. That output is now the
fixture, replacing the hand-written input I had used for the GEOMTRACE
work -- which matches the convention the other QE cases already state,
that every fixture deck is generated by ai.qe itself.
Still absent, each needing more than a runtype entry: vc-relax (needs the
CELL namelist and LATTICEVEC extraction so the changing box can be
animated), nscf/bands, md, and phonons (ph.x is a separate executable).
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EFMUNbw2UpRPmgsqviAowb
0 commit comments