triqs_dftkit.wien2k.driver.Driver
- class triqs_dftkit.wien2k.driver.Driver(seedname, wienroot=None, dmftproj_exe='dmftproj', max_scf_iter=100, ecut=0.0001, ccut=0.0001, verbosity=1)[source]
Driver orchestrating the WIEN2k program chain for CSC DFT+DMFT.
Satisfies modest’s DftDriver contract: it exposes
seedname,run_initial_stageandrun_update_stage, and leaves<seedname>.h5fully re-converted before either hook returns.Attributes
seedname
(str) WIEN2k case name. All WIEN2k files are
<seedname>.<ext>and the archive modest reads is<seedname>.h5.wienroot
(str) WIEN2k installation directory;
<wienroot>/xlaunches every program.dmftproj_exe
(str) The dmftproj executable. Looked up on $PATH by default, matching how run_lapw invokes it.
max_scf_iter
(int) Iteration cap for the initial SCF loop.
ecut, ccut
(float) Energy (Ry) and charge convergence limits, as run_lapw’s -ec and -cc.
verbosity
(int) 0 – warnings only; 1 – also per-cycle convergence and restart messages (default); 2 – also one line per WIEN2k program launched. Output is written on the master rank only. Settable at any time as an attribute.
Methods
Total energy in eV, from the last :ENE line in case.scf.
run_dft_only([n_iter, force_scf])Run the DFT SCF cycle and stop: no projectors, no dmftproj, no HDF5.
run_initial_stage([force_scf])Converge the DFT SCF cycle, then build projectors and convert to HDF5.
run_update_stage(N_k, Eint_m_dc[, mu, beta])Apply the DMFT charge density correction and reconverge one cycle.
Whether the SCF history in case.scf already meets the ecut/ccut criteria.
Notes
wienrootanddmftproj_exeare the only coupling to WIEN2k, so a fake WIEN2k can be substituted for testing by pointing them elsewhere.