triqs_dftkit.wien2k.symqmc

Pure-Python generation of the dmftproj correlated-shell symmetry file (case.symqmc), replacing the corresponding output of the dmftproj Fortran executable.

Given the dmftproj symmetry input (case.dmftsym), the projector definition (case.indmftpr) and the structure (case.struct), this builds the spinor symmetry matrices and writes them in the case.symqmc format the converter reads. It reproduces the Fortran construction: the Wigner D matrix (dmat), the orbital time-reversal operator for the magnetic (SP+SO) operations, the basis transform to the chosen angular harmonics, and the spin-1/2 phase blocks.

Covers all dmftproj spin-orbit cases:

  • non-mixing spin-diagonal bases (complex, cubic, and a fromfile basis whose spin-up and spin-down blocks coincide): the spin-reduced up/up block scaled by the +-(a+g)/2 phase, with the orbital time-reversal operator on the magnetic operations;

  • mixing bases (a fromfile basis that couples spin, e.g. the |j, m_j> basis): the full 2(2l+1) spinor representation P spinrot P^dag, with the spinor time-reversal operator -i sigma_y (x) T applied to the magnetic operations;

  • l = 0 (s) shells: the 2x2 spin phase block.

The mixing fromfile path is the one dft_tools #148 singles out. dmftproj reads both cubic and fromfile bases with single-precision CMPLX casts and a 250-column line cap (Fortran set_ang_trans.f), and evaluates spin phases in single precision (outputqmc.f, setsym.f). Its case.symqmc therefore differs at about 1e-7 from this double-precision generator, whose cubic d basis uses exact coefficients.

Functions

write_symqmc(case)

Write <case>.symqmc from <case>.dmftsym, <case>.indmftpr, <case>.struct.