goldilocks_core.artifacts.pseudodojo.DEFAULT_DUAL = 4 is a placeholder, not a validated value. This issue tracks replacing it with one backed by actual convergence tests.
Where it is now
PseudoDojo's .djrepo reports publish a wavefunction cutoff hint (hints.high.ecut, Hartree) but no charge-density cutoff at all. ecutrho = dual × ecutwfc has to be chosen. Landed with dual = 4:
- 4 is the value usually quoted for norm-conserving pseudopotentials, and QE's own default.
aiida-pseudo uses 8 for the same PseudoDojo tables.
- SSSP's own published dual, measured from its sidecar (
cutoff_rho / cutoff_wfc for Si) is 240/30 = 8 — but that is an ultrasoft pseudopotential, not norm-conserving, so it is not a like-for-like comparison with PseudoDojo's NC tables.
No convergence test backs either number for this project's actual usage.
Proposed approach
Run ecutrho convergence tests (total energy vs. ecutrho at fixed ecutwfc) against a representative element set from the default table (pseudodojo-pbesol-efficiency), covering at least: a light element, a transition metal, and one of the two lanthanides the default table carries (La or Lu). Confirm whether a single dual serves all of them or whether per-pseudo_type values are warranted (NC pseudopotentials with and without nonlinear core correction can converge differently).
Acceptance
- A dual (or small per-type table) backed by measured convergence data, replacing the current placeholder.
docs/conventions.md's PseudoDojo cutoff derivation section updated with the reasoning.
DEFAULT_DUAL (or its replacement) updated in goldilocks_core.artifacts.pseudodojo.
Interplay
The dual is currently set in pseudodojo.install(), which writes it into the cutoff sidecar at install time (#125 P2). Every already-installed table would need reinstalling if the value changes; that is expected and not a compatibility concern this issue needs to solve.
Written by an agent on behalf of Junwen Yin.
goldilocks_core.artifacts.pseudodojo.DEFAULT_DUAL = 4is a placeholder, not a validated value. This issue tracks replacing it with one backed by actual convergence tests.Where it is now
PseudoDojo's
.djreporeports publish a wavefunction cutoff hint (hints.high.ecut, Hartree) but no charge-density cutoff at all.ecutrho = dual × ecutwfchas to be chosen. Landed withdual = 4:aiida-pseudouses 8 for the same PseudoDojo tables.cutoff_rho / cutoff_wfcfor Si) is 240/30 = 8 — but that is an ultrasoft pseudopotential, not norm-conserving, so it is not a like-for-like comparison with PseudoDojo's NC tables.No convergence test backs either number for this project's actual usage.
Proposed approach
Run
ecutrhoconvergence tests (total energy vs.ecutrhoat fixedecutwfc) against a representative element set from the default table (pseudodojo-pbesol-efficiency), covering at least: a light element, a transition metal, and one of the two lanthanides the default table carries (La or Lu). Confirm whether a single dual serves all of them or whether per-pseudo_typevalues are warranted (NC pseudopotentials with and without nonlinear core correction can converge differently).Acceptance
docs/conventions.md's PseudoDojo cutoff derivation section updated with the reasoning.DEFAULT_DUAL(or its replacement) updated ingoldilocks_core.artifacts.pseudodojo.Interplay
The dual is currently set in
pseudodojo.install(), which writes it into the cutoff sidecar at install time (#125 P2). Every already-installed table would need reinstalling if the value changes; that is expected and not a compatibility concern this issue needs to solve.Written by an agent on behalf of Junwen Yin.