triqs_dftkit.wien2k.driver

WIEN2k driver for TRIQS+DFT workflow automation.

This module provides a driver class for automating WIEN2k calculations in the context of charge self-consistent (CSC) DMFT calculations with TRIQS/modest.

WIEN2k is a chain of Fortran programs – lapw0, lapw1, lapw2, lcore, mixer – each launched through the x tcsh script, which writes the .def file of unit -> filename assignments that the program reads. The SCF loop that normally drives them lives in the run_lapw tcsh script.

This driver replaces run_lapw: it owns the loop in Python so that modest’s DftDriver can inject a DMFT charge density correction between iterations. WIEN2k’s own QDMFT support cannot be reused because it inverts the control flow – run_lapw calls out to a user python script from inside its cycle, whereas DftDriver requires python to be the caller.

Scope: serial, non-magnetic (SP=0, SO=0). lapw2 -qdmft cannot be run in parallel at all. TODO: SOC and SP support will be added in the future

Classes

Driver(seedname[, wienroot, dmftproj_exe, ...])

Driver orchestrating the WIEN2k program chain for CSC DFT+DMFT.

Exceptions

DFTWorkflowError

Exception raised for errors in the DFT workflow.