From ea1cd4e13da39200cd2a20351c7b57c324f84e17 Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Mon, 12 Oct 2026 16:29:35 +0200 Subject: [PATCH 01/12] Share dmftproj machinery and port double precision, custom bases and band modes --- python/triqs_dftkit/wien2k/_dmftproj.py | 560 +++++++++++++++ python/triqs_dftkit/wien2k/ctqmcout.py | 510 ++++---------- python/triqs_dftkit/wien2k/oubwin.py | 236 ++----- python/triqs_dftkit/wien2k/outband.py | 335 +++++++++ python/triqs_dftkit/wien2k/parproj.py | 661 ++++++------------ python/triqs_dftkit/wien2k/sympar.py | 237 ++----- python/triqs_dftkit/wien2k/symqmc.py | 203 +----- test/python/wien2k/CMakeLists.txt | 12 + test/python/wien2k/CaOs2_band.almblmdn.gz | Bin 0 -> 234368 bytes test/python/wien2k/CaOs2_band.almblmup.gz | Bin 0 -> 234291 bytes test/python/wien2k/CaOs2_band.indmftpr | 13 + test/python/wien2k/CaOs2_band.klist_band | 5 + test/python/wien2k/CaOs2_band.outband.gz | Bin 0 -> 65216 bytes test/python/wien2k/CaOs2_full.ctqmcout.gz | Bin 0 -> 21950 bytes test/python/wien2k/CaOs2_full.indmftpr | 11 + .../wien2k/CaOs2_jbasis_full.ctqmcout.gz | Bin 0 -> 22411 bytes test/python/wien2k/CaOs2_jbasis_full.indmftpr | 12 + .../wien2k/CaOs2_jbasis_full.parproj.gz | Bin 0 -> 49067 bytes .../python/wien2k/CaOs2_jbasis_full.sympar.gz | Bin 0 -> 7354 bytes test/python/wien2k/CaOs2_mode1.indmftpr | 11 + test/python/wien2k/CaOs2_mode1.oubwindn | 5 + test/python/wien2k/CaOs2_mode1.oubwinup | 5 + .../wien2k/CaOs2_mode1_full.ctqmcout.gz | Bin 0 -> 21902 bytes test/python/wien2k/CaOs2_mode1_full.indmftpr | 11 + .../wien2k/CaOs2_mode2_full.ctqmcout.gz | Bin 0 -> 21902 bytes test/python/wien2k/CaOs2_mode2_full.indmftpr | 11 + test/python/wien2k/CaOs2_partial.parproj.gz | Bin 26896 -> 26514 bytes test/python/wien2k/CaOs2_partial.sympar.gz | Bin 8421 -> 9042 bytes test/python/wien2k/wien2k_ctqmcout_python.py | 87 ++- .../wien2k/wien2k_dmftproj_common_python.py | 112 +++ test/python/wien2k/wien2k_oubwin_python.py | 50 +- test/python/wien2k/wien2k_outband_python.py | 89 +++ test/python/wien2k/wien2k_parproj_python.py | 23 +- test/python/wien2k/wien2k_sympar_python.py | 17 +- .../wien2k/wien2k_symqmc_jbasis.ref.npy | Bin 25728 -> 51328 bytes test/python/wien2k/wien2k_symqmc_l0.ref.npy | Bin 1152 -> 2176 bytes test/python/wien2k/wien2k_symqmc_mixing.py | 2 +- 37 files changed, 1781 insertions(+), 1437 deletions(-) create mode 100644 python/triqs_dftkit/wien2k/_dmftproj.py create mode 100644 python/triqs_dftkit/wien2k/outband.py create mode 100644 test/python/wien2k/CaOs2_band.almblmdn.gz create mode 100644 test/python/wien2k/CaOs2_band.almblmup.gz create mode 100644 test/python/wien2k/CaOs2_band.indmftpr create mode 100644 test/python/wien2k/CaOs2_band.klist_band create mode 100644 test/python/wien2k/CaOs2_band.outband.gz create mode 100644 test/python/wien2k/CaOs2_full.ctqmcout.gz create mode 100644 test/python/wien2k/CaOs2_full.indmftpr create mode 100644 test/python/wien2k/CaOs2_jbasis_full.ctqmcout.gz create mode 100644 test/python/wien2k/CaOs2_jbasis_full.indmftpr create mode 100644 test/python/wien2k/CaOs2_jbasis_full.parproj.gz create mode 100644 test/python/wien2k/CaOs2_jbasis_full.sympar.gz create mode 100644 test/python/wien2k/CaOs2_mode1.indmftpr create mode 100644 test/python/wien2k/CaOs2_mode1.oubwindn create mode 100644 test/python/wien2k/CaOs2_mode1.oubwinup create mode 100644 test/python/wien2k/CaOs2_mode1_full.ctqmcout.gz create mode 100644 test/python/wien2k/CaOs2_mode1_full.indmftpr create mode 100644 test/python/wien2k/CaOs2_mode2_full.ctqmcout.gz create mode 100644 test/python/wien2k/CaOs2_mode2_full.indmftpr create mode 100644 test/python/wien2k/wien2k_dmftproj_common_python.py create mode 100644 test/python/wien2k/wien2k_outband_python.py diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py new file mode 100644 index 0000000..05980f2 --- /dev/null +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -0,0 +1,560 @@ +################################################################################ +# +# TRIQS: a Toolbox for Research in Interacting Quantum Systems +# +# Copyright (C) 2011 by M. Aichhorn, L. Pourovskii, V. Vildosola, C. Martins +# +# TRIQS is free software: you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation, either version 3 of the License, or (at your option) any later +# version. +# +# TRIQS is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along with +# TRIQS. If not, see . +# +################################################################################ + +"""Shared dmftproj machinery for the pure-Python case.* generators. + +The five generators (symqmc, oubwin, ctqmcout, sympar, parproj) reproduce +different outputs of the dmftproj Fortran executable but draw on the same +underlying pieces: the list-directed almblm reader, the Fortran real/complex +token parsers, the Wigner-D rotation in the dmftproj convention, the angular +basis transforms (transmat), the case.indmftpr / case.dmftsym parsers, the +proj_mode==0 band-window selection and the gfortran-style real formatters. +This module owns each of those exactly once. + +All generators use the exact double-precision cubic harmonics. dmftproj reads +the same coefficients from full-precision SRC_templates (the precision-fix PR), +so the port reproduces its output to machine precision. `reptrans` keeps a +`cast` flag only to reproduce the legacy single-precision template on demand. +""" + +import math +import os +import numpy as np + + +# --- list-directed token stream over a Fortran free-form text file ----------- + +class Reader: + """Record-oriented reader mirroring Fortran list-directed and READ('()') + semantics on a free-form almblm file. + + `record()` returns the whitespace tokens of the next physical line (the + common case: every almblm logical record fits on one line). `skip()` + consumes one physical line unconditionally, matching READ('()').""" + + def __init__(self, path): + with open(path) as fh: + self._lines = fh.read().splitlines() + self._i = 0 + + def skip(self): + self._i += 1 + + def record(self): + toks = self._lines[self._i].split() + self._i += 1 + return toks + + +def to_float(tok): + """Parse a Fortran real token, accepting D/d exponents (1.0D-3) and the + list-directed 4.57E-002 form. Python float already handles E/e and the + embedded sign in the exponent; only D/d needs translation.""" + return float(tok.replace('D', 'E').replace('d', 'e')) + + +def to_complex(s): + s = s.strip().lstrip('(').rstrip(')') + re_s, im_s = s.split(',') + return complex(to_float(re_s), to_float(im_s)) + + +def read_complex(r): + """Read one list-directed complex `(re,im)` value, possibly split over + whitespace tokens.""" + buf = list(r.record()) + while ')' not in ''.join(buf): + buf += r.record() + return to_complex(''.join(buf)) + + +def read_two_complex(r): + """Read a record holding two list-directed complex values (Alm, Blm).""" + buf = list(r.record()) + while ''.join(buf).count(')') < 2: + buf += r.record() + s = ''.join(buf) + cut = s.index(')') + 1 + return to_complex(s[:cut]), to_complex(s[cut:]) + + +# --- angular bases: transmat = , m = -l..l -------------------------- +# Standard cubic harmonics, Wien2k convention, exact double precision. dmftproj +# reads the same coefficients from full-precision SRC_templates (the precision- +# fix PR); `reptrans(..., cast=True)` reproduces the legacy float32 template. + +_COMPLEX = {l: np.eye(2 * l + 1, dtype=complex) for l in range(4)} + +_CUBIC = { + 1: np.array([[2**-0.5, 0, -2**-0.5], [-1j*2**-0.5, 0, -1j*2**-0.5], [0, 1, 0]], dtype=complex), + 2: np.array([ + [0, 0, 1, 0, 0], + [2 ** -0.5, 0, 0, 0, 2 ** -0.5], + [-(2 ** -0.5), 0, 0, 0, 2 ** -0.5], + [0, 2 ** -0.5, 0, -(2 ** -0.5), 0], + [0, 2 ** -0.5, 0, 2 ** -0.5, 0], + ], dtype=complex), +} + + +def reptrans(basis, l, cast=False): + """transmat = , exact double-precision cubic harmonics. dmftproj + reads these from full-precision SRC_templates (the precision-fix PR), so the + port uses the exact analytic values. A complex basis is the exact identity. + `cast` is retained for callers that still want the legacy float32 truncation.""" + if basis == 'cubic' and l in _CUBIC: + c = _CUBIC[l] + return c.astype(np.complex64).astype(np.complex128) if cast else c + if basis == 'cubic' and l != 0: + raise NotImplementedError('cubic f harmonics are not implemented yet') + return _COMPLEX[l] + + +def read_fromfile(path, l): + """Parse a dmftproj fromfile basis (each line: the coefficients of a new + basis vector in {|m,up>, |m,dn>}, m = -l..l, real/imag interleaved; '*' + marks the end of an irep). Return (P, mixing) where P = is the + transform matrix (reptrans.transmat), full 2(2l+1) for a spin-mixing basis + or the (2l+1) up/up block otherwise.""" + n = 2 * (2 * l + 1) + rows = [] + for line in open(path): + line = line.rstrip('\n') + if not line.strip(): + continue + body = line[1:] + vals = [float(x) for x in body.split()][:2 * n] + rows.append([vals[2 * k] + 1j * vals[2 * k + 1] for k in range(n)]) + if len(rows) == n: + break + R = np.array(rows) # R[i, :] = |new_i> in old basis + d = 2 * l + 1 + up_up, up_dn = R[:d, :d], R[:d, d:] + dn_up, dn_dn = R[d:, :d], R[d:, d:] + mixing = not (np.allclose(dn_dn, up_up) and + np.allclose(up_dn, 0) and np.allclose(dn_up, 0)) + P = np.conj(R) if mixing else np.conj(up_up) # = conj() + return P, mixing + + +# --- Wigner D matrix (dmftproj convention, setsym.f) ------------------------- + +def small_d(l, m, n, b): + f1 = (math.factorial(l + m) * math.factorial(l - m)) / \ + (math.factorial(l + n) * math.factorial(l - n)) + s = 0.0 + for t in range(0, 2 * l + 1): + if (l - m - t) >= 0 and (l - n - t) >= 0 and (t + n + m) >= 0: + f2 = (math.factorial(l + n) * math.factorial(l - n)) / \ + (math.factorial(l - m - t) * math.factorial(m + n + t) * + math.factorial(l - n - t) * math.factorial(t)) + f3 = 1.0 if (2 * l - m - n - 2 * t) == 0 \ + else math.sin(b / 2) ** (2 * l - m - n - 2 * t) + f4 = 1.0 if (2 * t + n + m) == 0 \ + else math.cos(b / 2) ** (2 * t + n + m) + s += (-1) ** (l - m - t) * f2 * f3 * f4 + return math.sqrt(f1) * s + + +def dmat(l, a, b, c, det): + D = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) + for m in range(-l, l + 1): + for n in range(-l, l + 1): + v = np.exp(1j * n * a) * np.exp(1j * m * c) * small_d(l, m, n, b) + if det < -0.5: + v *= (-1) ** l + D[m + l, n + l] = v + return D + + +def tmat(l): + """Complex-conjugation operator in the spherical-harmonic basis, + T[m, -m] = (-1)^m (timeinv.f).""" + T = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) + for m in range(-l, l + 1): + T[-m + l, m + l] = (-1) ** m + return T + + +def timeinv_orbital(l, mat): + return tmat(l) @ np.conj(mat) + + +def mixing_timeinv_op(l, P): + """The spinor time-reversal operator -i sigma_y (x) T in the mixing basis: + tinv_{new} = P tinv_{lm} P^T (timeinv.f, ifmixing branch). Returned as the + bare operator; callers apply it as tinv @ conj(mat).""" + d = 2 * l + 1 + tm = tmat(l) + tinv = np.zeros((2 * d, 2 * d), dtype=complex) + tinv[:d, d:] = -tm + tinv[d:, :d] = tm + return P @ tinv @ P.T + + +def rotloc_rotl_so(l, ref, ops, iatom, iref): + """The composed 2(2l+1) Rloc rotation rotloc(iatom)%rotl(l) under SP+SO + (setsym.f:496-528 + set_rotloc.f): the representative spinor rotloc + spmt (x) D(rotloc_ref) composed with the first symmetry op R[isym] mapping + iref onto iatom, with the orbital time-reversal applied for the magnetic op. + Returns (rotl, timeinv); callers apply their own basis transform (the full + transmat for a mixing basis, blkdiag(transmat, transmat) otherwise).""" + d = 2 * l + 1 + Dref = dmat(l, ref['a'], ref['b'], ref['g'], float(ref['iprop'])) + f = (ref['a'] + ref['g']) / 2.0 + spmt = np.zeros((2, 2), dtype=complex) + spmt[0, 0] = np.exp(1j * f) * math.cos(ref['b'] / 2.0) + spmt[1, 1] = np.conj(spmt[0, 0]) + f = -(ref['a'] - ref['g']) / 2.0 + spmt[0, 1] = np.exp(1j * f) * math.sin(ref['b'] / 2.0) + spmt[1, 0] = -np.conj(spmt[0, 1]) + rotl = np.zeros((2 * d, 2 * d), dtype=complex) + rotl[:d, :d] = spmt[0, 0] * Dref + rotl[d:, d:] = spmt[1, 1] * Dref + rotl[:d, d:] = spmt[0, 1] * Dref + rotl[d:, :d] = spmt[1, 0] * Dref + + op = next(o for o in ops if o['perm'][iref - 1] == iatom) + det2 = (op['krotm'][0, 0] * op['krotm'][1, 1] + - op['krotm'][0, 1] * op['krotm'][1, 0]) + timeinv = det2 < 0.0 + srot_phase = (op['g'] - op['a']) if timeinv else (op['a'] + op['g']) + rotl_sym = dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) + if timeinv: + rotl_sym = tmat(l) @ np.conj(rotl_sym) + ephase = np.exp(1j * srot_phase / 2.0) + tmp = np.zeros((2 * d, 2 * d), dtype=complex) + tmp[:d, :d] = ephase * rotl_sym + tmp[d:, d:] = np.conj(ephase) * rotl_sym + rotl = (tmp @ np.conj(rotl)) if timeinv else (tmp @ rotl) + return rotl, timeinv + + +def mixing_rotrep(op, l, P, ti): + """The full 2(2l+1) spinor representation D(R)_{new_i} = P spinrot P^dag of + one symmetry operation in a spin-coupling (mixing) basis, with the spinor + time-reversal operator applied for the magnetic (timeinv) operations + (setsym.f spinrotmat + timeinv_op). This is srot%rotrep(l,isrt)%mat, shared + by the symqmc and sympar shell matrices.""" + rotl = dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) + phase = (op['c'] - op['a']) if ti else (op['a'] + op['c']) + e = np.exp(1j * phase / 2) + d = 2 * l + 1 + spinrot = np.zeros((2 * d, 2 * d), dtype=complex) + if ti: # beta = pi, block-antidiagonal + spinrot[:d, d:] = e * rotl + spinrot[d:, :d] = -np.conj(e) * rotl + else: # beta = 0, block-diagonal + spinrot[:d, :d] = e * rotl + spinrot[d:, d:] = np.conj(e) * rotl + rotrep = P @ spinrot @ np.conj(P.T) + if ti: + rotrep = mixing_timeinv_op(l, P) @ np.conj(rotrep) + return rotrep + + +# --- case.indmftpr ----------------------------------------------------------- + +def read_indmftpr(indmftpr): + """Full structured parse of case.indmftpr. + + Returns a dict with nsort, mult, lmax, the spin-orbit flag `so`, the energy + window (e_bot, e_top, proj_mode) and one `sorts` entry per atomic sort with + its basis name, optional fromfile sourcefile path, and the correlated / + included l lists (l_inc==2 / l_inc in {1,2}). Every generator derives its + shell or orbital list from this one parse.""" + raw = [l.split('!')[0].strip() for l in open(indmftpr)] + raw = [l for l in raw if l != ''] + nsort = int(raw[0].split()[0]) + mult = [int(x) for x in raw[1].split()][:nsort] + lmax = int(raw[2].split()[0]) + i = 3 + so = 0 + sorts = [] + for isort in range(nsort): + basis = raw[i].split()[0] + i += 1 + sourcefile = None + if basis == 'fromfile': + sourcefile = os.path.join(os.path.dirname(indmftpr), raw[i]) + i += 1 + l_inc = [int(x) for x in raw[i].split()] + i += 1 + ireps = [int(x) for x in raw[i].split()] + i += 1 + correlated_ls = [l for l in range(len(l_inc)) if l_inc[l] == 2] + included_ls = [l for l in range(len(l_inc)) if l_inc[l] in (1, 2)] + if any(n > 0 for n in ireps): + i += 1 # skip the correps line + if correlated_ls: + so = int(raw[i].split()[0]) # SO flag follows a correlated sort + i += 1 + sorts.append(dict(basis=basis, sourcefile=sourcefile, + correlated_ls=correlated_ls, included_ls=included_ls)) + last = raw[-1].split() + e_bot, e_top = to_float(last[0]), to_float(last[1]) + proj_mode = int(last[2]) if len(last) >= 3 else 0 + return dict(nsort=nsort, mult=mult, lmax=lmax, sorts=sorts, so=so, + e_bot=e_bot, e_top=e_top, proj_mode=proj_mode) + + +# --- case.dmftsym ------------------------------------------------------------ + +def read_dmftsym(path, rotloc=False): + """Symmetry operations from case.dmftsym. Each op carries (perm, a, b, g, + iprop, krotm); the third Euler angle is named both `c` and `g` for the + callers that use either name. With rotloc=True also parse the + 'Global->local' representative rotloc per sort and return it as a third + value (setsym.f:437-455).""" + lines = open(path).read().split('\n') + nsym = int(lines[0].split()[0]) + perms = [[int(x) for x in lines[1 + i].split()] for i in range(nsym)] + starts = [i for i, l in enumerate(lines) if 'Sym. op.' in l] + ops = [] + for k, s in enumerate(starts[:nsym]): + toks = lines[s + 1].split() + a, b, g = (math.radians(float(x)) for x in toks[:3]) + iprop = int(toks[3]) + krotm = np.array([[to_float(x) for x in lines[s + 2 + r].split()] + for r in range(3)]) + ops.append(dict(perm=perms[k], a=a, b=b, c=g, g=g, iprop=iprop, + krotm=krotm)) + if not rotloc: + return nsym, ops + + gl = next(i for i, l in enumerate(lines) if 'Global->local' in l) + rotloc_ref = [] + j = gl + 1 + while len(rotloc_ref) < nsym and j < len(lines): + if lines[j].strip() == '' or not lines[j].split()[0].lstrip('-').isdigit(): + j += 1 + continue + # sort index line, then 3 krotm rows, then the Euler/iprop line. + if len(lines[j].split()) == 1: + krotm = np.array([[to_float(x) for x in lines[j + 1 + r].split()] + for r in range(3)]) + ang = lines[j + 4].split() + a, b, g = (math.radians(float(x)) for x in ang[:3]) + iprop = int(ang[3]) + rotloc_ref.append(dict(krotm=krotm, a=a, b=b, g=g, iprop=iprop)) + j += 5 + else: + j += 1 + return nsym, ops, rotloc_ref + + +# --- almblm parsing ---------------------------------------------------------- + +def read_almblm(path, info, projectors=False): + """Read one spin's almblm file in the dmftproj.f read order. + + With projectors=False keep only the header (elecn, nk, nloat, eferm), the + per-(sort,l) overlap block (u_dot_norm, nLO, ovl_LO_u, ovl_LO_udot) and the + per-k band data (nbmin/nbmax, Fermi-shifted eband, tetrahedron weights); the + per-(l,m) coefficient records are still consumed to keep the reader in sync + but their values are discarded (oubwin's window-only path). + + With projectors=True also accumulate the per-(l,m) Alm/Blm/Clm coefficients + in the canonical Wien2k packing lm = l*l + (m+l), for every atom of every + sort (ctqmcout/parproj).""" + nsort = info['nsort'] + lmax = info['lmax'] + mult = info['mult'] + nlm = (lmax + 1) ** 2 + natom = sum(mult) + + r = Reader(path) + elecn = to_float(r.record()[0]) + nk = int(r.record()[0]) + r.record() # nloat + eferm = to_float(r.record()[0]) + + nLO = {} + u_dot_norm = {} + ovl_LO_u = {} + ovl_LO_udot = {} + kp = [None] * nk + + for isrt in range(1, nsort + 1): + for l in range(lmax + 1): + u_dot_norm[(l, isrt)] = to_float(r.record()[0]) + n = int(r.record()[0]) + nLO[(l, isrt)] = n + for ilo in range(1, n + 1): + toks = r.record() + ovl_LO_u[(ilo, l, isrt)] = to_float(toks[0]) + ovl_LO_udot[(ilo, l, isrt)] = to_float(toks[1]) + for ik in range(nk): + r.skip() # "IK = .." banner + r.skip() # 3-int line + head = r.record() + nbmin, nbmax = int(head[1]), int(head[2]) + nb = nbmax - nbmin + 1 + if kp[ik] is None: + kp[ik] = dict(nbmin=nbmin, nbmax=nbmax, eband=None, + weight=None, tetr=None) + if projectors: + kp[ik].update( + Alm=np.zeros((nlm, natom + 1, nb), dtype=complex), + Blm=np.zeros((nlm, natom + 1, nb), dtype=complex), + Clm=np.zeros((4, nlm, natom + 1, nb), dtype=complex)) + eband = np.empty(nb) + tetr = np.empty(nb) + for off in range(nb): + toks = r.record() + tetr[off] = to_float(toks[0]) + eband[off] = to_float(toks[1]) + eband = eband - eferm + if kp[ik]['eband'] is None: + kp[ik]['eband'] = eband + kp[ik]['weight'] = tetr[0] + kp[ik]['tetr'] = tetr + for imu in range(1, mult[isrt - 1] + 1): + iatom = sum(mult[:isrt - 1]) + imu + r.skip() # banner + r.record() # idum + for off in range(nb): + lm = 0 + for l in range(lmax + 1): + for m in range(-l, l + 1): + alm, blm = read_two_complex(r) + for ilo in range(nLO[(l, isrt)]): + clm = read_complex(r) + if projectors: + kp[ik]['Clm'][ilo, lm, iatom, off] = clm + if projectors: + kp[ik]['Alm'][lm, iatom, off] = alm + kp[ik]['Blm'][lm, iatom, off] = blm + lm += 1 + + return dict(elecn=elecn, eferm=eferm, nk=nk, nlm=nlm, natom=natom, + nLO=nLO, u_dot_norm=u_dot_norm, ovl_LO_u=ovl_LO_u, + ovl_LO_udot=ovl_LO_udot, kp=kp) + + +# --- band-window selection (set_projections.f, proj_mode==0) ----------------- + +def select_window(nbmin, nbmax, eband, e1, e2): + opened = False + included = False + nb_bot = nb_top = 0 + for off, ib in enumerate(range(nbmin, nbmax + 1)): + e = eband[off] + if not opened and e > e1 and e <= e2: + opened = True + nb_bot = ib + elif opened and e > e2: + nb_top = ib - 1 + included = True + break + elif ib == nbmax and e > e1 and e <= e2: + nb_top = ib + included = True + if not included: + nb_bot = nb_top = 0 + return included, nb_bot, nb_top + + +def select_band_window(nbmin, nbmax, b_bot, b_top): + """proj_mode 1/2 band-index selection for one k-point (set_projections.f + 70-88). e1/e2 are band indices, not energies: every k-point is included, + nb_bot = b_bot clamped up to nbmin (strict INT(e1) > nbmin), nb_top = b_top + clamped down to nbmax. Returns (included=True, nb_bot, nb_top).""" + nb_bot = b_bot if b_bot > nbmin else nbmin + nb_top = b_top if b_top < nbmax else nbmax + return True, nb_bot, nb_top + + +def band_index_window(info, spins): + """Resolve the (b_bot, b_top) band-index window for proj_mode 1 and 2. + + proj_mode 2 (dmftproj.f:233-237): b_bot=INT(e_bot), b_top=INT(e_top) taken + directly from the indmftpr window line. + + proj_mode 1 (dmftproj.f:704-722): e_bot/e_top are Fermi-shifted energies; + scan every spin and k-point for bands with e_bot < E <= e_top and take the + global min/max band index, seeded with b_bot=1000, b_top=1 so an empty scan + keeps that seed. `spins` is the list of read_almblm dicts (one per spin).""" + if info['proj_mode'] == 2: + return int(info['e_bot']), int(info['e_top']) + if info['proj_mode'] != 1: + raise ValueError('band_index_window is only valid for proj_mode 1 or 2') + e_bot, e_top = info['e_bot'], info['e_top'] + b_bot, b_top = 1000, 1 + for sp in spins: + for kp in sp['kp']: + for off, ib in enumerate(range(kp['nbmin'], kp['nbmax'] + 1)): + e = kp['eband'][off] + if e > e_bot and e <= e_top: + if ib > b_top: + b_top = ib + if ib < b_bot: + b_bot = ib + return b_bot, b_top + + +# --- gfortran-style real formatters ------------------------------------------ + +def fmt(x): + """One list-directed real, gfortran-style (leading sign space, ~17 sig).""" + return ' %.16E' % float(x) + + +def write_row(f, arr): + f.write(''.join(fmt(x) for x in arr) + '\n') + + +def fmt_scalar(x): + x = float(x) + return '%.16f' % x if abs(x) < 1e5 else '%.16E' % x + + +def require_identity_struct(case): + """Fail explicitly until representative struct rotations are ported.""" + with open(case + '.struct') as f: + lines = f.readlines() + for i, line in enumerate(lines): + if 'LOCAL ROT MATRIX:' in line: + rows = [line.split(':', 1)[1], *lines[i + 1:i + 3]] + rotation = np.array([[to_float(x) for x in row.split()] for row in rows]) + if not np.allclose(rotation, np.eye(3), atol=1e-7, rtol=0): + raise NotImplementedError('non-identity struct local rotations are not implemented yet') + + +def validate_so_windows(spins, info, windows, below=None): + """Require valid selected windows and the same absolute bands in both spins.""" + if len(spins) != 2: + raise ValueError('spin-orbit projectors require both up and down almblm files') + bw = band_index_window(info, spins) if info['proj_mode'] else None + for spin in spins[1:]: + if spin['nk'] != spins[0]['nk']: + raise ValueError('up/down k-point counts differ') + for ik, kp in enumerate(spin['kp']): + selected = (select_window(kp['nbmin'], kp['nbmax'], kp['eband'], info['e_bot'], info['e_top']) + if bw is None else select_band_window(kp['nbmin'], kp['nbmax'], *bw)) + if selected != windows[ik]: + raise ValueError('spin-orbit run requires identical up/dn band windows') + if below is not None: + lower = select_window(kp['nbmin'], kp['nbmax'], kp['eband'], -1e6, info['e_bot']) + if lower != below[ik]: + raise ValueError('spin-orbit run requires identical up/dn below-window bands') + if not all(incl and lo <= hi for incl, lo, hi in windows): + raise ValueError('projectors require a nonempty included window at every k-point') diff --git a/python/triqs_dftkit/wien2k/ctqmcout.py b/python/triqs_dftkit/wien2k/ctqmcout.py index 852389d..a1b55b9 100644 --- a/python/triqs_dftkit/wien2k/ctqmcout.py +++ b/python/triqs_dftkit/wien2k/ctqmcout.py @@ -49,293 +49,41 @@ symmetry operation mapping the representative atom onto each equivalent one (set_rotloc.f / setsym.f). -ctqmcout layout is outputqmc.f:66-613. The cubic transform coefficients are -stored in dmftproj via a single-precision CMPLX cast (set_ang_trans.f:146); -to match the committed file the transmat is cast to complex64 before use -(e.g. 0.70710676908 for 1/sqrt2). This step supports spin-polarized SO -calculations with identity struct local rotations; other paths are rejected. +ctqmcout layout is outputqmc.f:66-613. The cubic transform uses the exact +analytic harmonics; with the precision-fixed dmftproj (full double precision +templates and KIND=8 casts) the port reproduces case.ctqmcout to machine +precision on a full-rank window. """ -import math import os import numpy as np +from scipy.linalg.lapack import zheev +from scipy.linalg.blas import zgemm - -# --- list-directed token stream over a Fortran free-form text file ----------- - -class _Reader: - def __init__(self, path): - with open(path) as fh: - self._lines = fh.read().splitlines() - self._i = 0 - - def skip(self): - self._i += 1 - - def record(self): - toks = self._lines[self._i].split() - self._i += 1 - return toks - - -def _to_float(tok): - return float(tok.replace('D', 'E').replace('d', 'e')) - - -def _to_complex(s): - s = s.strip().lstrip('(').rstrip(')') - re_s, im_s = s.split(',') - return complex(_to_float(re_s), _to_float(im_s)) - - -def _read_complex(r): - """Read one list-directed complex `(re,im)` value, possibly split over - whitespace tokens.""" - buf = list(r.record()) - while ')' not in ''.join(buf): - buf += r.record() - return _to_complex(''.join(buf)) - - -def _read_two_complex(r): - """Read a record holding two list-directed complex values (Alm, Blm).""" - buf = list(r.record()) - while ''.join(buf).count(')') < 2: - buf += r.record() - s = ''.join(buf) - cut = s.index(')') + 1 - return _to_complex(s[:cut]), _to_complex(s[cut:]) - - -# --- angular basis: cubic d transform transmat = ------------------ -# Wien2k cubic d convention dz2, dx2-y2, dxy, dxz, dyz (set_ang_trans cubic); -# identical to symqmc._CUBIC[2]. - -_CUBIC = { - 2: np.array([ - [0, 0, 1, 0, 0], - [2 ** -0.5, 0, 0, 0, 2 ** -0.5], - [-(2 ** -0.5), 0, 0, 0, 2 ** -0.5], - [0, 2 ** -0.5, 0, -(2 ** -0.5), 0], - [0, 2 ** -0.5, 0, 2 ** -0.5, 0], - ], dtype=complex), -} - - -def _reptrans(basis, l): - """transmat = . dmftproj stores cubic/fromfile coefficients via a - single-precision CMPLX cast (set_ang_trans.f:146); reproduce the float32 - truncation of these coefficients. Other native phase operations still - differ at the single-precision floor.""" - if basis == 'cubic' and l in _CUBIC: - return _CUBIC[l].astype(np.complex64).astype(np.complex128) - if basis == 'cubic' and l != 0: - raise NotImplementedError('cubic ctqmcout currently supports s and d shells') - return np.eye(2 * l + 1, dtype=complex) - - -# --- Wigner D matrix (dmftproj convention, setsym.f dmat) -------------------- - -def _small_d(l, m, n, b): - f1 = (math.factorial(l + m) * math.factorial(l - m)) / \ - (math.factorial(l + n) * math.factorial(l - n)) - s = 0.0 - for t in range(0, 2 * l + 1): - if (l - m - t) >= 0 and (l - n - t) >= 0 and (t + n + m) >= 0: - f2 = (math.factorial(l + n) * math.factorial(l - n)) / \ - (math.factorial(l - m - t) * math.factorial(m + n + t) * - math.factorial(l - n - t) * math.factorial(t)) - f3 = 1.0 if (2 * l - m - n - 2 * t) == 0 \ - else math.sin(b / 2) ** (2 * l - m - n - 2 * t) - f4 = 1.0 if (2 * t + n + m) == 0 \ - else math.cos(b / 2) ** (2 * t + n + m) - s += (-1) ** (l - m - t) * f2 * f3 * f4 - return math.sqrt(f1) * s - - -def _dmat(l, a, b, c, det): - D = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - for n in range(-l, l + 1): - v = np.exp(1j * n * a) * np.exp(1j * m * c) * _small_d(l, m, n, b) - if det < -0.5: - v *= (-1) ** l - D[m + l, n + l] = v - return D - - -def _tmat(l): - T = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - T[-m + l, m + l] = (-1) ** m - return T +from ._dmftproj import (require_identity_struct, validate_so_windows, band_index_window, dmat, fmt_scalar, read_almblm, + read_dmftsym, read_fromfile, read_indmftpr, reptrans, + rotloc_rotl_so, select_band_window, select_window, + tmat, write_row) def _sqrt_inv(O): - """O^{-1/2} of a Hermitian matrix (orthogonal.f sqrtm with inv=.TRUE.: - Z diag(w^{-1/2}) Z^H). dmftproj evaluates 1/sqrt of the eigenvalue as a - *complex* sqrt (W_comp = CMPLX(W,0)), so a (numerically) negative - eigenvalue contributes i/sqrt(|w|) rather than NaN; reproduce that with a - complex power. The final result D1 @ conj(Z).T matches sqrtm exactly.""" - w, Z = np.linalg.eigh(O) - if w[0] <= np.finfo(float).eps * len(w) * abs(w[-1]): + """O^{-1/2} of a Hermitian matrix, reproducing orthogonal.f sqrtm + (inv=.TRUE.: Z diag(w^{-1/2}) Z^H). Use the same LAPACK routine the Fortran + calls, ZHEEV('V','U'), via scipy so the eigenvectors match rather than the + divide-and-conquer ZHEEVD of numpy.linalg.eigh. dmftproj takes 1/sqrt of the + eigenvalue as a *complex* sqrt (W_comp = CMPLX(W,0)); reproduce that with a + complex power. The result D1 @ conj(Z).T matches the Fortran's ZGEMM('N','T'). + + Full-rank overlaps give a well-defined inverse square root. Singular + overlaps cannot define orthonormal correlated projectors and are rejected. + """ + w, Z, info = zheev(O, compute_v=1, lower=0) # 'V', 'U' + if info != 0: + raise np.linalg.LinAlgError(f'Loewdin eigensolver failed (info={info})') + if w[0] <= np.finfo(float).eps * len(w) * max(abs(w[-1]), 1.): raise ValueError('Loewdin overlap is rank deficient; widen the projection window') - D1 = Z * (w.astype(complex) ** -0.5) # Z @ diag(w^{-1/2}) - return D1 @ np.conj(Z).T - - -# --- inputs ------------------------------------------------------------------ - -def _read_indmftpr(indmftpr): - raw = [l.split('!')[0].strip() for l in open(indmftpr)] - raw = [l for l in raw if l != ''] - nsort = int(raw[0].split()[0]) - mult = [int(x) for x in raw[1].split()][:nsort] - lmax = int(raw[2].split()[0]) - i = 3 - so = 0 - sorts = [] - for isort in range(nsort): - basis = raw[i].split()[0] - i += 1 - if basis == 'fromfile': - i += 1 - l_inc = [int(x) for x in raw[i].split()] - i += 1 - ireps = [int(x) for x in raw[i].split()] - i += 1 - correlated_ls = [l for l in range(len(l_inc)) if l_inc[l] == 2] - included_ls = [l for l in range(len(l_inc)) if l_inc[l] in (1, 2)] - for l in correlated_ls: - if ireps[l] > 1 or (ireps[l] == 1 and raw[i].strip() != '1'): - raise NotImplementedError('selection of individual irreducible representations is not implemented') - if ireps[l] > 0: - i += 1 - if correlated_ls: - sort_so = int(raw[i].split()[0]) - if sort_so not in (0, 1): - raise ValueError('spin-orbit flags must be 0 or 1') - if any(s['correlated_ls'] for s in sorts) and sort_so != so: - raise NotImplementedError('different spin-orbit flags across correlated sorts are not implemented') - so = sort_so - i += 1 - sorts.append(dict(basis=basis, correlated_ls=correlated_ls, - included_ls=included_ls)) - last = raw[-1].split() - e_bot, e_top = _to_float(last[0]), _to_float(last[1]) - proj_mode = int(last[2]) if len(last) >= 3 else 0 - return dict(nsort=nsort, mult=mult, lmax=lmax, sorts=sorts, so=so, - e_bot=e_bot, e_top=e_top, proj_mode=proj_mode) - - -def _read_dmftsym(path): - lines = open(path).read().split('\n') - nsym = int(lines[0].split()[0]) - perms = [[int(x) for x in lines[1 + i].split()] for i in range(nsym)] - starts = [i for i, l in enumerate(lines) if 'Sym. op.' in l] - ops = [] - for k, s in enumerate(starts[:nsym]): - toks = lines[s + 1].split() - a, b, g = (math.radians(float(x)) for x in toks[:3]) - iprop = int(toks[3]) - krotm = np.array([[_to_float(x) for x in lines[s + 2 + r].split()] - for r in range(3)]) - ops.append(dict(perm=perms[k], a=a, b=b, g=g, iprop=iprop, - krotm=krotm)) - return nsym, ops - - -# --- almblm parsing ---------------------------------------------------------- - -def _read_almblm(path, info): - nsort = info['nsort'] - lmax = info['lmax'] - mult = info['mult'] - nlm = (lmax + 1) ** 2 - natom = sum(mult) - - r = _Reader(path) - elecn = _to_float(r.record()[0]) - nk = int(r.record()[0]) - r.record() # nloat - eferm = _to_float(r.record()[0]) - - nLO = {} - ovl_LO_u = {} - kp = [None] * nk - - for isrt in range(1, nsort + 1): - for l in range(lmax + 1): - r.record() # u_dot_norm(l) - n = int(r.record()[0]) - if n > 1: - raise NotImplementedError('more than one local orbital per angular momentum is not implemented') - nLO[(l, isrt)] = n - for ilo in range(1, n + 1): - toks = r.record() - ovl_LO_u[(ilo, l, isrt)] = _to_float(toks[0]) - for ik in range(nk): - r.skip() # "IK = .." banner - r.skip() # 3-int line - head = r.record() - nbmin, nbmax = int(head[1]), int(head[2]) - nb = nbmax - nbmin + 1 - if kp[ik] is None: - kp[ik] = dict( - nbmin=nbmin, nbmax=nbmax, eband=None, weight=None, - Alm=np.zeros((nlm, natom + 1, nb), dtype=complex), - Clm=np.zeros((1, nlm, natom + 1, nb), dtype=complex)) - eband = np.empty(nb) - weight = None - for off in range(nb): - toks = r.record() - if off == 0: - weight = _to_float(toks[0]) - eband[off] = _to_float(toks[1]) - eband = eband - eferm - if kp[ik]['eband'] is None: - kp[ik]['eband'] = eband - kp[ik]['weight'] = weight - for imu in range(1, mult[isrt - 1] + 1): - iatom = sum(mult[:isrt - 1]) + imu - r.skip() # banner - r.record() # idum - for off in range(nb): - lm = 0 - for l in range(lmax + 1): - for m in range(-l, l + 1): - alm, _blm = _read_two_complex(r) - kp[ik]['Alm'][lm, iatom, off] = alm - for ilo in range(nLO[(l, isrt)]): - clm = _read_complex(r) - kp[ik]['Clm'][ilo, lm, iatom, off] = clm - lm += 1 - - return dict(elecn=elecn, eferm=eferm, nk=nk, nlm=nlm, natom=natom, - nLO=nLO, ovl_LO_u=ovl_LO_u, kp=kp) - - -# --- band-window selection (set_projections.f, proj_mode==0) ----------------- - -def _select_window(nbmin, nbmax, eband, e1, e2): - opened = False - included = False - nb_bot = nb_top = 0 - for off, ib in enumerate(range(nbmin, nbmax + 1)): - e = eband[off] - if not opened and e > e1 and e <= e2: - opened = True - nb_bot = ib - elif opened and e > e2: - nb_top = ib - 1 - included = True - break - elif ib == nbmax and e > e1 and e <= e2: - nb_top = ib - included = True - if not included: - nb_bot = nb_top = 0 - return included, nb_bot, nb_top + D1 = Z * (w.astype(complex) ** -0.5) # Z @ diag(w^{-1/2}) + return zgemm(1.0, D1, np.conj(Z), trans_b=1) # ZGEMM('N','T'): D1 @ conj(Z)^T # --- correlated / included orbital descriptors ------------------------------- @@ -376,9 +124,9 @@ def _rloc_rotrep(op, l, transmat): det2 = krotm[0, 0] * krotm[1, 1] - krotm[0, 1] * krotm[1, 0] timeinv = det2 < 0.0 phase = (g - a) if timeinv else (a + g) - D = _dmat(l, a, b, g, float(iprop)) + D = dmat(l, a, b, g, float(iprop)) if timeinv: - D = _tmat(l) @ np.conj(D) # setsym.f:320-326 orbital time reversal + D = tmat(l) @ np.conj(D) # setsym.f:320-326 orbital time reversal ephase = np.exp(1j * phase / 2) d = 2 * l + 1 rotl = np.zeros((2 * d, 2 * d), dtype=complex) @@ -391,39 +139,25 @@ def _rloc_rotrep(op, l, transmat): return rotrep, timeinv -# --- ctqmcout writer --------------------------------------------------------- - -def _fmt(x): - """One list-directed real, gfortran-style (leading sign space, ~17 sig).""" - return ' %.16E' % float(x) - - -def _w(f, arr): - f.write(''.join(_fmt(x) for x in arr) + '\n') - +def _rloc_rotrep_mixing(l, ref, ops, iatom, iref, P): + """rotloc(iatom)%rotrep(l)%mat for a mixing SO shell: the composed Rloc + spinor rotation (rotloc_rotl_so) put into the new basis with the full + 2(2l+1) transmat P (set_rotloc.f mixing branch). Returns (rotrep, timeinv).""" + rotl, timeinv = rotloc_rotl_so(l, ref, ops, iatom, iref) + rotrep = (P @ rotl @ P.T) if timeinv else (P @ rotl @ np.conj(P.T)) + return rotrep, timeinv -def _fmt_scalar(x): - x = float(x) - return '%.16f' % x if abs(x) < 1e5 else '%.16E' % x +# --- ctqmcout writer --------------------------------------------------------- def write_ctqmcout(case): """Read .almblm{up,dn}, .indmftpr, .struct, .dmftsym and write .ctqmcout in the dmftproj format.""" - info = _read_indmftpr(case + '.indmftpr') + info = read_indmftpr(case + '.indmftpr') if not info['so']: - raise NotImplementedError('non-spin-orbit ctqmcout is not implemented yet') - if info['proj_mode'] != 0: - raise NotImplementedError('ctqmcout currently supports projection mode 0') - with open(case + '.struct') as f: - struct_lines = f.readlines() - for i, line in enumerate(struct_lines): - if 'LOCAL ROT MATRIX:' in line: - rows = [line.split(':', 1)[1], *struct_lines[i + 1:i + 3]] - rotation = np.array([[float(x) for x in row.split()] for row in rows]) - if not np.allclose(rotation, np.eye(3), atol=1e-7, rtol=0): - raise NotImplementedError('non-identity struct local rotations are not implemented yet') - nsym, ops = _read_dmftsym(case + '.dmftsym') + raise NotImplementedError('non-spin-orbit projectors are not implemented yet') + require_identity_struct(case) + nsym, ops, rotloc_ref = read_dmftsym(case + '.dmftsym', rotloc=True) up, dn = case + '.almblmup', case + '.almblmdn' if os.path.exists(up) and os.path.exists(dn): @@ -432,54 +166,46 @@ def write_ctqmcout(case): spin_files = [case + '.almblm'] ifSP = len(spin_files) == 2 ifSO = bool(info['so']) - if not ifSP: - raise ValueError('spin-orbit ctqmcout requires both up and down almblm files') ns = 2 if ifSP else 1 - spins = [_read_almblm(p, info) for p in spin_files] + spins = [read_almblm(p, info, projectors=True) for p in spin_files] nk = spins[0]['nk'] elecn = spins[0]['elecn'] crorbs = _build_crorbs(info) - if any(cr['basis'] == 'fromfile' for cr in crorbs): - raise NotImplementedError( - 'ctqmcout for fromfile/mixing correlated bases is not yet covered ' - 'by a test fixture; cubic and complex bases are supported') orbs = _build_orbs(info) ncrorb = len(crorbs) norb = len(orbs) - # window in [e_bot, e_top] + # band-index window for proj_mode 1/2 (set_projections is called with band + # indices, not energies). proj_mode 1 scans all spins for the global window. + bw = band_index_window(info, spins) if info['proj_mode'] != 0 else None + + # window in [e_bot, e_top] (proj_mode 0) or [b_bot, b_top] (mode 1/2) windows = [] for ik in range(nk): kp = spins[0]['kp'][ik] - windows.append(_select_window(kp['nbmin'], kp['nbmax'], kp['eband'], - info['e_bot'], info['e_top'])) - - for spin in spins[1:]: - if spin['nk'] != nk: - raise ValueError('up/down k-point counts differ') - for ik, window in enumerate(windows): - kp = spin['kp'][ik] - other = _select_window(kp['nbmin'], kp['nbmax'], kp['eband'], - info['e_bot'], info['e_top']) - if other != window: - raise ValueError('spin-orbit run requires identical up/dn band windows') - if not all(window[0] for window in windows): - raise ValueError('ctqmcout requires an included band window at every k-point') - - # window below e_bot (for qbbot) + if info['proj_mode'] == 0: + windows.append(select_window( + kp['nbmin'], kp['nbmax'], kp['eband'], + info['e_bot'], info['e_top'])) + else: + windows.append(select_band_window( + kp['nbmin'], kp['nbmax'], bw[0], bw[1])) + + # window below e_bot (mode 0) or below b_bot (mode 1/2), for qbbot. + # Mode 1/2: set_projections(1, b_bot-1) -> select_band_window with top=b_bot-1. win_below = [] for ik in range(nk): kp = spins[0]['kp'][ik] - win_below.append(_select_window(kp['nbmin'], kp['nbmax'], kp['eband'], - -1e6, info['e_bot'])) + if info['proj_mode'] == 0: + win_below.append(select_window( + kp['nbmin'], kp['nbmax'], kp['eband'], -1e6, info['e_bot'])) + else: + win_below.append(select_band_window( + kp['nbmin'], kp['nbmax'], 1, bw[0] - 1)) - for spin in spins[1:]: - for ik, kp in enumerate(spin['kp']): - lower = _select_window(kp['nbmin'], kp['nbmax'], kp['eband'], -1e6, info['e_bot']) - if lower != win_below[ik]: - raise ValueError('spin-orbit run requires identical up/dn below-window bands') + validate_so_windows(spins, info, windows) # qbbot: point integration over bands below e_bot, is=1 only under SO qbbot = 0.0 @@ -491,8 +217,15 @@ def write_ctqmcout(case): if ifSO: break - transmats = {(cr['l'], cr['sort']): _reptrans(cr['basis'], cr['l']) - for cr in crorbs} + transmats = {} + mixing = {} + for cr in crorbs: + key = (cr['l'], cr['sort']) + if cr['basis'] == 'fromfile': + transmats[key], mixing[key] = read_fromfile( + info['sorts'][cr['sort'] - 1]['sourcefile'], cr['l']) + else: + transmats[key], mixing[key] = reptrans(cr['basis'], cr['l']), False # rotloc Euler angles per crorb: the symmetry op mapping the representative # atom of the sort onto this atom (set_rotloc.f). With identity struct @@ -507,27 +240,31 @@ def write_ctqmcout(case): if o['perm'][iref - 1] == cr['atom']) # ---- raw correlated projector mat_rep, then Loewdin orthonormalize ---- - # mat_rep[(icr, ik, is)] -> (2l+1, nbsel) + # Non-mixing: mat_rep[(icr, ik, is)] -> (2l+1, nbsel) per spin block. + # Mixing: mat_rep[(icr, ik)] -> (2*(2l+1), nbsel), the stacked spinor block. mat_rep = {} for icr, cr in enumerate(crorbs): l = cr['l'] atom = cr['atom'] sort = cr['sort'] + d = 2 * l + 1 transmat = transmats[(l, sort)] + ismix = mixing[(l, sort)] op = rotloc_op[icr] - rot = _dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) + rot = dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) for ik in range(nk): incl, nb_bot, nb_top = windows[ik] if not incl: continue + nbsel = nb_top - nb_bot + 1 + spin_blocks = [] for ispin in range(ns): sp = spins[ispin] kp = sp['kp'][ik] off_bot = nb_bot - kp['nbmin'] off_top = nb_top - kp['nbmin'] nlo = sp['nLO'][(l, sort)] - nbsel = off_top - off_bot + 1 - P = np.zeros((2 * l + 1, nbsel), dtype=complex) + P = np.zeros((d, nbsel), dtype=complex) for mi, m in enumerate(range(-l, l + 1)): lm = l * l + (m + l) # 0-based packed index for j, off in enumerate(range(off_bot, off_top + 1)): @@ -536,29 +273,42 @@ def write_ctqmcout(case): val += kp['Clm'][ilo, lm, atom, off] * \ sp['ovl_LO_u'][(ilo + 1, l, sort)] P[mi, j] = val - # rot_projectmat (local rotation) then the basis transform - P = transmat @ (rot @ P) - mat_rep[(icr, ik, ispin)] = P + spin_blocks.append(rot @ P) # rot_projectmat per spin + if ismix: + stack = np.vstack(spin_blocks) # (2*(2l+1), nbsel), up then dn + mat_rep[(icr, ik)] = transmat @ stack + else: + for ispin in range(ns): + mat_rep[(icr, ik, ispin)] = transmat @ spin_blocks[ispin] - # Loewdin: per k stack all crorb rows (is=1 block then is=2 block per crorb) + # Loewdin: per k stack all crorb rows. A mixing crorb contributes its full + # 2(2l+1) block once (is=1 only); a non-mixing one the two (2l+1) spin + # blocks (orthogonal_wannier_SO ndim layout). for ik in range(nk): incl, nb_bot, nb_top = windows[ik] if not incl: continue blocks = [] - layout = [] # (icr, is, nrows) + layout = [] # (key, nrows) for icr, cr in enumerate(crorbs): l = cr['l'] - for ispin in range(ns): - blocks.append(mat_rep[(icr, ik, ispin)]) - layout.append((icr, ispin, 2 * l + 1)) + if mixing[(l, cr['sort'])]: + blocks.append(mat_rep[(icr, ik)]) + layout.append(((icr, ik), 2 * (2 * l + 1))) + else: + for ispin in range(ns): + blocks.append(mat_rep[(icr, ik, ispin)]) + layout.append(((icr, ik, ispin), 2 * l + 1)) D = np.vstack(blocks) # ndim x nbnd - O = D @ np.conj(D.T) + # match the Fortran's exact BLAS calls (orthogonal_wannier_SO): the + # near-singular O^{-1/2} amplifies any last-bit difference, so use the + # identical ZGEMM trans flags rather than numpy's conj-transpose copies. + O = zgemm(1.0, D, D, trans_b=2) # ZGEMM('N','C'): D @ D^H S = _sqrt_inv(O) - D_orth = S @ D + D_orth = zgemm(1.0, S, D) # ZGEMM('N','N'): O^{-1/2} @ D row = 0 - for icr, ispin, nrows in layout: - mat_rep[(icr, ik, ispin)] = D_orth[row:row + nrows, :] + for key, nrows in layout: + mat_rep[key] = D_orth[row:row + nrows, :] row += nrows # ---- Rloc rotrep per crorb ---- @@ -567,8 +317,12 @@ def write_ctqmcout(case): l = cr['l'] transmat = transmats[(l, cr['sort'])] iref = sum(info['mult'][:cr['sort'] - 1]) + 1 - op = next(o for o in ops if o['perm'][iref - 1] == cr['atom']) - rloc_blocks.append(_rloc_rotrep(op, l, transmat)) + if mixing[(l, cr['sort'])]: + rloc_blocks.append(_rloc_rotrep_mixing( + l, rotloc_ref[cr['sort'] - 1], ops, cr['atom'], iref, transmat)) + else: + op = next(o for o in ops if o['perm'][iref - 1] == cr['atom']) + rloc_blocks.append(_rloc_rotrep(op, l, transmat)) # ---- write ---- with open(case + '.ctqmcout', 'w') as f: @@ -576,8 +330,8 @@ def write_ctqmcout(case): f.write('%6d\n' % nk) f.write('%6d\n' % (1 if ifSP else 0)) f.write('%6d\n' % (1 if ifSO else 0)) - f.write(' %s\n' % _fmt_scalar(qbbot)) - f.write(' %s\n' % _fmt_scalar(elecn)) + f.write(' %s\n' % fmt_scalar(qbbot)) + f.write(' %s\n' % fmt_scalar(elecn)) f.write('%6d\n' % norb) for o in orbs: @@ -594,26 +348,30 @@ def write_ctqmcout(case): # Rloc block per crorb (non-mixing SP+SO whole shell) for rotrep, timeinv in rloc_blocks: for m in range(rotrep.shape[0]): - _w(f, rotrep[m, :].real) + write_row(f, rotrep[m, :].real) for m in range(rotrep.shape[0]): - _w(f, rotrep[m, :].imag) + write_row(f, rotrep[m, :].imag) f.write('%6d\n' % (1 if timeinv else 0)) - # complex-harmonics -> basis transform block (crorb%first only) + # complex-harmonics -> basis transform block (crorb%first only). Mixing + # writes the full 2(2l+1) transmat; non-mixing the spin block-diagonal. for cr in crorbs: if not cr['first']: continue l = cr['l'] transmat = transmats[(l, cr['sort'])] d = 2 * l + 1 - spinrot = np.zeros((2 * d, 2 * d), dtype=complex) - spinrot[:d, :d] = transmat - spinrot[d:, d:] = transmat + if mixing[(l, cr['sort'])]: + spinrot = transmat + else: + spinrot = np.zeros((2 * d, 2 * d), dtype=complex) + spinrot[:d, :d] = transmat + spinrot[d:, d:] = transmat f.write('%6d %6d \n' % (1, 2 * d)) for m in range(2 * d): - _w(f, spinrot[m, :].real) + write_row(f, spinrot[m, :].real) for m in range(2 * d): - _w(f, spinrot[m, :].imag) + write_row(f, spinrot[m, :].imag) # number of bands per k (skip is=2 under SO) for ispin in range(ns): @@ -623,22 +381,30 @@ def write_ctqmcout(case): incl, nb_bot, nb_top = windows[ik] f.write('%6d\n' % abs(nb_top - nb_bot + 1)) - # projector block: DO ik, DO icrorb (non-mixing SO whole-shell) + # projector block: DO ik, DO icrorb. Mixing writes the full 2(2l+1) + # block from is=1; non-mixing the two (2l+1) spin blocks. for ik in range(nk): for icr, cr in enumerate(crorbs): l = cr['l'] + if mixing[(l, cr['sort'])]: + P = mat_rep[(icr, ik)] + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].real) + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].imag) + continue for ispin in range(ns): P = mat_rep[(icr, ik, ispin)] for mi in range(2 * l + 1): - _w(f, P[mi, :].real) + write_row(f, P[mi, :].real) for ispin in range(ns): P = mat_rep[(icr, ik, ispin)] for mi in range(2 * l + 1): - _w(f, P[mi, :].imag) + write_row(f, P[mi, :].imag) # k-weights for ik in range(nk): - f.write(' %s\n' % _fmt_scalar(spins[0]['kp'][ik]['weight'])) + f.write(' %s\n' % fmt_scalar(spins[0]['kp'][ik]['weight'])) # H(k) eigenvalues (skip is=2 under SO) for ispin in range(ns): @@ -648,4 +414,4 @@ def write_ctqmcout(case): incl, nb_bot, nb_top = windows[ik] kp = spins[ispin]['kp'][ik] for ib in range(nb_bot, nb_top + 1): - f.write(' %s\n' % _fmt_scalar(kp['eband'][ib - kp['nbmin']])) + f.write(' %s\n' % fmt_scalar(kp['eband'][ib - kp['nbmin']])) diff --git a/python/triqs_dftkit/wien2k/oubwin.py b/python/triqs_dftkit/wien2k/oubwin.py index a575536..a46e13c 100644 --- a/python/triqs_dftkit/wien2k/oubwin.py +++ b/python/triqs_dftkit/wien2k/oubwin.py @@ -31,10 +31,16 @@ It reproduces the Fortran path: read elecn/nk/nloat/eferm from the almblm header (outbwin.f / dmftproj.f), parse the energy window (e_bot, e_top, proj_mode) from the last line of case.indmftpr, shift every band eigenvalue -by eferm, and apply the proj_mode==0 selection of set_projections.f -(strict lower bound e_bot < E, inclusive upper bound E <= e_top, yielding a -single contiguous [nb_bot, nb_top] per k). The weight written per included -k-point is the tetrahedron weight of the lowest band nbmin. +by eferm, and apply the set_projections.f selection. For proj_mode==0 this is +the energy-window rule (strict lower bound e_bot < E, inclusive upper bound +E <= e_top, yielding a single contiguous [nb_bot, nb_top] per k). For +proj_mode 1 and 2 the window is a pair of band indices (b_bot, b_top): every +k-point is included with nb_bot/nb_top those indices clamped to the local +nbmin/nbmax (set_projections.f:70-88). In mode 2 the indices come straight +from the window line; in mode 1 they are the global min/max band index over +all spins/k whose Fermi-shifted energy lies in (e_bot, e_top] +(dmftproj.f:704-722). The weight written per included k-point is the +tetrahedron weight of the lowest band nbmin. Spin-polarization is detected from the input files: case.almblmup / case.almblmdn present => two spin files (case.oubwinup / case.oubwindn), @@ -44,193 +50,28 @@ """ import os -import numpy as np +from ._dmftproj import (band_index_window, read_almblm, read_indmftpr, + select_band_window, select_window) -# --- list-directed token stream over a Fortran free-form text file ----------- -class _Reader: - """Record-oriented reader mirroring Fortran list-directed and READ('()') - semantics on a free-form almblm file. - - `record()` returns the whitespace tokens of the next physical line (the - common case: every almblm logical record fits on one line). `skip()` - consumes one physical line unconditionally, matching READ('()').""" - - def __init__(self, path): - with open(path) as fh: - self._lines = fh.read().splitlines() - self._i = 0 - - def skip(self): - self._i += 1 - - def record(self): - toks = self._lines[self._i].split() - self._i += 1 - return toks - - -def _to_float(tok): - """Parse a Fortran real token, accepting D/d exponents (1.0D-3) and the - list-directed 4.57E-002 form. Python float already handles E/e and the - embedded sign in the exponent; only D/d needs translation.""" - return float(tok.replace('D', 'E').replace('d', 'e')) - - -# --- inputs ------------------------------------------------------------------ - -def _read_window(indmftpr): - """Energy/band window from the last non-empty line of case.indmftpr. - - Try list-directed `e_bot e_top proj_mode`; on failure fall back to - `e_bot e_top` with proj_mode=0 (dmftproj.f:182-197).""" - lines = [l.split('!')[0].strip() for l in open(indmftpr)] - lines = [l for l in lines if l] - toks = lines[-1].split() - e_bot, e_top = _to_float(toks[0]), _to_float(toks[1]) - proj_mode = int(toks[2]) if len(toks) >= 3 else 0 - return e_bot, e_top, proj_mode - - -def _read_indmftpr_geometry(indmftpr): - """Return (nsort, lmax) from case.indmftpr. nsort is its first value and - lmax its third (dmftproj.f:95). Both are needed to walk the per-sort - almblm header up to the k-loop.""" - raw = [l.split('!')[0].strip() for l in open(indmftpr)] - raw = [l for l in raw if l != ''] - nsort = int(raw[0].split()[0]) - lmax = int(raw[2].split()[0]) - return nsort, lmax - - -def _read_so_flag(indmftpr): - """Spin-orbit flag from case.indmftpr: the single integer line that - follows a correlated sort's irep specification (the value dmftproj stores - as ifSOflag). Returns 0 or 1.""" - raw = [l.split('!')[0].strip() for l in open(indmftpr)] - raw = [l for l in raw if l != ''] - nsort = int(raw[0].split()[0]) - i = 3 - so = 0 - seen_correlated = False - for _ in range(nsort): - basis = raw[i].split()[0] - i += 1 - if basis == 'fromfile': - i += 1 - l_inc = [int(x) for x in raw[i].split()] - i += 1 - ireps = [int(x) for x in raw[i].split()] - i += 1 - correlated = any(v == 2 for v in l_inc) - for l, included in enumerate(l_inc): - if included == 2 and ireps[l] > 0: - i += 1 - if correlated: - sort_so = int(raw[i].split()[0]) - if sort_so not in (0, 1): - raise ValueError('spin-orbit flags must be 0 or 1') - if seen_correlated and sort_so != so: - raise NotImplementedError('different spin-orbit flags across correlated sorts are not implemented') - so = sort_so - seen_correlated = True - i += 1 - return so - - -# --- almblm parsing ---------------------------------------------------------- - -def _read_almblm_windows(path, nsort, lmax): - """Read case.almblm and return (eferm, [(nbmin, nbmax, eband, weight) per - k-point]) for the FIRST atomic sort. nbmin/nbmax/eband/weight are identical - across sorts at a given k, so the first sort's k-loop suffices for window - selection. - - Follows the dmftproj.f read order field by field: header, then the first - sort's per-l header (u_dot_norm, nLO, nLO overlap lines), then its k-loop - (two skipped banner lines, the idum/nbmin/nbmax line, the per-band - rtetr/eband lines).""" - r = _Reader(path) - r.record() # elecn - nk = int(r.record()[0]) - r.record() # nloat - eferm = _to_float(r.record()[0]) # non-band path: eferm is header line 4 - - # First sort's per-l header: u_dot_norm, nLO, then nLO overlap lines. - for _ in range(lmax + 1): - r.record() # u_dot_norm(l) - nlo = int(r.record()[0]) - for _ in range(nlo): - r.record() # ovl_LO_u, ovl_LO_udot - - kpoints = [] - for _ in range(nk): - r.skip() # "IK = .. jatom=.." banner - r.skip() # 3-int line - idum_nb = r.record() - nbmin, nbmax = int(idum_nb[1]), int(idum_nb[2]) - eband = np.empty(nbmax - nbmin + 1) - weight = None - for off in range(nbmax - nbmin + 1): - toks = r.record() - rtetr = _to_float(toks[0]) - eband[off] = _to_float(toks[1]) - if off == 0: # tetrahedron weight of the lowest band - weight = rtetr - kpoints.append((nbmin, nbmax, eband, weight)) - return eferm, kpoints - - -# --- band-window selection (set_projections.f, proj_mode==0) ----------------- - -def _select_window(nbmin, nbmax, eband, eferm, e_bot, e_top): - """proj_mode==0 contiguous band selection for one k-point. - - Scan absolute band index ib = nbmin..nbmax over the Fermi-shifted energy - E = eband - eferm. The first ib with e_bot < E <= e_top opens the window; - the first ib above it with E > e_top closes it at ib-1 (scan exits). A - window already open on reaching nbmax closes at nbmax. As in Fortran, - opening at nbmax alone does not validate the window. Returns - (included, nb_bot, nb_top), with zero bounds for an invalid window.""" - opened = False - included = False - nb_bot = nb_top = 0 - for off, ib in enumerate(range(nbmin, nbmax + 1)): - e = eband[off] - eferm - if not opened and e_bot < e <= e_top: - opened = True - nb_bot = ib - elif opened and e > e_top: - nb_top = ib - 1 - included = True - break - elif ib == nbmax and e_bot < e <= e_top: - nb_top = ib - included = True - if not included: - nb_bot = nb_top = 0 - return included, nb_bot, nb_top - - -def _windows_for_spin(almblm, indmftpr, nsort, lmax, e_bot, e_top, proj_mode): - """Per-k (included, nb_bot, nb_top, weight) for one spin's almblm file.""" - if proj_mode != 0: - raise NotImplementedError( - 'oubwin generation is implemented for the energy-window ' - 'projection mode (proj_mode==0); band-index modes 1 and 2 are ' - 'not yet covered by a test fixture') - eferm, kpoints = _read_almblm_windows(almblm, nsort, lmax) +def _windows_from_spin(sp, info, band_window): + """Per-k (included, nb_bot, nb_top, weight) for one already-read spin dict. + proj_mode==0 uses the energy window; modes 1/2 use the band-index window + (b_bot, b_top) precomputed in band_window.""" out = [] - for nbmin, nbmax, eband, weight in kpoints: - incl, nb_bot, nb_top = _select_window( - nbmin, nbmax, eband, eferm, e_bot, e_top) - out.append((incl, nb_bot, nb_top, weight)) + for kp in sp['kp']: + if info['proj_mode'] == 0: + incl, nb_bot, nb_top = select_window( + kp['nbmin'], kp['nbmax'], kp['eband'], + info['e_bot'], info['e_top']) + else: + incl, nb_bot, nb_top = select_band_window( + kp['nbmin'], kp['nbmax'], band_window[0], band_window[1]) + out.append((incl, nb_bot, nb_top, kp['weight'])) return out -# --- output ------------------------------------------------------------------ - def _write_oubwin_file(path, ifso, windows): """Write one case.oubwin spin file (outbwin.f). Integer fields are i6; the per-k weight is a list-directed real. Not-included k-points emit only @@ -252,20 +93,25 @@ def write_oubwin(case): Spin-polarization is inferred from the input files. The spin-orbit flag written into every file comes from case.indmftpr; under -sp+-so the up/dn windows must coincide (dmftproj aborts otherwise).""" - indmftpr = case + '.indmftpr' - nsort, lmax = _read_indmftpr_geometry(indmftpr) - ifso = _read_so_flag(indmftpr) - e_bot, e_top, proj_mode = _read_window(indmftpr) + info = read_indmftpr(case + '.indmftpr') + ifso = bool(info['so']) up, dn = case + '.almblmup', case + '.almblmdn' spin_polarized = os.path.exists(up) and os.path.exists(dn) + if ifso and not spin_polarized: + raise ValueError('spin-orbit windows require both up and down almblm files') if spin_polarized: - win_up = _windows_for_spin( - up, indmftpr, nsort, lmax, e_bot, e_top, proj_mode) - win_dn = _windows_for_spin( - dn, indmftpr, nsort, lmax, e_bot, e_top, proj_mode) + sp_up = read_almblm(up, info) + sp_dn = read_almblm(dn, info) + # mode 1 scans both spins for the global band-index window. + bw = (band_index_window(info, [sp_up, sp_dn]) + if info['proj_mode'] != 0 else None) + win_up = _windows_from_spin(sp_up, info, bw) + win_dn = _windows_from_spin(sp_dn, info, bw) if ifso: + if len(win_up) != len(win_dn): + raise ValueError('up/down k-point counts differ') for u, d in zip(win_up, win_dn): if u[0] != d[0] or u[1] != d[1] or u[2] != d[2]: raise ValueError( @@ -274,6 +120,8 @@ def write_oubwin(case): _write_oubwin_file(case + '.oubwinup', ifso, win_up) _write_oubwin_file(case + '.oubwindn', ifso, win_dn) else: - win = _windows_for_spin( - case + '.almblm', indmftpr, nsort, lmax, e_bot, e_top, proj_mode) + sp = read_almblm(case + '.almblm', info) + bw = (band_index_window(info, [sp]) + if info['proj_mode'] != 0 else None) + win = _windows_from_spin(sp, info, bw) _write_oubwin_file(case + '.oubwin', ifso, win) diff --git a/python/triqs_dftkit/wien2k/outband.py b/python/triqs_dftkit/wien2k/outband.py new file mode 100644 index 0000000..53083ed --- /dev/null +++ b/python/triqs_dftkit/wien2k/outband.py @@ -0,0 +1,335 @@ +################################################################################ +# +# TRIQS: a Toolbox for Research in Interacting Quantum Systems +# +# Copyright (C) 2011 by L. Pourovskii, V. Vildosola, C. Martins, M. Aichhorn +# +# TRIQS is free software: you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation, either version 3 of the License, or (at your option) any later +# version. +# +# TRIQS is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along with +# TRIQS. If not, see . +# +################################################################################ + +"""Pure-Python generation of the dmftproj band-structure projector file +(case.outband), replacing the -band path of the dmftproj Fortran executable +(outband.f). + +case.outband feeds the converter method convert_bands_input: it is the +band-structure analog of case.ctqmcout. The correlated-shell projectors are +built exactly as in ctqmcout.py (raw Alm/Clm projector -> rot_projectmat local +rotation -> cubic/fromfile transmat -> Loewdin orthonormalization +orthogonal_wannier_SO), but evaluated on a band k-path and written in the +outband layout. case.outband also carries the raw radial-normalized Theta +projector pr_orb%matn_rep for every included shell (the parproj.py path, no +Loewdin) and the k-path labels. + +Two band-mode differences from the ctqmcout path (dmftproj.f:557-581): + +- nkband, the number of k-points along the plotted k-path, is read from + .klist_band (read_k_list.f). It is written in the header and drives the + k-label block; the per-k projector/band data loop over the almblm nk, which is + the single representative k-point lapw2 -almd writes in band mode. +- the Fermi energy is read from the LAST line of .indmftpr, not from the + almblm header; the band almblm keeps the eferm record as a placeholder that + the reader skips (READ(iualmblm,*) with no target). + +outband layout is outband.f:56-278: nkband, the per-spin per-k band counts, the +Loewdin correlated projectors (DO ik, DO icrorb), H(k) eigenvalues, the +included-orbital radial sizes, the raw Theta projectors, and the k-labels. +""" + +import os +import tempfile +import numpy as np +from scipy.linalg.blas import zgemm + +from ._dmftproj import (require_identity_struct, validate_so_windows, dmat, read_almblm, read_dmftsym, read_fromfile, + read_indmftpr, reptrans, select_window, to_float, + write_row) +from .ctqmcout import _build_crorbs, _sqrt_inv +from .parproj import (_build_matn_rep, _build_matn_rep_mixing, _build_orbs) + + +def _read_indmftpr_band(indmftpr): + """case.indmftpr in band mode: the standard parse, plus the Fermi energy + appended as the last physical line after the (e_bot e_top proj_mode) window + line. The trailing scalar would be mistaken for the window line, so feed + read_indmftpr the file without that record and return eferm separately.""" + raw = [l.split('!')[0].rstrip('\n') for l in open(indmftpr)] + nonblank = [i for i, l in enumerate(raw) if l.strip() != ''] + eferm = to_float(raw[nonblank[-1]].split()[0]) + tmp = tempfile.NamedTemporaryFile('w', suffix='.indmftpr', delete=False, + dir=os.path.dirname(os.path.abspath(indmftpr))) + tmp.write('\n'.join(raw[:nonblank[-1]]) + '\n') + tmp.close() + try: + info = read_indmftpr(tmp.name) + finally: + os.unlink(tmp.name) + return info, eferm + + +def _read_almblm_band(path, info, eferm): + """Band-mode almblm read: identical to read_almblm but the header eferm + record is a placeholder the band path ignores; the Fermi shift uses the + eferm passed in (from case.indmftpr, dmftproj.f:576-581). read_almblm reads + the 4th record as eferm, so overwrite that record with the indmftpr value.""" + text = open(path).read().splitlines() + text[3] = ' %.16E' % eferm # Reader record 4 (physical line index 3) + tmp = tempfile.NamedTemporaryFile('w', suffix='.almblm', delete=False) + tmp.write('\n'.join(text) + '\n') + tmp.close() + try: + return read_almblm(tmp.name, info, projectors=True) + finally: + os.unlink(tmp.name) + + +def read_k_list(path): + """nkband and the k-path labels from .klist_band (read_k_list.f). + + Every physical line up to the END marker is a k-point; a line whose first + character is not a blank carries a label, whose position is the k-point + index and whose name is the leading non-blank token. Returns + (nkband, [(pos, name), ...]).""" + lines = open(path).read().splitlines() + nkband = 0 + labels = [] + for line in lines: + if line[:3] == 'END': + break + nkband += 1 + if line[:1] != ' ': + labels.append((nkband, line.split()[0])) + return nkband, labels + + +def write_outband(case): + """Read .almblm{up,dn}, .indmftpr, .struct, + .dmftsym and .klist_band and write .outband in the + dmftproj band format.""" + info, eferm = _read_indmftpr_band(case + '.indmftpr') + if not info['so']: + raise NotImplementedError('non-spin-orbit projectors are not implemented yet') + require_identity_struct(case) + if info['proj_mode'] != 0: + raise NotImplementedError('this output currently supports projection mode 0') + nsym, ops, rotloc_ref = read_dmftsym(case + '.dmftsym', rotloc=True) + + up, dn = case + '.almblmup', case + '.almblmdn' + if os.path.exists(up) and os.path.exists(dn): + spin_files = [up, dn] + else: + spin_files = [case + '.almblm'] + ifSP = len(spin_files) == 2 + ifSO = bool(info['so']) + ns = 2 if ifSP else 1 + + spins = [_read_almblm_band(p, info, eferm) for p in spin_files] + nk = spins[0]['nk'] + info['nk'] = nk + + nkband, labels = read_k_list(case + '.klist_band') + + crorbs = _build_crorbs(info) + orbs = _build_orbs(info) + ncrorb = len(crorbs) + norb = len(orbs) + + # proj_mode 0 energy window [e_bot, e_top] per k (band path: proj_mode 0). + windows = [] + for ik in range(nk): + kp = spins[0]['kp'][ik] + windows.append(select_window(kp['nbmin'], kp['nbmax'], kp['eband'], + info['e_bot'], info['e_top'])) + + validate_so_windows(spins, info, windows) + + transmats = {} + mixing = {} + for o in orbs: + key = (o['l'], o['sort']) + if key in transmats: + continue + if o['basis'] == 'fromfile': + transmats[key], mixing[key] = read_fromfile( + info['sorts'][o['sort'] - 1]['sourcefile'], o['l']) + else: + transmats[key], mixing[key] = reptrans(o['basis'], o['l']), False + + # rot_projectmat local rotation: the op mapping the sort representative onto + # this atom (set_projections.f via rot_projectmat). Same as ctqmcout/parproj. + rotloc_op = {} + for o in orbs: + iref = sum(info['mult'][:o['sort'] - 1]) + 1 + rotloc_op[o['atom']] = next(op for op in ops + if op['perm'][iref - 1] == o['atom']) + + # ---- correlated projector mat_rep, then Loewdin orthonormalize ---- + mat_rep = {} + for icr, cr in enumerate(crorbs): + l = cr['l'] + atom = cr['atom'] + sort = cr['sort'] + d = 2 * l + 1 + transmat = transmats[(l, sort)] + ismix = mixing[(l, sort)] + op = rotloc_op[atom] + rot = dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) + for ik in range(nk): + incl, nb_bot, nb_top = windows[ik] + if not incl: + continue + nbsel = nb_top - nb_bot + 1 + spin_blocks = [] + for ispin in range(ns): + sp = spins[ispin] + kp = sp['kp'][ik] + off_bot = nb_bot - kp['nbmin'] + off_top = nb_top - kp['nbmin'] + nlo = sp['nLO'][(l, sort)] + P = np.zeros((d, nbsel), dtype=complex) + for mi, m in enumerate(range(-l, l + 1)): + lm = l * l + (m + l) + for j, off in enumerate(range(off_bot, off_top + 1)): + val = kp['Alm'][lm, atom, off] + for ilo in range(nlo): + val += kp['Clm'][ilo, lm, atom, off] * \ + sp['ovl_LO_u'][(ilo + 1, l, sort)] + P[mi, j] = val + spin_blocks.append(rot @ P) + if ismix: + stack = np.vstack(spin_blocks) + mat_rep[(icr, ik)] = transmat @ stack + else: + for ispin in range(ns): + mat_rep[(icr, ik, ispin)] = transmat @ spin_blocks[ispin] + + for ik in range(nk): + incl, nb_bot, nb_top = windows[ik] + if not incl: + continue + blocks = [] + layout = [] + for icr, cr in enumerate(crorbs): + l = cr['l'] + if mixing[(l, cr['sort'])]: + blocks.append(mat_rep[(icr, ik)]) + layout.append(((icr, ik), 2 * (2 * l + 1))) + else: + for ispin in range(ns): + blocks.append(mat_rep[(icr, ik, ispin)]) + layout.append(((icr, ik, ispin), 2 * l + 1)) + D = np.vstack(blocks) + # match the Fortran's exact BLAS calls (orthogonal_wannier_SO): the + # near-singular O^{-1/2} amplifies any last-bit difference, so use the + # identical ZGEMM trans flags rather than numpy's conj-transpose copies. + O = zgemm(1.0, D, D, trans_b=2) # ZGEMM('N','C'): D @ D^H + S = _sqrt_inv(O) + D_orth = zgemm(1.0, S, D) # ZGEMM('N','N'): O^{-1/2} @ D + row = 0 + for key, nrows in layout: + mat_rep[key] = D_orth[row:row + nrows, :] + row += nrows + + # ---- raw Theta projectors matn_rep per included orbital (parproj path) ---- + matn_reps = {} + for o in orbs: + l = o['l'] + transmat = transmats[(l, o['sort'])] + op = rotloc_op[o['atom']] + rot = dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) + if mixing[(l, o['sort'])]: + matn_reps[(o['atom'], o['l'])] = _build_matn_rep_mixing( + o, info, spins, windows, transmat, rot) + else: + matn_reps[(o['atom'], o['l'])] = _build_matn_rep( + o, info, spins, ns, windows, transmat, rot) + + # ---- write ---- + with open(case + '.outband', 'w') as f: + f.write('%6d\n' % nkband) + + # number of bands per k (skip is=2 under SP+SO) + for ispin in range(ns): + if ifSP and ifSO and ispin == 1: + continue + for ik in range(nk): + incl, nb_bot, nb_top = windows[ik] + f.write('%6d\n' % abs(nb_top - nb_bot + 1)) + + # correlated projector block: DO ik, DO icrorb (Loewdin orthonormalized). + for ik in range(nk): + for icr, cr in enumerate(crorbs): + l = cr['l'] + if mixing[(l, cr['sort'])]: + P = mat_rep[(icr, ik)] + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].real) + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].imag) + continue + for ispin in range(ns): + P = mat_rep[(icr, ik, ispin)] + for mi in range(2 * l + 1): + write_row(f, P[mi, :].real) + for ispin in range(ns): + P = mat_rep[(icr, ik, ispin)] + for mi in range(2 * l + 1): + write_row(f, P[mi, :].imag) + + # H(k) eigenvalues (skip is=2 under SO) + for ispin in range(ns): + if ifSO and ispin == 1: + continue + for ik in range(nk): + incl, nb_bot, nb_top = windows[ik] + kp = spins[ispin]['kp'][ik] + for ib in range(nb_bot, nb_top + 1): + f.write(' %.16E\n' % kp['eband'][ib - kp['nbmin']]) + + # included-orbital radial sizes norm_radf%n + for o in orbs: + n = spins[0]['nLO'][(o['l'], o['sort'])] + 2 + f.write('%6d\n' % n) + + # Theta projector block: DO iorb, DO ik, DO ir. Mixing writes the full + # 2(2l+1) block from is=1; non-mixing the two (2l+1) spin blocks. + for o in orbs: + l = o['l'] + atom = o['atom'] + n = spins[0]['nLO'][(l, o['sort'])] + 2 + ismix = mixing[(l, o['sort'])] + for ik in range(nk): + incl, nb_bot, nb_top = windows[ik] + if not incl: + continue + for ir in range(n): + if ismix: + P = matn_reps[(atom, l)][ik][:, :, ir] + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].real) + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].imag) + continue + for ispin in range(ns): + P = matn_reps[(atom, l)][(ik, ispin)][:, :, ir] + for mi in range(2 * l + 1): + write_row(f, P[mi, :].real) + for ispin in range(ns): + P = matn_reps[(atom, l)][(ik, ispin)][:, :, ir] + for mi in range(2 * l + 1): + write_row(f, P[mi, :].imag) + + # k-labels + for i, (pos, name) in enumerate(labels, start=1): + f.write('%6d%6d%s\n' % (i, pos, name)) diff --git a/python/triqs_dftkit/wien2k/parproj.py b/python/triqs_dftkit/wien2k/parproj.py index aefc927..0cf2eee 100644 --- a/python/triqs_dftkit/wien2k/parproj.py +++ b/python/triqs_dftkit/wien2k/parproj.py @@ -39,16 +39,15 @@ LO-overlap token ovl_LO_udot (set_projections.f:163-197). All n radial channels are written separately (the ir loop). -3. Three extra per-orbital blocks: the BZ-symmetrized, point-integrated - (per-k weight), Rloc-rotated density matrix densmat - (density.f + symmetrize_mat + rotdens_mat), +3. Three extra per-orbital blocks: the BZ-symmetrized, tetrahedron-weighted, + Rloc-rotated density matrix densmat (density.f + symmetrize_mat + rotdens_mat), the per-orbital Rloc spinor rotrep (set_rotloc.f), and a time-reversal flag. The reference case CaOs2 is SP+SO (ifSP=ifSO=1, ns=2), so every per-orbital -matrix is the full 2*(2l+1)=10 spin+orbital block. The cubic transmat (cast to -complex64 for the Os shells, as dmftproj does in set_ang_trans.f:146) and the -rot_projectmat local rotation are applied to matn_rep before writing, exactly -as in ctqmcout. +matrix is the full 2*(2l+1)=10 spin+orbital block. The exact cubic transmat and +the rot_projectmat local rotation are applied to matn_rep before writing, +exactly as in ctqmcout (dmftproj reads the same full-precision templates after +the precision fix). outputqmc.f parproj writer: 897-1183. set_projections.f s12/projector: 163-197/273-622. density.f Theta path: 588-915. symmetrize_mat.f / @@ -59,114 +58,15 @@ import os import numpy as np -from .ctqmcout import _select_window +from ._dmftproj import (require_identity_struct, validate_so_windows, dmat, mixing_rotrep, read_almblm, read_dmftsym, + read_fromfile, read_indmftpr, reptrans, + rotloc_rotl_so, select_window, tmat, write_row) -# --- list-directed token stream over a Fortran free-form text file ----------- - -class _Reader: - def __init__(self, path): - with open(path) as fh: - self._lines = fh.read().splitlines() - self._i = 0 - - def skip(self): - self._i += 1 - - def record(self): - toks = self._lines[self._i].split() - self._i += 1 - return toks - - -def _to_float(tok): - return float(tok.replace('D', 'E').replace('d', 'e')) - - -def _to_complex(s): - s = s.strip().lstrip('(').rstrip(')') - re_s, im_s = s.split(',') - return complex(_to_float(re_s), _to_float(im_s)) - - -def _read_complex(r): - buf = list(r.record()) - while ')' not in ''.join(buf): - buf += r.record() - return _to_complex(''.join(buf)) - - -def _read_two_complex(r): - """Read a record holding two list-directed complex values (Alm, Blm).""" - buf = list(r.record()) - while ''.join(buf).count(')') < 2: - buf += r.record() - s = ''.join(buf) - cut = s.index(')') + 1 - return _to_complex(s[:cut]), _to_complex(s[cut:]) - - -# --- angular basis: cubic d transform transmat = ------------------ - -_CUBIC = { - 2: np.array([ - [0, 0, 1, 0, 0], - [2 ** -0.5, 0, 0, 0, 2 ** -0.5], - [-(2 ** -0.5), 0, 0, 0, 2 ** -0.5], - [0, 2 ** -0.5, 0, -(2 ** -0.5), 0], - [0, 2 ** -0.5, 0, 2 ** -0.5, 0], - ], dtype=complex), -} - - -def _reptrans(basis, l): - """transmat = . dmftproj stores the cubic coefficients via a - single-precision CMPLX cast (set_ang_trans.f:146); reproduce the float32 - truncation so the written numbers match bit-for-bit.""" - if basis == 'cubic' and l in _CUBIC: - return _CUBIC[l].astype(np.complex64).astype(np.complex128) - if basis == 'cubic' and l != 0: - raise NotImplementedError('cubic parproj currently supports s and d shells') - return np.eye(2 * l + 1, dtype=complex) - - -# --- Wigner D matrix (dmftproj convention, setsym.f dmat) -------------------- - -def _small_d(l, m, n, b): - f1 = (math.factorial(l + m) * math.factorial(l - m)) / \ - (math.factorial(l + n) * math.factorial(l - n)) - s = 0.0 - for t in range(0, 2 * l + 1): - if (l - m - t) >= 0 and (l - n - t) >= 0 and (t + n + m) >= 0: - f2 = (math.factorial(l + n) * math.factorial(l - n)) / \ - (math.factorial(l - m - t) * math.factorial(m + n + t) * - math.factorial(l - n - t) * math.factorial(t)) - f3 = 1.0 if (2 * l - m - n - 2 * t) == 0 \ - else math.sin(b / 2) ** (2 * l - m - n - 2 * t) - f4 = 1.0 if (2 * t + n + m) == 0 \ - else math.cos(b / 2) ** (2 * t + n + m) - s += (-1) ** (l - m - t) * f2 * f3 * f4 - return math.sqrt(f1) * s - - -def _dmat(l, a, b, c, det): - D = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - for n in range(-l, l + 1): - v = np.exp(1j * n * a) * np.exp(1j * m * c) * _small_d(l, m, n, b) - if det < -0.5: - v *= (-1) ** l - D[m + l, n + l] = v - return D - - -def _tmat(l): - """Complex-conjugation operator in the spherical-harmonic basis, - T[m, -m] = (-1)^m (timeinv.f).""" - T = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - T[-m + l, m + l] = (-1) ** m - return T +def _op_timeinv(op, ifSO): + det2 = (op['krotm'][0, 0] * op['krotm'][1, 1] + - op['krotm'][0, 1] * op['krotm'][1, 0]) + return bool(ifSO and det2 < 0.0) def _sqrtm_real_sym(O): @@ -179,172 +79,6 @@ def _sqrtm_real_sym(O): return (D1 @ Z.T).real -# --- inputs ------------------------------------------------------------------ - -def _read_indmftpr(indmftpr): - raw = [l.split('!')[0].strip() for l in open(indmftpr)] - raw = [l for l in raw if l != ''] - nsort = int(raw[0].split()[0]) - mult = [int(x) for x in raw[1].split()][:nsort] - lmax = int(raw[2].split()[0]) - i = 3 - so = 0 - sorts = [] - for isort in range(nsort): - basis = raw[i].split()[0] - i += 1 - if basis == 'fromfile': - i += 1 - l_inc = [int(x) for x in raw[i].split()] - i += 1 - ireps = [int(x) for x in raw[i].split()] - i += 1 - correlated_ls = [l for l in range(len(l_inc)) if l_inc[l] == 2] - included_ls = [l for l in range(len(l_inc)) if l_inc[l] in (1, 2)] - for l in correlated_ls: - if ireps[l] > 1 or (ireps[l] == 1 and raw[i].strip() != '1'): - raise NotImplementedError('selection of individual irreducible representations is not implemented') - if ireps[l] > 0: - i += 1 - if correlated_ls: - sort_so = int(raw[i].split()[0]) - if sort_so not in (0, 1): - raise ValueError('spin-orbit flags must be 0 or 1') - if any(s['correlated_ls'] for s in sorts) and sort_so != so: - raise NotImplementedError('different spin-orbit flags across correlated sorts are not implemented') - so = sort_so - i += 1 - sorts.append(dict(basis=basis, correlated_ls=correlated_ls, - included_ls=included_ls)) - last = raw[-1].split() - e_bot, e_top = _to_float(last[0]), _to_float(last[1]) - proj_mode = int(last[2]) if len(last) >= 3 else 0 - return dict(nsort=nsort, mult=mult, lmax=lmax, sorts=sorts, so=so, - e_bot=e_bot, e_top=e_top, proj_mode=proj_mode) - - -def _read_dmftsym(path): - """Symmetry operations and the per-sort representative Rloc rotation from - case.dmftsym. The symop block carries (perm, a, b, g, iprop, krotm); the - 'Global->local' tail carries the representative rotloc krotm + Euler angles - per sort (setsym.f:437-455).""" - lines = open(path).read().split('\n') - nsym = int(lines[0].split()[0]) - perms = [[int(x) for x in lines[1 + i].split()] for i in range(nsym)] - starts = [i for i, l in enumerate(lines) if 'Sym. op.' in l] - ops = [] - for k, s in enumerate(starts[:nsym]): - toks = lines[s + 1].split() - a, b, g = (math.radians(float(x)) for x in toks[:3]) - iprop = int(toks[3]) - krotm = np.array([[_to_float(x) for x in lines[s + 2 + r].split()] - for r in range(3)]) - ops.append(dict(perm=perms[k], a=a, b=b, g=g, iprop=iprop, - krotm=krotm)) - # Global->local representative rotloc per sort. - gl = next(i for i, l in enumerate(lines) if 'Global->local' in l) - rotloc_ref = [] - j = gl + 1 - while j < len(lines): - if lines[j].strip() == '' or not lines[j].split()[0].lstrip('-').isdigit(): - j += 1 - continue - # sort index line, then 3 krotm rows, then the Euler/iprop line. - if len(lines[j].split()) == 1: - krotm = np.array([[_to_float(x) for x in lines[j + 1 + r].split()] - for r in range(3)]) - ang = lines[j + 4].split() - a, b, g = (math.radians(float(x)) for x in ang[:3]) - iprop = int(ang[3]) - rotloc_ref.append(dict(krotm=krotm, a=a, b=b, g=g, iprop=iprop)) - j += 5 - else: - j += 1 - return nsym, ops, rotloc_ref - - -# --- almblm parsing ---------------------------------------------------------- - -def _read_almblm(path, info): - """Read one spin's almblm file. Keeps Alm, Blm and Clm (parproj needs the - full radial vector), plus u_dot_norm, ovl_LO_u, ovl_LO_udot for the s12 - build and the per-band tetrahedron weights for the density matrix.""" - nsort = info['nsort'] - lmax = info['lmax'] - mult = info['mult'] - nlm = (lmax + 1) ** 2 - natom = sum(mult) - nloat_max = 1 # max nLO over (l, sort); grown below - - r = _Reader(path) - elecn = _to_float(r.record()[0]) - nk = int(r.record()[0]) - r.record() # nloat - eferm = _to_float(r.record()[0]) - - nLO = {} - u_dot_norm = {} - ovl_LO_u = {} - ovl_LO_udot = {} - kp = [None] * nk - - for isrt in range(1, nsort + 1): - for l in range(lmax + 1): - u_dot_norm[(l, isrt)] = _to_float(r.record()[0]) - n = int(r.record()[0]) - if n > 1: - raise NotImplementedError('more than one local orbital per angular momentum is not implemented') - nLO[(l, isrt)] = n - nloat_max = max(nloat_max, n) - for ilo in range(1, n + 1): - toks = r.record() - ovl_LO_u[(ilo, l, isrt)] = _to_float(toks[0]) - ovl_LO_udot[(ilo, l, isrt)] = _to_float(toks[1]) - for ik in range(nk): - r.skip() # "IK = .." banner - r.skip() # 3-int line - head = r.record() - nbmin, nbmax = int(head[1]), int(head[2]) - nb = nbmax - nbmin + 1 - if kp[ik] is None: - kp[ik] = dict( - nbmin=nbmin, nbmax=nbmax, eband=None, weight=None, - tetr=None, - Alm=np.zeros((nlm, natom + 1, nb), dtype=complex), - Blm=np.zeros((nlm, natom + 1, nb), dtype=complex), - Clm=np.zeros((4, nlm, natom + 1, nb), dtype=complex)) - eband = np.empty(nb) - tetr = np.empty(nb) - for off in range(nb): - toks = r.record() - tetr[off] = _to_float(toks[0]) - eband[off] = _to_float(toks[1]) - eband = eband - eferm - if kp[ik]['eband'] is None: - kp[ik]['eband'] = eband - kp[ik]['weight'] = tetr[0] - kp[ik]['tetr'] = tetr - for imu in range(1, mult[isrt - 1] + 1): - iatom = sum(mult[:isrt - 1]) + imu - r.skip() # banner - r.record() # idum - for off in range(nb): - lm = 0 - for l in range(lmax + 1): - for m in range(-l, l + 1): - alm, blm = _read_two_complex(r) - kp[ik]['Alm'][lm, iatom, off] = alm - kp[ik]['Blm'][lm, iatom, off] = blm - for ilo in range(nLO[(l, isrt)]): - clm = _read_complex(r) - kp[ik]['Clm'][ilo, lm, iatom, off] = clm - lm += 1 - - return dict(elecn=elecn, eferm=eferm, nk=nk, nlm=nlm, natom=natom, - nLO=nLO, u_dot_norm=u_dot_norm, ovl_LO_u=ovl_LO_u, - ovl_LO_udot=ovl_LO_udot, kp=kp) - - # --- included orbital descriptors -------------------------------------------- def _build_orbs(info): @@ -378,7 +112,7 @@ def _build_s12(l, isrt, n, spin): # --- srot rotrep (setsym.f) -------------------------------------------------- -def _srot_rotrep_nonmixing(op, l, transmat): +def _srot_rotrep_nonmixing(op, l, transmat, ifSP, ifSO): """srot(isym)%rotrep(l,isrt)%mat, the (2l+1) up/up block of the symmetry op in the new basis: transmat . D(R)_{lm} . transmat^H, with the orbital time-reversal operator applied for the magnetic (timeinv) operations. @@ -387,86 +121,49 @@ def _srot_rotrep_nonmixing(op, l, transmat): a, b, g, iprop = op['a'], op['b'], op['g'], op['iprop'] krotm = op['krotm'] det2 = krotm[0, 0] * krotm[1, 1] - krotm[0, 1] * krotm[1, 0] - timeinv = det2 < 0.0 - phase = (g - a) if timeinv else (a + g) - rotl = _dmat(l, a, b, g, float(iprop)) + if ifSP and ifSO: + timeinv = det2 < 0.0 + phase = (g - a) if timeinv else (a + g) + else: + timeinv = False + phase = 0.0 + rotl = dmat(l, a, b, g, float(iprop)) rotrep = transmat @ rotl @ np.conj(transmat.T) if timeinv: # timeinv_op in the new basis: reptrans T reptrans^T applied to conj. - tmat = _tmat(l) - tinv = transmat @ tmat @ transmat.T + tinv = transmat @ tmat(l) @ transmat.T rotrep = tinv @ np.conj(rotrep) return rotrep, timeinv, phase # --- rotloc rotrep (set_rotloc.f) under SP+SO, non-mixing -------------------- -def _rotloc_rotrep_so(orb, ops, info, ref, transmat): +def _rotloc_rotrep_so(orb, ops, info, ref, transmat, mixing): """rotloc(iatom)%rotrep(l)%mat, the full 2*(2l+1) Rloc spinor rotation in - the new basis under SP+SO, non-mixing (set_rotloc.f), plus timeinv flag. + the new basis under SP+SO (set_rotloc.f), plus timeinv flag. - ref is the representative-sort rotloc (krotm, a, b, g, iprop). set_rotloc - runs the same composition for EVERY atom of the sort, including the - representative: it finds the FIRST symmetry op R[isym] with - perm(iref)==iatom and composes srot%rotl with the representative spinor - rotloc. For the representative this op need not be the identity.""" + ref is the representative-sort rotloc; rotloc_rotl_so composes the + representative spinor rotloc with the first symmetry op mapping the sort + representative onto this atom. The new-basis transform is the full transmat + for a mixing (spin-coupling) basis, and blkdiag(transmat, transmat) for a + spin-diagonal one.""" l = orb['l'] - isrt = orb['sort'] - iatom = orb['atom'] - iref = sum(info['mult'][:isrt - 1]) + 1 + iref = sum(info['mult'][:orb['sort'] - 1]) + 1 d = 2 * l + 1 - - # rotloc%rotl(2d) initial value (setsym.f:496-528): spmt (x) D(rotloc_ref). - Dref = _dmat(l, ref['a'], ref['b'], ref['g'], float(ref['iprop'])) - f = (ref['a'] + ref['g']) / 2.0 - spmt = np.zeros((2, 2), dtype=complex) - spmt[0, 0] = np.exp(1j * f) * math.cos(ref['b'] / 2.0) - spmt[1, 1] = np.conj(spmt[0, 0]) - f = -(ref['a'] - ref['g']) / 2.0 - spmt[0, 1] = np.exp(1j * f) * math.sin(ref['b'] / 2.0) - spmt[1, 0] = -np.conj(spmt[0, 1]) - rotl = np.zeros((2 * d, 2 * d), dtype=complex) - rotl[:d, :d] = spmt[0, 0] * Dref - rotl[d:, d:] = spmt[1, 1] * Dref - rotl[:d, d:] = spmt[0, 1] * Dref - rotl[d:, :d] = spmt[1, 0] * Dref - - # Compose with the first symmetry op mapping iref onto iatom (set_rotloc.f:60). - isym = next(k for k, o in enumerate(ops) - if o['perm'][iref - 1] == iatom) - op = ops[isym] - det2 = op['krotm'][0, 0] * op['krotm'][1, 1] - \ - op['krotm'][0, 1] * op['krotm'][1, 0] - timeinv = det2 < 0.0 - srot_phase = (op['g'] - op['a']) if timeinv else (op['a'] + op['g']) - # srot%rotl D(R[isym])_{lm}, with the timeinv operator applied if magnetic - # (setsym.f:318-331 applies timeinv_op to srot%rotl before set_rotloc). - rotl_sym = _dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) - if timeinv: - rotl_sym = _tmat(l) @ np.conj(rotl_sym) - ephase = np.exp(1j * srot_phase / 2.0) - tmp = np.zeros((2 * d, 2 * d), dtype=complex) - tmp[:d, :d] = ephase * rotl_sym - tmp[d:, d:] = np.conj(ephase) * rotl_sym - if timeinv: - rotl = tmp @ np.conj(rotl) - else: - rotl = tmp @ rotl - - # rotrep = S rotl S^(H or T), S = blkdiag(transmat, transmat). - S = np.zeros((2 * d, 2 * d), dtype=complex) - S[:d, :d] = transmat - S[d:, d:] = transmat - if timeinv: - rotrep = S @ rotl @ S.T + rotl, timeinv = rotloc_rotl_so(l, ref, ops, orb['atom'], iref) + if mixing: + S = transmat else: - rotrep = S @ rotl @ np.conj(S.T) + S = np.zeros((2 * d, 2 * d), dtype=complex) + S[:d, :d] = transmat + S[d:, d:] = transmat + rotrep = (S @ rotl @ S.T) if timeinv else (S @ rotl @ np.conj(S.T)) return rotrep, timeinv # --- projector matn_rep (set_projections.f Theta path) ----------------------- -def _build_matn_rep(orb, info, spins, windows, transmat, rot): +def _build_matn_rep(orb, info, spins, ns, windows, transmat, rot): """matn_rep[(ik, is)] -> (2l+1, nbsel, n): the raw radial-normalized Theta projector with the local rotation and the basis transform applied per radial channel (non-mixing SP+SO path, set_projections.f:591-621).""" @@ -479,7 +176,8 @@ def _build_matn_rep(orb, info, spins, windows, transmat, rot): if not incl: continue nbsel = nb_top - nb_bot + 1 - for ispin, sp in enumerate(spins): + for ispin in range(ns): + sp = spins[ispin] kp = sp['kp'][ik] off_bot = nb_bot - kp['nbmin'] off_top = nb_top - kp['nbmin'] @@ -502,9 +200,98 @@ def _build_matn_rep(orb, info, spins, windows, transmat, rot): return out +def _raw_matn(orb, sp, ik, nb_bot, nb_top, rot): + """The rot_projectmat'd (2l+1, nbsel, n) Theta projector in the |lm> basis + for one spin, before the angular transform (set_projections.f matn_rep).""" + l, atom, sort = orb['l'], orb['atom'], orb['sort'] + kp = sp['kp'][ik] + off_bot = nb_bot - kp['nbmin'] + off_top = nb_top - kp['nbmin'] + nbsel = off_top - off_bot + 1 + n = sp['nLO'][(l, sort)] + 2 + s12 = _build_s12(l, sort, n, sp) + matn = np.zeros((2 * l + 1, nbsel, n), dtype=complex) + for mi, m in enumerate(range(-l, l + 1)): + lm = l * l + (m + l) + for j, off in enumerate(range(off_bot, off_top + 1)): + coeff = np.zeros(n, dtype=complex) + coeff[0] = kp['Alm'][lm, atom, off] + coeff[1] = kp['Blm'][lm, atom, off] + for ilo in range(n - 2): + coeff[2 + ilo] = kp['Clm'][ilo, lm, atom, off] + matn[mi, j, :] = coeff @ s12 + for ir in range(n): + matn[:, :, ir] = rot @ matn[:, :, ir] + return matn + + +def _build_matn_rep_mixing(orb, info, spins, windows, transmat, rot): + """matn_rep[ik] -> (2*(2l+1), nbsel, n): the mixing Theta projector. Each + spin's rot_projectmat'd |lm> block is stacked (up then dn) and multiplied by + the full 2(2l+1) transmat per radial channel (set_projections.f:515-585).""" + l = orb['l'] + d = 2 * l + 1 + out = {} + for ik in range(info['nk']): + incl, nb_bot, nb_top = windows[ik] + if not incl: + continue + up = _raw_matn(orb, spins[0], ik, nb_bot, nb_top, rot) + dn = _raw_matn(orb, spins[1], ik, nb_bot, nb_top, rot) + nbsel, n = up.shape[1], up.shape[2] + matn = np.zeros((2 * d, nbsel, n), dtype=complex) + matn[:d] = up + matn[d:] = dn + for ir in range(n): + matn[:, :, ir] = transmat @ matn[:, :, ir] + out[ik] = matn + return out + + +def _orbital_densmat_mixing(orb, info, spins, windows, matn_rep): + """The single 2*(2l+1) raw density block for a mixing orbital, point- + integrated with the geometric k-weight (density.f:786-812): D = sum over k + and radial channels of matn_rep matn_rep^H, already in the new basis.""" + l = orb['l'] + d = 2 * l + 1 + n = spins[0]['nLO'][(l, orb['sort'])] + 2 + dens = np.zeros((2 * d, 2 * d), dtype=complex) + for ik in range(info['nk']): + incl, _, _ = windows[ik] + if not incl: + continue + weight = spins[0]['kp'][ik]['weight'] + for i in range(n): + mat = matn_rep[(orb['atom'], orb['l'])][ik][:, :, i] + dens += (mat @ np.conj(mat.T)) * weight + return dens + + +def _symmetrize_densmat_mixing(orbs, ops, nsym, rotreps, dens_raw): + """Scatter each mixing shell to its symmetry-permuted atom before averaging.""" + out = {o['atom']: np.zeros_like(dens_raw[o['atom']]) for o in orbs} + for o in orbs: + atom = o['atom'] + for isym, op in enumerate(ops): + rotrep, timeinv = rotreps[isym] + raw = dens_raw[atom] + tmp = np.conj(raw) if timeinv else raw + target = op['perm'][atom - 1] + out[target] += rotrep @ tmp @ rotrep.conj().T + return {atom: value / nsym for atom, value in out.items()} + + +def _rotdens_densmat_mixing(blk, rotrep_loc, timeinv): + """rotdens_mat for a mixing orbital (rot_dens.f:119-141): inverse(Rloc) D + Rloc on the single 2*(2l+1) block.""" + if timeinv: + return rotrep_loc.T @ np.conj(blk @ rotrep_loc) + return np.conj(rotrep_loc.T) @ (blk @ rotrep_loc) + + # --- density matrix (density.f Theta path, non-mixing SP+SO) ----------------- -def _orbital_densmat_blocks(orb, info, spins, windows, matn_reps): +def _orbital_densmat_blocks(orb, info, spins, ns, windows, matn_reps): """The nsp=4 raw density-matrix blocks (up/up, dn/dn, up/dn, dn/up) for one orbital, point-integrated with the geometric k-weight (density.f:889-907, tetr=.FALSE. path). The window is the bands below e_bot (dmftproj.f:798).""" @@ -529,14 +316,15 @@ def _orbital_densmat_blocks(orb, info, spins, windows, matn_reps): weight = spins[isp]['kp'][ik]['weight'] acc = np.zeros((d, d), dtype=complex) for i in range(n): - mat = matn_reps[(orb['atom'], l)][(ik, isp)][:, :, i] - cmat = matn_reps[(orb['atom'], l)][(ik, isp1)][:, :, i] + mat = matn_reps[(orb['atom'], orb['l'])][(ik, isp)][:, :, i] + cmat = matn_reps[(orb['atom'], orb['l'])][(ik, isp1)][:, :, i] acc += mat @ np.conj(cmat.T) blocks[iss - 1] += acc * weight return blocks -def _symmetrize_densmat(orbs, ops, nsym, srot_rotreps, dens_raw): +def _symmetrize_densmat(orbs, info, ops, nsym, srot_rotreps, dens_raw, ns, + ifSP, ifSO): """symmetrize_mat for the non-mixing SP+SO path (symmetrize_mat.f:196-276). dens_raw[(atom, l)] -> [4 blocks]. Returns symmetrized blocks per shell. @@ -564,7 +352,7 @@ def _symmetrize_densmat(orbs, ops, nsym, srot_rotreps, dens_raw): is_ = iss if iss <= 2 else iss - 2 isp = is_ - 1 tmp = dens_raw[(iatom, l)][iss - 1].copy() - if timeinv: + if ifSP and timeinv: tmp = np.conj(tmp) ephase = 1.0 if iss == 3: @@ -601,46 +389,31 @@ def _rotdens_densmat(orb, blocks, rotrep_loc, timeinv): # --- parproj writer ---------------------------------------------------------- -def _fmt(x): - return ' %.16E' % float(x) - - -def _w(f, arr): - f.write(''.join(_fmt(x) for x in arr) + '\n') - - def write_parproj(case): """Read .almblm{up,dn}, .indmftpr, .struct, .dmftsym and write .parproj in the dmftproj format.""" - info = _read_indmftpr(case + '.indmftpr') + info = read_indmftpr(case + '.indmftpr') if not info['so']: - raise NotImplementedError('non-spin-orbit parproj is not implemented yet') + raise NotImplementedError('non-spin-orbit projectors are not implemented yet') + require_identity_struct(case) if info['proj_mode'] != 0: - raise NotImplementedError('parproj currently supports projection mode 0') - with open(case + '.struct') as f: - struct_lines = f.readlines() - for i, line in enumerate(struct_lines): - if 'LOCAL ROT MATRIX:' in line: - rows = [line.split(':', 1)[1], *struct_lines[i + 1:i + 3]] - rotation = np.array([[float(x) for x in row.split()] for row in rows]) - if not np.allclose(rotation, np.eye(3), atol=1e-7, rtol=0): - raise NotImplementedError('non-identity struct local rotations are not implemented yet') - nsym, ops, rotloc_ref = _read_dmftsym(case + '.dmftsym') - - spin_files = [case + '.almblmup', case + '.almblmdn'] - if not all(os.path.exists(p) for p in spin_files): - raise ValueError('spin-orbit parproj requires both up and down almblm files') - ns = 2 - - spins = [_read_almblm(p, info) for p in spin_files] + raise NotImplementedError('this output currently supports projection mode 0') + nsym, ops, rotloc_ref = read_dmftsym(case + '.dmftsym', rotloc=True) + + up, dn = case + '.almblmup', case + '.almblmdn' + if os.path.exists(up) and os.path.exists(dn): + spin_files = [up, dn] + else: + spin_files = [case + '.almblm'] + ifSP = len(spin_files) == 2 + ifSO = bool(info['so']) + ns = 2 if ifSP else 1 + + spins = [read_almblm(p, info, projectors=True) for p in spin_files] nk = spins[0]['nk'] info['nk'] = nk orbs = _build_orbs(info) - if any(o['basis'] == 'fromfile' for o in orbs): - raise NotImplementedError( - 'parproj for fromfile/mixing bases is not yet covered by a test ' - 'fixture; cubic and complex bases are supported') norb = len(orbs) # Two band ranges (dmftproj.f:798,836): the energy window [e_bot, e_top] @@ -652,24 +425,22 @@ def write_parproj(case): below_windows = [] for ik in range(nk): kp = spins[0]['kp'][ik] - windows.append(_select_window(kp['nbmin'], kp['nbmax'], kp['eband'], + windows.append(select_window(kp['nbmin'], kp['nbmax'], kp['eband'], info['e_bot'], info['e_top'])) - below_windows.append(_select_window(kp['nbmin'], kp['nbmax'], + below_windows.append(select_window(kp['nbmin'], kp['nbmax'], kp['eband'], -1e6, info['e_bot'])) - for spin in spins[1:]: - if spin['nk'] != nk: - raise ValueError('up/down k-point counts differ') - for ik, kp in enumerate(spin['kp']): - for expected, lower, upper in ((windows[ik], info['e_bot'], info['e_top']), - (below_windows[ik], -1e6, info['e_bot'])): - if _select_window(kp['nbmin'], kp['nbmax'], kp['eband'], lower, upper) != expected: - raise ValueError('spin-orbit run requires identical up/dn band windows') - if not all(window[0] for window in windows): - raise ValueError('parproj requires an included band window at every k-point') + validate_so_windows(spins, info, windows, below_windows) - transmats = {(o['l'], o['sort']): _reptrans(o['basis'], o['l']) - for o in orbs} + transmats = {} + mixing = {} + for o in orbs: + key = (o['l'], o['sort']) + if o['basis'] == 'fromfile': + transmats[key], mixing[key] = read_fromfile( + info['sorts'][o['sort'] - 1]['sourcefile'], o['l']) + else: + transmats[key], mixing[key] = reptrans(o['basis'], o['l']), False # rot_projectmat local rotation: the op mapping the representative atom of # the sort onto this atom (set_projections.f via rot_projectmat). @@ -687,29 +458,17 @@ def write_parproj(case): l = o['l'] transmat = transmats[(l, o['sort'])] op = rotloc_op[o['atom']] - rot = _dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) - matn_reps[(o['atom'], o['l'])] = _build_matn_rep( - o, info, spins, windows, transmat, rot) - matn_reps_full[(o['atom'], o['l'])] = _build_matn_rep( - o, info, spins, below_windows, transmat, rot) - - # ---- srot rotrep per (sort, isym) for symmetrize_mat ---- - srot_rotreps = {} - for isrt in range(1, info['nsort'] + 1): - if not info['sorts'][isrt - 1]['included_ls']: - continue - for l in info['sorts'][isrt - 1]['included_ls']: - transmat = transmats[(l, isrt)] - for isym in range(nsym): - srot_rotreps[(l, isrt, isym)] = _srot_rotrep_nonmixing( - ops[isym], l, transmat) - - # ---- density matrices: raw -> symmetrize -> rotdens ---- - dens_raw = {} - for o in orbs: - dens_raw[(o['atom'], o['l'])] = _orbital_densmat_blocks( - o, info, spins, below_windows, matn_reps_full) - dens_sym = _symmetrize_densmat(orbs, ops, nsym, srot_rotreps, dens_raw) + rot = dmat(l, op['a'], op['b'], op['g'], float(op['iprop'])) + if mixing[(l, o['sort'])]: + matn_reps[(o['atom'], o['l'])] = _build_matn_rep_mixing( + o, info, spins, windows, transmat, rot) + matn_reps_full[(o['atom'], o['l'])] = _build_matn_rep_mixing( + o, info, spins, below_windows, transmat, rot) + else: + matn_reps[(o['atom'], o['l'])] = _build_matn_rep( + o, info, spins, ns, windows, transmat, rot) + matn_reps_full[(o['atom'], o['l'])] = _build_matn_rep( + o, info, spins, ns, below_windows, transmat, rot) # ---- rotloc rotrep per orbital ---- rotloc_rotrep = {} @@ -717,13 +476,47 @@ def write_parproj(case): transmat = transmats[(o['l'], o['sort'])] ref = rotloc_ref[o['sort'] - 1] rotloc_rotrep[(o['atom'], o['l'])] = _rotloc_rotrep_so( - o, ops, info, ref, transmat) + o, ops, info, ref, transmat, mixing[(o['l'], o['sort'])]) + # ---- density matrices: raw -> symmetrize -> rotdens ---- + # Non-mixing sorts use the 4-block path; mixing sorts the single-block path. + nonmix_orbs = [o for o in orbs if not mixing[(o['l'], o['sort'])]] densprint = {} + + if nonmix_orbs: + srot_rotreps = {} + for o in nonmix_orbs: + l, isrt = o['l'], o['sort'] + for isym in range(nsym): + srot_rotreps[(l, isrt, isym)] = _srot_rotrep_nonmixing( + ops[isym], l, transmats[(l, isrt)], ifSP, ifSO) + dens_raw = {(o['atom'], o['l']): _orbital_densmat_blocks( + o, info, spins, ns, below_windows, matn_reps_full) + for o in nonmix_orbs} + dens_sym = _symmetrize_densmat(nonmix_orbs, info, ops, nsym, + srot_rotreps, dens_raw, ns, ifSP, ifSO) + for o in nonmix_orbs: + rotrep_loc, timeinv = rotloc_rotrep[(o['atom'], o['l'])] + densprint[(o['atom'], o['l'])] = _rotdens_densmat( + o, dens_sym[(o['atom'], o['l'])], rotrep_loc, timeinv) + + mixing_groups = {} for o in orbs: - rotrep_loc, timeinv = rotloc_rotrep[(o['atom'], o['l'])] - densprint[(o['atom'], o['l'])] = _rotdens_densmat( - o, dens_sym[(o['atom'], o['l'])], rotrep_loc, timeinv) + key = (o['l'], o['sort']) + if mixing[key]: + mixing_groups.setdefault(key, []).append(o) + for (l, sort), group in mixing_groups.items(): + rotreps = [] + for op in ops: + ti = _op_timeinv(op, ifSO) + rotreps.append((mixing_rotrep(op, l, transmats[(l, sort)], ti), ti)) + raw = {o['atom']: _orbital_densmat_mixing( + o, info, spins, below_windows, matn_reps_full) for o in group} + sym = _symmetrize_densmat_mixing(group, ops, nsym, rotreps, raw) + for o in group: + key = (o['atom'], l) + rotrep_loc, timeinv = rotloc_rotrep[key] + densprint[key] = _rotdens_densmat_mixing(sym[o['atom']], rotrep_loc, timeinv) # ---- write ---- with open(case + '.parproj', 'w') as f: @@ -735,31 +528,41 @@ def write_parproj(case): l = o['l'] atom = o['atom'] n = spins[0]['nLO'][(l, o['sort'])] + 2 + ismix = mixing[(l, o['sort'])] - # (A) Theta projector, non-mixing SP+SO (outputqmc.f:955-973). + # (A) Theta projector (outputqmc.f:935-973). Mixing writes the full + # 2(2l+1) block from is=1 only; non-mixing the two (2l+1) spin blocks. for ik in range(nk): incl, nb_bot, nb_top = windows[ik] for ir in range(n): + if ismix: + P = matn_reps[(atom, l)][ik][:, :, ir] + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].real) + for m in range(2 * (2 * l + 1)): + write_row(f, P[m, :].imag) + continue for ispin in range(ns): P = matn_reps[(atom, l)][(ik, ispin)][:, :, ir] for mi in range(2 * l + 1): - _w(f, P[mi, :].real) + write_row(f, P[mi, :].real) for ispin in range(ns): P = matn_reps[(atom, l)][(ik, ispin)][:, :, ir] for mi in range(2 * l + 1): - _w(f, P[mi, :].imag) + write_row(f, P[mi, :].imag) - # (B) density matrix, non-mixing SP+SO 2*(2l+1) (outputqmc.f:1033-1049). + # (B) density matrix, SP+SO 2*(2l+1) (outputqmc.f:1012-1066). dp = densprint[(atom, l)] for m in range(2 * (2 * l + 1)): - _w(f, dp[m, :].real) + write_row(f, dp[m, :].real) for m in range(2 * (2 * l + 1)): - _w(f, dp[m, :].imag) + write_row(f, dp[m, :].imag) - # (C) Rloc rotrep, non-mixing SP+SO (outputqmc.f:1148-1158). + # (C) Rloc rotrep, SP+SO 2*(2l+1) (outputqmc.f:1130-1177). rotrep_loc, timeinv = rotloc_rotrep[(atom, l)] for m in range(2 * (2 * l + 1)): - _w(f, rotrep_loc[m, :].real) + write_row(f, rotrep_loc[m, :].real) for m in range(2 * (2 * l + 1)): - _w(f, rotrep_loc[m, :].imag) - f.write('%6d\n' % (1 if timeinv else 0)) + write_row(f, rotrep_loc[m, :].imag) + if ifSP: + f.write('%6d\n' % (1 if timeinv else 0)) diff --git a/python/triqs_dftkit/wien2k/sympar.py b/python/triqs_dftkit/wien2k/sympar.py index 8e37682..68e8ebc 100644 --- a/python/triqs_dftkit/wien2k/sympar.py +++ b/python/triqs_dftkit/wien2k/sympar.py @@ -31,158 +31,50 @@ crorb(1:ncrorb). The orb ordering is (sort, l, atom) per dmftproj.f:357-387. The per-shell basis transmat is per sort: a complex shell uses the exact -identity, a cubic shell uses the single-precision CMPLX cast of the cubic-d -harmonics (set_ang_trans.f:146), giving 0.70710676908 for 1/sqrt2 — the same -truncation ctqmcout carries. Mixed within one file (Ca complex exact, Os cubic -truncated for CaOs2). +identity, a cubic shell uses the exact double-precision cubic-d harmonics (the +same full-precision templates dmftproj reads after the precision fix), as +ctqmcout does. Mixed within one file (Ca complex, Os cubic for CaOs2). sympar drops three things symqmc/ctqmcout carry: no orbital-description block at the top, no ifsplit/irep sub-block selection (always the full matrix), and no crorb%ifSOat/correp metadata. It is purely group-theoretic: header, perms, -timeflag line, and the representation matrices. +optional timeflag line (ifSP), the representation matrices, and (only when +.not.ifSP) a paramagnetic time-reversal operator per orbital. -Only the spin-orbit case is implemented (indmftpr SO flag=1, which implies -ifSP): the non-mixing 2*(2l+1)-wide block-diag spinor path with the timeflag -line. The non-SO layouts (scalar l=0 entries, paramagnetic time-reversal tail) -raise NotImplementedError. The reference case is CaOs2 (SP+SO). +This reference case (CaOs2) is SP+SO: indmftpr SO flag=1 sets ifSO, and +ifSO=>ifSP, so it exercises the non-mixing 2*(2l+1)=10-wide block-diag spinor +path and writes the timeflag line; the paramagnetic tail is absent. """ -import math +import os import numpy as np +from ._dmftproj import (dmat, fmt, mixing_rotrep, read_dmftsym, read_fromfile, + read_indmftpr, reptrans, timeinv_orbital, tmat, + write_row) -# --- angular bases ----------------------------------------------------------- -# transpose(P) = , m = -l..l. dmftproj stores cubic/fromfile coefficients -# via a single-precision CMPLX cast (set_ang_trans.f:146); reproduce the -# float32 truncation so the written numbers match (0.70710676908 for 1/sqrt2). -# A complex basis is the exact identity (no cast). -_CUBIC = { - 1: np.array([[2 ** -0.5, 0, -(2 ** -0.5)], - [-1j * 2 ** -0.5, 0, -1j * 2 ** -0.5], - [0, 1, 0]], dtype=complex), - 2: np.array([ - [0, 0, 1, 0, 0], - [2 ** -0.5, 0, 0, 0, 2 ** -0.5], - [-(2 ** -0.5), 0, 0, 0, 2 ** -0.5], - [0, 2 ** -0.5, 0, -(2 ** -0.5), 0], - [0, 2 ** -0.5, 0, 2 ** -0.5, 0], - ], dtype=complex), -} +# --- included shells --------------------------------------------------------- - -def _reptrans(basis, l): - if basis == 'cubic' and l in _CUBIC: - return _CUBIC[l].astype(np.complex64).astype(np.complex128) - if basis == 'cubic' and l != 0: - raise NotImplementedError('cubic f-shell sympar is not implemented yet') - return np.eye(2 * l + 1, dtype=complex) - - -# --- Wigner D matrix (dmftproj convention, setsym.f) ------------------------- - -def _small_d(l, m, n, b): - f1 = (math.factorial(l + m) * math.factorial(l - m)) / \ - (math.factorial(l + n) * math.factorial(l - n)) - s = 0.0 - for t in range(0, 2 * l + 1): - if (l - m - t) >= 0 and (l - n - t) >= 0 and (t + n + m) >= 0: - f2 = (math.factorial(l + n) * math.factorial(l - n)) / \ - (math.factorial(l - m - t) * math.factorial(m + n + t) * - math.factorial(l - n - t) * math.factorial(t)) - f3 = 1.0 if (2 * l - m - n - 2 * t) == 0 \ - else math.sin(b / 2) ** (2 * l - m - n - 2 * t) - f4 = 1.0 if (2 * t + n + m) == 0 \ - else math.cos(b / 2) ** (2 * t + n + m) - s += (-1) ** (l - m - t) * f2 * f3 * f4 - return math.sqrt(f1) * s - - -def _dmat(l, a, b, c, det): - D = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - for n in range(-l, l + 1): - v = np.exp(1j * n * a) * np.exp(1j * m * c) * _small_d(l, m, n, b) - if det < -0.5: - v *= (-1) ** l - D[m + l, n + l] = v - return D - - -def _tmat(l): - """T[m, -m] = (-1)^m, complex conjugation in the |lm> basis (timeinv.f).""" - T = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - T[-m + l, m + l] = (-1) ** m - return T - - -def _timeinv_orbital(l, mat): - return _tmat(l) @ np.conj(mat) - - -# --- inputs ------------------------------------------------------------------ - -def _read_indmftpr(indmftpr): - """Return one entry per INCLUDED shell (l_inc in {1,2}), one per atom of its - sort, in orb order (sort, l, atom). Each shell carries l, basis name and the - transform P. Also returns the SO flag.""" - raw = [l.split('!')[0].strip() for l in open(indmftpr)] - raw = [l for l in raw if l != ''] - nsort = int(raw[0].split()[0]) - mult = [int(x) for x in raw[1].split()][:nsort] - i = 3 - so = 0 - seen_correlated = False +def _included_shells(info): + """One entry per INCLUDED shell (l_inc in {1,2}), one per atom of its sort, + in orb order (sort, l, atom). Each shell carries l, basis name, a mixing + flag and the transform P: a spin-coupling fromfile basis gives the full + 2(2l+1) P (P spinrot P^dag matrix), otherwise the (2l+1) up/up block (the + single-precision-cast cubic harmonics dmftproj writes).""" shells = [] - for isort in range(nsort): - basis = raw[i].split()[0] - i += 1 - if basis == 'fromfile': - i += 1 - l_inc = [int(x) for x in raw[i].split()] - i += 1 - ireps = [int(x) for x in raw[i].split()] - i += 1 - correlated_ls = [l for l in range(len(l_inc)) if l_inc[l] == 2] - included_ls = [l for l in range(len(l_inc)) if l_inc[l] in (1, 2)] - for l in correlated_ls: - if ireps[l] > 1 or (ireps[l] == 1 and raw[i].strip() != '1'): - raise NotImplementedError('selection of individual irreducible representations is not implemented') - if ireps[l] > 0: - i += 1 - if correlated_ls: - sort_so = int(raw[i].split()[0]) - if sort_so not in (0, 1): - raise ValueError('spin-orbit flags must be 0 or 1') - if seen_correlated and sort_so != so: - raise NotImplementedError('different spin-orbit flags across correlated sorts are not implemented') - so = sort_so - seen_correlated = True - i += 1 - for l in included_ls: - P = _reptrans(basis, l) - for imu in range(1, mult[isort] + 1): - atom = sum(mult[:isort]) + imu + for isort in range(info['nsort']): + s = info['sorts'][isort] + for l in s['included_ls']: + if s['basis'] == 'fromfile': + P, mixing = read_fromfile(s['sourcefile'], l) + else: + P, mixing = reptrans(s['basis'], l), False + for imu in range(1, info['mult'][isort] + 1): + atom = sum(info['mult'][:isort]) + imu shells.append(dict(l=l, sort=isort + 1, atom=atom, - basis=basis, P=P)) - return shells, so - - -def _read_dmftsym(path): - lines = open(path).read().split('\n') - nsym = int(lines[0].split()[0]) - perms = [[int(x) for x in lines[1 + i].split()] for i in range(nsym)] - starts = [i for i, l in enumerate(lines) if 'Sym. op.' in l] - ops = [] - for k, s in enumerate(starts[:nsym]): - toks = lines[s + 1].split() - a, b, c = (math.radians(float(x)) for x in toks[:3]) - krotm = np.array([[float(x.replace('D', 'E').replace('d', 'e')) - for x in lines[s + 2 + r].split()] for r in range(3)]) - ops.append(dict(perm=perms[k], a=a, b=b, c=c, iprop=int(toks[3]), - krotm=krotm)) - return nsym, ops + basis=s['basis'], P=P, mixing=mixing)) + return shells # --- matrix construction (shared with symqmc) -------------------------------- @@ -202,9 +94,9 @@ def _nonmixing_matrix(op, shell, ti): block-diagonal over spin, with the orbital time-reversal operator on the magnetic operations (setsym.f, outputqmc.f:1292-1339).""" l, P = shell['l'], shell['P'] - rotl = _dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) + rotl = dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) if ti: - rotl = _timeinv_orbital(l, rotl) + rotl = timeinv_orbital(l, rotl) rotrep = P @ rotl @ np.conj(P.T) e = np.exp(1j * _phase(op, ti) / 2) d = 2 * l + 1 @@ -218,55 +110,70 @@ def _shell_matrix(op, shell, ti): l = shell['l'] if l == 0: return _l0_matrix(op, ti) + if shell['mixing']: + return mixing_rotrep(op, l, shell['P'], bool(ti)) return _nonmixing_matrix(op, shell, ti) # --- output ------------------------------------------------------------------ -def _fmt(x): - """One gfortran list-directed real (leading sign space, ~17 sig figs).""" - return ' %.16E' % float(x) - - -def _w(f, arr): - f.write(''.join(_fmt(x) for x in arr) + '\n') - - def _write_matrix(f, mat): for m in range(mat.shape[0]): - _w(f, mat[m, :].real) + write_row(f, mat[m, :].real) for m in range(mat.shape[0]): - _w(f, mat[m, :].imag) + write_row(f, mat[m, :].imag) def write_sympar(case): - """Write .sympar from .dmftsym and .indmftpr. - - Spin-orbit only (indmftpr SO flag=1, implying ifSP): writes the timeflag - line and 2*(2l+1)-wide block-diag spinor matrices.""" - shells, so = _read_indmftpr(case + '.indmftpr') - if not so: + """Write .sympar from .dmftsym, .indmftpr, .struct. + + Detects ifSP/ifSO from the presence of .almblm{up,dn} and the indmftpr + SO flag, exactly as oubwin/symqmc/ctqmcout. For SP+SO the file carries the + timeflag line and 2*(2l+1)-wide block-diag spinor matrices; the paramagnetic + time-reversal tail is written only when .not.ifSP.""" + info = read_indmftpr(case + '.indmftpr') + if not info['so']: raise NotImplementedError('non-spin-orbit sympar is not implemented yet') - if any(sh['basis'] == 'fromfile' for sh in shells): - raise NotImplementedError( - 'sympar for fromfile/mixing bases is not yet covered by a test ' - 'fixture; cubic and complex bases are supported') - nsym, ops = _read_dmftsym(case + '.dmftsym') + shells, so = _included_shells(info), info['so'] + nsym, ops = read_dmftsym(case + '.dmftsym') natom = len(ops[0]['perm']) + ifSP = os.path.exists(case + '.almblmup') and os.path.exists(case + '.almblmdn') + ifSO = bool(so) + ifSP = ifSP or ifSO # ifSO => ifSP + timeflag = [] for op in ops: det2 = (op['krotm'][0, 0] * op['krotm'][1, 1] - op['krotm'][0, 1] * op['krotm'][1, 0]) - timeflag.append(1 if det2 < 0.0 else 0) + timeflag.append(1 if (ifSO and det2 < 0.0) else 0) with open(case + '.sympar', 'w') as f: f.write('%6d %6d\n' % (nsym, natom)) for op in ops: f.write(''.join('%6d ' % p for p in op['perm']) + '\n') - f.write(''.join('%6d ' % t for t in timeflag) + '\n') + if ifSP: + f.write(''.join('%6d ' % t for t in timeflag) + '\n') for isym, op in enumerate(ops): - ti = bool(timeflag[isym]) for sh in shells: + l = sh['l'] + ti = bool(timeflag[isym]) + if l == 0 and not (ifSP and ifSO): + f.write(fmt(1.0) + '\n') + f.write(fmt(0.0) + '\n') + continue _write_matrix(f, _shell_matrix(op, sh, ti)) + + if not ifSP: + for sh in shells: + l = sh['l'] + if l == 0: + f.write(fmt(1.0) + '\n') + f.write(fmt(0.0) + '\n') + continue + tm = tmat(l) + op = sh['P'] @ tm @ sh['P'].T + ident = np.eye(2 * l + 1, dtype=complex) + time_op = op @ np.conj(ident) + _write_matrix(f, time_op) diff --git a/python/triqs_dftkit/wien2k/symqmc.py b/python/triqs_dftkit/wien2k/symqmc.py index bcc85ca..0e5a008 100644 --- a/python/triqs_dftkit/wien2k/symqmc.py +++ b/python/triqs_dftkit/wien2k/symqmc.py @@ -41,170 +41,55 @@ 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 +The mixing fromfile path is the one dft_tools #148 singles out. Legacy 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. """ -import math -import os import numpy as np -# --- angular bases (transpose(P) = , m = -l..l) ----------------------- +from ._dmftproj import (dmat, mixing_rotrep, read_dmftsym, read_fromfile, + read_indmftpr, reptrans, timeinv_orbital) -_COMPLEX = {l: np.eye(2 * l + 1, dtype=complex) for l in range(4)} -# standard cubic harmonics, Wien2k convention -_CUBIC = { - 1: np.array([[0, 1, 0], [-1j, 0, -1j], [1, 0, -1]], dtype=complex) / 1.0, - 2: np.array([ - [0, 0, 1, 0, 0], - [2 ** -0.5, 0, 0, 0, 2 ** -0.5], - [-(2 ** -0.5), 0, 0, 0, 2 ** -0.5], - [0, 2 ** -0.5, 0, -(2 ** -0.5), 0], - [0, 2 ** -0.5, 0, 2 ** -0.5, 0], - ], dtype=complex), -} - - -def _reptrans(basis, l): - if basis == 'cubic' and l in _CUBIC: - return _CUBIC[l] - return _COMPLEX[l] - - -# --- Wigner D matrix (dmftproj convention, setsym.f) ------------------------- - -def _small_d(l, m, n, b): - f1 = (math.factorial(l + m) * math.factorial(l - m)) / \ - (math.factorial(l + n) * math.factorial(l - n)) - s = 0.0 - for t in range(0, 2 * l + 1): - if (l - m - t) >= 0 and (l - n - t) >= 0 and (t + n + m) >= 0: - f2 = (math.factorial(l + n) * math.factorial(l - n)) / \ - (math.factorial(l - m - t) * math.factorial(m + n + t) * - math.factorial(l - n - t) * math.factorial(t)) - f3 = 1.0 if (2 * l - m - n - 2 * t) == 0 else math.sin(b / 2) ** (2 * l - m - n - 2 * t) - f4 = 1.0 if (2 * t + n + m) == 0 else math.cos(b / 2) ** (2 * t + n + m) - s += (-1) ** (l - m - t) * f2 * f3 * f4 - return math.sqrt(f1) * s - - -def _dmat(l, a, b, c, det): - D = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - for n in range(-l, l + 1): - v = np.exp(1j * n * a) * np.exp(1j * m * c) * _small_d(l, m, n, b) - if det < -0.5: - v *= (-1) ** l - D[m + l, n + l] = v - return D - - -def _tmat(l): - """Complex-conjugation operator in the spherical-harmonic basis, - T[m, -m] = (-1)^m (timeinv.f).""" - T = np.zeros((2 * l + 1, 2 * l + 1), dtype=complex) - for m in range(-l, l + 1): - T[-m + l, m + l] = (-1) ** m - return T - - -def _timeinv_orbital(l, mat): - return _tmat(l) @ np.conj(mat) - - -# --- fromfile angular basis --------------------------------------------------- - -def _read_fromfile(path, l): - """Parse a dmftproj fromfile basis (each line: the coefficients of a new - basis vector in {|m,up>, |m,dn>}, m = -l..l, real/imag interleaved; '*' - marks the end of an irep). Return (P, mixing) where P = is the - transform matrix (reptrans.transmat), full 2(2l+1) for a spin-mixing basis - or the (2l+1) up/up block otherwise.""" - n = 2 * (2 * l + 1) - rows = [] - for line in open(path): - line = line.rstrip('\n') - if not line.strip(): - continue - body = line[1:] - vals = [float(x) for x in body.split()][:2 * n] - rows.append([vals[2 * k] + 1j * vals[2 * k + 1] for k in range(n)]) - if len(rows) == n: - break - R = np.array(rows) # R[i, :] = |new_i> in old basis - d = 2 * l + 1 - up_up, up_dn = R[:d, :d], R[:d, d:] - dn_up, dn_dn = R[d:, :d], R[d:, d:] - mixing = not (np.allclose(dn_dn, up_up) and - np.allclose(up_dn, 0) and np.allclose(dn_up, 0)) - P = np.conj(R) if mixing else np.conj(up_up) # = conj() - return P, mixing +# --- correlated shells ------------------------------------------------------- +def _correlated_shells(info): + """One entry per correlated atom (l_inc==2), in sort order. Each shell + carries l, basis name, its transform matrix P = and a mixing flag + (True for a spin-coupling fromfile basis). symqmc builds its symmetry + matrices from the EXACT cubic harmonics (no single-precision cast).""" + shells = [] + for isort in range(info['nsort']): + s = info['sorts'][isort] + basis = s['basis'] + for l in s['correlated_ls']: + if basis == 'fromfile': + P, mixing = read_fromfile(s['sourcefile'], l) + else: + P, mixing = reptrans(basis, l, cast=False), False + for _ in range(info['mult'][isort]): + shells.append(dict(l=l, basis=basis, P=P, mixing=mixing)) + return shells -# --- input parsing ----------------------------------------------------------- -def _read_dmftsym(path): - lines = open(path).read().split('\n') - nsym = int(lines[0].split()[0]) - perms = [[int(x) for x in lines[1 + i].split()] for i in range(nsym)] - rest = lines[1 + nsym:] - starts = [i for i, l in enumerate(rest) if 'Sym. op.' in l] - ops = [] - for k, s in enumerate(starts): - ang = rest[s + 1].split() - a, b, c = (math.radians(float(x)) for x in ang[:3]) - krotm = np.array([[float(x) for x in rest[s + 2 + r].split()] for r in range(3)]) - ops.append(dict(perm=perms[k], a=a, b=b, c=c, krotm=krotm)) - return nsym, ops +# The symqmc test reaches into these two names directly; keep them as the +# module's parsing entry points. +_read_dmftsym = read_dmftsym def _read_correlated_shells(indmftpr, struct): - """Return the list of correlated shells, one entry per correlated atom, plus - the SO flag, from case.indmftpr and case.struct multiplicities. Each shell - carries l, the basis name, its transform matrix P = and a mixing - flag (True for a spin-coupling fromfile basis).""" - raw = [l.split('!')[0].strip() for l in open(indmftpr)] - raw = [l for l in raw if l != ''] - nsort = int(raw[0].split()[0]) - mult = [int(x) for x in raw[1].split()][:nsort] - i = 3 - so = 0 - shells = [] - for isort in range(nsort): - basis = raw[i].split()[0] - i += 1 - sourcefile = None - if basis == 'fromfile': - sourcefile = os.path.join(os.path.dirname(indmftpr), raw[i]) - i += 1 - l_inc = [int(x) for x in raw[i].split()] - i += 1 - ireps = [int(x) for x in raw[i].split()] - i += 1 - correlated_ls = [l for l in range(len(l_inc)) if l_inc[l] == 2] - if any(n > 0 for n in ireps): - i += 1 # skip the correps line - if correlated_ls: - so = int(raw[i].split()[0]) # SO flag follows a correlated sort - i += 1 - for l in correlated_ls: - if basis == 'fromfile': - P, mixing = _read_fromfile(sourcefile, l) - else: - P, mixing = _reptrans(basis, l), False - for _ in range(mult[isort]): - shells.append(dict(l=l, basis=basis, P=P, mixing=mixing)) - return shells, so + info = read_indmftpr(indmftpr) + return _correlated_shells(info), info['so'] def write_symqmc(case): """Write .symqmc from .dmftsym, .indmftpr, .struct.""" - nsym, ops = _read_dmftsym(case + '.dmftsym') - shells, so = _read_correlated_shells(case + '.indmftpr', case + '.struct') + nsym, ops = read_dmftsym(case + '.dmftsym') + info = read_indmftpr(case + '.indmftpr') + shells, so = _correlated_shells(info), info['so'] natom = len(ops[0]['perm']) timeinv = [] @@ -248,9 +133,9 @@ def _nonmixing_matrix(op, shell, ti): """Spin-diagonal basis: the up/up block scaled by +-(a+g)/2, with the orbital time-reversal operator on the magnetic operations.""" l, P = shell['l'], shell['P'] - rotl = _dmat(l, op['a'], op['b'], op['c'], np.linalg.det(op['krotm'])) + rotl = dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) if ti: - rotl = _timeinv_orbital(l, rotl) + rotl = timeinv_orbital(l, rotl) rotrep = P @ rotl @ np.conj(P.T) e = np.exp(1j * _phase(op, ti) / 2) d = 2 * l + 1 @@ -261,29 +146,9 @@ def _nonmixing_matrix(op, shell, ti): def _mixing_matrix(op, shell, ti): - """Spin-coupling basis: full 2(2l+1) spinor representation. The orbital - rotation enters block-diagonal (beta=0) or block-antidiagonal (beta=pi, the - magnetic operations); the spinor time-reversal -i sigma_y (x) T is then - applied to the magnetic operations (setsym.f, timeinv.f).""" - l, P = shell['l'], shell['P'] - rotl = _dmat(l, op['a'], op['b'], op['c'], np.linalg.det(op['krotm'])) - e = np.exp(1j * _phase(op, ti) / 2) - d = 2 * l + 1 - spinrot = np.zeros((2 * d, 2 * d), dtype=complex) - if ti: # beta = pi, block-antidiagonal - spinrot[:d, d:] = e * rotl - spinrot[d:, :d] = -np.conj(e) * rotl - else: # beta = 0, block-diagonal - spinrot[:d, :d] = e * rotl - spinrot[d:, d:] = np.conj(e) * rotl - rotrep = P @ spinrot @ np.conj(P.T) - if ti: - tm = _tmat(l) - tinv = np.zeros((2 * d, 2 * d), dtype=complex) - tinv[:d, d:] = -tm - tinv[d:, :d] = tm - rotrep = (P @ tinv @ P.T) @ np.conj(rotrep) - return rotrep + """Spin-coupling basis: full 2(2l+1) spinor representation (setsym.f, + timeinv.f), shared with sympar via _dmftproj.mixing_rotrep.""" + return mixing_rotrep(op, shell['l'], shell['P'], bool(ti)) def _format_matrix(mat): diff --git a/test/python/wien2k/CMakeLists.txt b/test/python/wien2k/CMakeLists.txt index 1d7f454..18fb4e1 100644 --- a/test/python/wien2k/CMakeLists.txt +++ b/test/python/wien2k/CMakeLists.txt @@ -80,3 +80,15 @@ add_test(NAME Py_wien2k_kpath_labels WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) set_property(TEST Py_wien2k_kpath_labels APPEND PROPERTY ENVIRONMENT PYTHONPATH=${PROJECT_BINARY_DIR}/python:$ENV{PYTHONPATH} ${SANITIZER_RT_PRELOAD}) + +add_test(NAME Py_wien2k_dmftproj_common_python + COMMAND ${TRIQS_PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/wien2k_dmftproj_common_python.py + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) +set_property(TEST Py_wien2k_dmftproj_common_python APPEND PROPERTY ENVIRONMENT + PYTHONPATH=${PROJECT_BINARY_DIR}/python:$ENV{PYTHONPATH} ${SANITIZER_RT_PRELOAD}) + +add_test(NAME Py_wien2k_outband_python + COMMAND ${TRIQS_PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/wien2k_outband_python.py + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) +set_property(TEST Py_wien2k_outband_python APPEND PROPERTY ENVIRONMENT + PYTHONPATH=${PROJECT_BINARY_DIR}/python:$ENV{PYTHONPATH} ${SANITIZER_RT_PRELOAD}) diff --git a/test/python/wien2k/CaOs2_band.almblmdn.gz b/test/python/wien2k/CaOs2_band.almblmdn.gz new file mode 100644 index 0000000000000000000000000000000000000000..0329e742b78dd946c0adfb4d5030ea29aa951b42 GIT binary patch literal 234368 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 z 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

d9K|{{N+7n0E%Zp1}w+ox$YA+=1kIf0@-pS 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

V+!$Dl#_PZK)Zt3(T}O`bx)z^)%__wJ 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 z%0A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 literal 0 HcmV?d00001 diff --git a/test/python/wien2k/CaOs2_band.almblmup.gz b/test/python/wien2k/CaOs2_band.almblmup.gz new file mode 100644 index 0000000000000000000000000000000000000000..3eccf626ebe2590297720661d51ad9ef9fe1c371 GIT binary patch literal 234291 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

uNmLZATD8_k<`~*xLZJwOh3@1 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

M&Yn3nGzC)pCP`MubB<+wDn&U| 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 literal 0 HcmV?d00001 diff --git a/test/python/wien2k/CaOs2_band.indmftpr b/test/python/wien2k/CaOs2_band.indmftpr new file mode 100644 index 0000000..6aa6f67 --- /dev/null +++ b/test/python/wien2k/CaOs2_band.indmftpr @@ -0,0 +1,13 @@ +2 +1 2 +3 +complex +0 0 0 0 +0 0 0 0 +fromfile +jbasis_d.dat +0 0 2 0 +0 0 0 0 +1 +-2.0 3.0 +0.6529001225 diff --git a/test/python/wien2k/CaOs2_band.klist_band b/test/python/wien2k/CaOs2_band.klist_band new file mode 100644 index 0000000..14790bc --- /dev/null +++ b/test/python/wien2k/CaOs2_band.klist_band @@ -0,0 +1,5 @@ +GAMMA 0 0 0 8 2.0 + 1 0 0 8 2.0 + 2 0 0 8 2.0 +X 4 0 0 8 2.0 +END diff --git a/test/python/wien2k/CaOs2_band.outband.gz b/test/python/wien2k/CaOs2_band.outband.gz new file mode 100644 index 0000000000000000000000000000000000000000..606fec39e3d85086a1ac9d503f120c06d1650425 GIT binary patch literal 65216 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

XF+HS*zyTEwhDjHL{y`Fz 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%0DPKo8g<;gzIrFU@ly$&SWo?ue06uhF!B-AijTp3t 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 XlqRxQ&v$Az1Id)aGtK`pkdyr%^YEIn literal 0 HcmV?d00001 diff --git a/test/python/wien2k/CaOs2_full.indmftpr b/test/python/wien2k/CaOs2_full.indmftpr new file mode 100644 index 0000000..227d144 --- /dev/null +++ b/test/python/wien2k/CaOs2_full.indmftpr @@ -0,0 +1,11 @@ +2 +1 2 +3 +complex +0 0 0 0 +0 0 0 0 +cubic +0 0 2 0 +0 0 0 0 +1 +-2.0 3.0 diff --git a/test/python/wien2k/CaOs2_jbasis_full.ctqmcout.gz b/test/python/wien2k/CaOs2_jbasis_full.ctqmcout.gz new file mode 100644 index 0000000000000000000000000000000000000000..c3c7a7c8418b01c916e44f3acf5a66f1c2e70f3d GIT binary patch literal 22411 zcmX7uWmsHI)2(rL*C2u5?hqUXcOTpbeeeW#f(LhZg2Uj!-5K01xVr_&nfE(?cV9ib zy6di0t9uVs3Zr-dW4 zukyzKP(HW*e9ymrmmTOiNS=AsafodgPO<#;b<|W$`n+cu|Ls;F;N*^7Ez&)OYrV%7 z_v2XYV~O@{hIOW=1tsuLviOIa|J!`}nSg0npp~};MNP}&wl7{l@_h2?zb)D~NXyYo z7fR3k?OQo}|9?L1ALzup`2tft&!N^V>C!Koxoi0=B5y8NNkZ%51D5{+Vy>|%tN%qD zynK_3{fC==_A`cL9^+-E2_?{j_Ag6W`$u>B*~|rPAjACIkxAJ081KKsnCl;=wNxs1 z+g(Qg8W?u}eQVz;^Va!X6HPjERhDA-i|xZ8?_Y|EmqDC(7dpu(>~8G;o_xa<6XQ2?8(M*m3@m4qmV7$8`*WanJLspbsK&J% zN|D=hcT?cDu9T}1wcc}s`>}XnCzJ|wc>O27-V^KkcJXPq)if{A>ny-Q`sU>?#ZI87 zcfkAJKcVUaDx;*ggC}mWo{Oz_=yLy(eSL6MMd$k5O@>u)AA*~bkl;c^RdB%%rwLV2b#2V5$nlRpvEBM6K61u_MrQj`lMW!Qy zJhi>_fR;sWV5EwgSr7gfNuN2T76VO+&-OR{nURsET>C2k`NHF-t)q|JnKwc=mWFbO zMV0wb0IoQlx?Eo-j5$;aZ%anUsSWuDJN=r)YE)aIj>jo z`dV!%BE4vOHp6hC^si~MI#-n*thv`zq%bqQF4xP}9{zG(nM?WJ+O|Y}_*@;l0Tl>HcoT@m}57Bk``Xpy-dzx|9?f^+1@$*t8s&rL3 zl4n||&^l86?~~4m^ikR?zYg9J{5HPuw<;`uY}>yt4u6!YSYwiX z7h;;Z#$O%QB6zv{JKPH!HMlmNK-{J(oxIOgH95rw#hjp? zQiR-*7O^Cf(x>`t_%)I8`LNbmtefFou4rMM>M|_(?APuh(cg!SDyz&F6uRvTVDVl5 z=k|(kgZlP=@(y2NKpDSMPS;-Hh8yBqT2X3Tk($<*NLsA9uu}49C|#=C>E}^sqkk z-1>Hm(^@>wer@Gr`aZ7onAXapWsb{~r;1Bp`+em<`lIY$CdRvY&Mg5}We)5Q{%(NROV$BSp!kpSk_dPb zqBrIwksor%wYW4`)sR`1+|gFQvHh~@r`hF&J>?{!$)INyTjiQOr!P2kth zFn&sv5aCZ7QvL9%_2>J^3;x<6$NG5Z2t3PL(P>W(`QsI+f}G%9s z1bwPNDwFt#{joog!9?f2Oer%LK8YzQceeOs)f(^Bn;-E+81(AxT{;Nq{NhEl$|%|# zVAPpz9A<3QBN7-T$h~Ac;*`aKDr6DYY+)!o1(r z$4137ysF@SEP>69L7I_#WYzVv`iGZ+mr0^p-qR{~qK@7Uo8ES7lc|leT$yf~1XuLl zx%V;)(x5B6Nm)Xj+p|81gqzJi9l52B>k_TBE*}DCn@4rIekJLS- z@DvJPgu<~7ve0rq%Q3s{0}R@?`2F1?*K{w!8$bJ9Zq7&c&C_e3m7qIc3N0LPqhz5Z zH<#IM?l>{+`&q|&NW*=9cbN=KbYM1SFmxzebST_>(jWoeh-m;c)J~i&6Wdcb7yz@( zVfaP&9EcOIt;y610m4XuL1&5X(3;g#V z>K+!1WZBk1Lu{2Mxt>bVCl6BI_Jhq@s; z1yzS(M0`xR%McV}Oe6I*PZ$19zUxPem!~C={btQSYkw@*$91AQLHm#&>Cn8EvySucL@&67x16|Zy$@K#8$35OO0k{h&6qE*WW zFvxY3S+`dY8n>5mxI*@gng3~%=v-wpGtBj6wPkRBL$h)Q7$A&sHKQ1m?WwfahDZ?{ zJSv)S#e7o}@kA3UPdbmy8|+~6oV?C610d5>PS6t=F`uSbE*D}G#notrcN=1pyQ;Zu z36}{(fI(8udE^9oNLE-n3}G0NS@5+iCHM~-TM3B^46?-f97dN~6K8fWgouohNnL`6 zrm9NbaLH|UKn*i7+@E5Jsf;qMiV%;A4K^C(+KHD0>-{4m7Ut!Eu`~ybW@jPsd{Aq< zLEL{3+I>=^rIH10wJ%j7te0PxO}vAb^nb{maFtTHXFoa;=x0za;nt?G*aWDKYCDG+ z(yeItB`c0%8C9}3No6yC(XbFrE?zXwnmDZ9M!0^)R~6XSDXADb+!;;N z&UtDUK~q`DR}kFHziWvtGS(KtsLGghb7bvVu)>BbEaC=VI#!!VodjY1Q0`Ke?jBL> zV>{FN&h2gA`Zf9@we=6*{-xgQZ|us+%&qQqSL_RI#+wZtp#lr{i=5gI@b}MGk>KP{ zs+wf7dUssW+$fuxaNZcFv{O1*o`fi-_X|Gb4a_MM$m0wr?2JWBbP_|PvZPAZcy94N z#{_Hb9&6MX9HdEKL%)`E0@3(Wq&RE&8QpTw>3S;vEfPN1LkMn5+_3FFAy{$OY1<4} ziX*agF%~cQqo<9J_+EIzS(h^|GfKEJ!IyC`tsjvbi~ixZwDTQN#wp5?T89i0k#&~8YSaMi4%Ns_2d$0%MLx_Ux!%?C1;mK9QGxa9W8RM-b9X!G*4iMwBuXaKXll>HS+~t~1t%xciC@sA-z~|DB*)zH zjsvY!G({ExRrUZAWZPdL>b7V>8;K{As+u~*Aw*hTd@Y12WE3>1vxR(c3Sn#dV77ESK#qrKX2{cUTFRC^@cXa86x%N8sR|sAjlOqK@3CM^t>v3x^)!mTK`?p{Z0Zr;)>yxy?wXiG3jzxd+0V}+l=VJj z)Z8v;l-17V9FVwc)c2{?YhfkwlNO;I4^!9X9SouF|TkwTZ;aM}-{JR+~xjoM&r6c;w{Y6TvaeLlG z!DqY_K03`IZ)MY#u;}PSysqF-zu!b$(aJQ0q@otS#v=gfFnK3nnSQM}3qpOB_m4ie z$|xy_#D$zlRk-{?S#U~ldm^SwW6@}~@Z5azeDAWSHR<~YU$|HDE88%4>YrxanV&|% z&XtZfluu>?r~mPq?>7-}<>ygd;VYaqWCX!%ERrp~sn{qukWCkRq1`4X%L{age$v6s z`A8}aOq5E#e7X}ePB#>)?=NtSdp`6Mk>cel0!-P z<=!Py4z9rp2T3lg${nT1cwGEgTsi)y?L2F_!z~n}8{0_x`1?Og*=CI&qH{9^e4>he ziYUBaQefyEl1?a=efCt_RdNL^I%VLs*^j#I3dltnOI$Sn;}BudJs<*ADSSH`vpKiN zw2wZkRmU2b z3s*=a5iz#7?9IRF?U&?LxoQ9T026ToEs5YS#8bJPgT`G5g#w(J!c~;}tNwLPm{f5D z9$C+B!i5omlH0po@t+}!zr(G^j$OK0;(oM`a3KyO!la}v7nAqFUlD@mRDzTGGoOb5 z;dg2=f(5TNy|sdd38N|qH%LsSMH}LQUH)OkMYm2g_Dmp7VVd1N%FTIHeLUK|R6fsY zC~2>BYCN6fb`m5sOO@Xi%V5{{e5wSek3GcqN0&T`fKUwtNoiF7XlR*o2GgzO-DYSp z1XMFVR*r)jM&}O>toDzZJSAOub3Ypx(7Q zEPhcAQ~K5bB~c;a4{Ys>I%JKVM9K}C(Bpz*CD(yW{a)cUE#da$WxiI0t(wtRoFunO z?uSekJ z@yNa}ZCws@*9Bd|Y>64b~JL$z6XKr2}U=HOpnk-m*oT^S+)N^$N^U5^6coN6yyw5O- zm(!oFKi8I+KEfp91f8UM9(g4y&@hWCMoYOp-x$7bw3X{N7+?-A3Ie}~%}&xhdxcXl zM}_%;BM4b@uQU+kifWv6`wJEy%N5Vc>h(vo8mgtx(_2Y-mCMi)!n$|w8-q!7@B|P; zZ@)C<%DV>ijV?$yV}{z)bkg~Vd(rO70KA4#jBxk$-YU^KuFqpI3Y`1%wK9DAg5U|jn(zS92evU6%4J1$H zU1f)yHjMu>68hjv7ha4jQz`DKOm&$ld#d-{tV#1f^&*r;t5E%4zuo-jw8|5vuc&UcgA03aLaERbq5ZG!&oD<;U?L$oM_3LV7msdg zfYteX-dXHVh3|z}{9{6Fm+|Msqtc=uCxL&0Ks%?|_tZYG`?}glX&Kt$Y{-25Ogf`R zc-@+#MZ!E0Rd7i}_PJHT%ZD$yI+IC9i9=~Wv}3g|I~qm^7?>U#!~`tmpGn`b#0z%5 zUS%V?1z+R+rs16Tn81qGA>`dvz~9tcM$mMYdDqCyJO|CjizhJY+UkE+XGmh@>*!#{ zOyp+G$wM%m5h^fX`GaVt_()sxyfkN9i~5Wa3RIi;l)If{v+r3XD0TtU5M@FTI-1$! zr8rDM5E?0a_+5X4bl@f)#-*koE`{)0pyFa`p62WUYD8tsJl_|_d7EgjF|)juO{Y>@ z#VNZAEz}e~Z=!Xd9()9{@Ht#PUK{#=cfQ%f6k4IaKM30kNid%c&~e`^M6GT4QD8I> zRV2)xGps3P-|-N=z1d#cZ;X6}ixMA)3nth*`LMze^Ht%w7|=M!ZLp9W8Jm~8Asu52 z>wdoSYAQw9)hoJ|o!iBZ(Hx*;=FqvdzoPqeuRWE>3qnG@ZZ6R>H$EPSb9|59nsUG5 zcxyVaut9AulO$%j3S+V2C7k9tcv63h)F#qdZkx#Jlx94(K1;w~D{|#^7?-^l5Gv)o z;pyhIsHHmds>X}Ouph!N85~Ukz9|e~aJ_!brgttF=0rzJ?QgFz9!o65CGSJBzI3pN z8H!(_FZlUX7n~5oE1P`I(sP_e3hU6z4*D6yxLu-I*yC0|EzvvcDoURSs>0{G>X3?l z>wiaRmG+Ku>Q~rGCaJJL1u^bBlE;C{^^k&%^q!nZ=BOWi@sMY~ObgeoM<7T2k?&lz z`ts@cP|M6u(wgY)5zApN`h!8-gcGe{>p022_@h-5-k;nvYS)mc#0C|Em-30weX+U7 z?GM5k%vOJVz1~x10PiO0hsAbWv2my48(}WI64u%-g`RHJ&|Ea`5@XXjI}Qyb1=rHh zZalS9eCW0Z#zX3hf7`2Yg1r-LxT|H5I6#9~K2t=)71376nM)Tbo|ITA=rokCiQ3ez zz-Y7g8PcLKMN@3G(l=@U7w+X1R?0=Ap=2iwWWCi+IQ!7XlXXE_5eX0BTrT*Y`W6Ff zG%6k)L@G_%VvAgnL*OlPG%U{IJ6IxpaKVM!VW1y>)$(ccf_s#dVMd;JiAAHfa7Xs_ zaEOO#!hARKrJMsOX&LA?EO2i`o4_KdlWd)QuW<1R@Cx_L0F*WeJcUhrVQ9adSiwl1 z66?qfP}3>#2GuXRVD$$TNb*PRh@=@)ZE%TMBRdH!lD$se40?V4TreCwfsAxK{L8EZ z9~LbAzN${D>->4;3|5!xW5POX+6x`e8Mt zjg{XB&gc;t4$XwN2TazLGCeO{`-*Wb1Yl!GU1^0 z)Mm8#OeGj+jVewIZNqqjG8n+uLcU@lQ_t z#h+1FghNcP=1(@bhhYfyu(OhW%vb!f{PiUg*2gp*m4dUxuS)j|lCVN3?_gBA4qJzh z)0aF+%xw0Wx0ce`TA_KE&vtyF#=C?_`->n5JMnlRug#cTeogVSX$Aj;^L+jla=+9m zBR0ZuBGXSw`kG79(IGQ<1#S9>&PR+4QrcvcQoZfZpM_c8er)VI8y8(;uJkIB$RvF` zV(XPre#wj>RTJ=s6VCDS+PAY(&a2Of`4w2%3m8cW?sD_Pw-avq zvS@ZrQbw3K_g5#t#BLSe>A3$>Y@P*y(bof~U21i=S{N z+_K-=2dpB3xclpgwjMSRC)Jn`(hzzdy0Inr@rXN$UZ<7|QsDT8Y%?H@m?!ZB@OwU7 z{`kHNgljr0g0 zgzqE1jxb8~Q%;H%JkWq2fE0;41ER7iXjQmF_eWxkV7BUtD+EeXt}#?UjS|eKchvcG z9R4a7ZlN^d%y6rB!LrZ}4m+^o;p-@O?#18$M1?RER(gn=-zQAL+LHmE_`Ka_;k-6dX8A+hL;d6zt>dk9#H6^wVs!-~P6bgP5!@9XV%mEo+setIRc z@`Rqk3!E@^>V2=aOttqGmI#Y3mQzU!T4a`O>CQ<-NZ0GG3x7pDE)*tV`cE(&YtG1^ zB1Jur5rn3J;JeguHhtnV%V8tNBiHI);5eUUtC1ya6qFD=9fVY_+_f9p8Da$MX5Fj3 zBX67@szFqJFv}8*Q15;n(=}^$u2S~1pW)f=NX6=|EL>DEU(+oYdMFju2T%VJ`z+@u zZ7su0H;@+*bH8_OW(GSXFf5{W9CL%1#xHLbF-0w&M*}}Z-K`fSbKm&IaKav}uCthq z;AQ`6Z`p!ciqe?7)|!n<0=|di@#iLJ?Wm9aeaTz^=f2}iwuA)JP!#6Jfgy^*ammP0 z`n)KujLO7PFLYY)4GTXVwlNPK`St+D0wxMumt?CF5OF3knz&IdBmD^zxvqi9f|;-& zG}F+<`d%VQ)dw5EE|3oAS^6+kCM~4FXj~mzBx~J}Nh4pgO1X$)jw3%U^L8^=*5lcBVFmv8W~~;aKS8_7mVmzH?mjTB>&AhRJ5eV z7?wdCm6LRYBG(@>{&fg16o~Ur6UVf+1sKFh(tS2b^#wj~i!n{1!BILj-1pqRn48#lZGQ_s*JL?yPq^)yB1$iP?nzU-&Z+^v zd{y~c1q%Dl!4H)p9N$eAWrv6i?8ET3#9J1K2CqDXIfOU4x$)qHg{&A&Q7H|pZJ<2Z zjTWQiev4Z|?Z2Jl7ju=$+#1G~8j{92@N(tc$s(-#tX)>R@;p~pve6G>41e1&3>LY< z6M&145T)#pN?1|~#8?JRMha4)i*$6cGe%I7kx*VNrSfkW)||VObUESS5^30pfZ-5j z0j_mR(po>zs5mZygKo`$7kb}Ysc<(4 zqX>VkmrTIvB*EK3`w#mqnSG3}Bxo0Q_$0CYkb$&3vTwCMP?KC-x^>7TwGKq^TAu$k z!ZoC9(QJovi<)UY*Yb3TEtj)( z{QYn2I8IVHDLb2{5jJs+mTd6O%{^0%QU4YLu2_RRu&7U_Q6QSK1dTpqnEnd+raULR ze2U*)#_hyLM#y?{cQj3%*zGRQAl;B5js_+C?m?%JV(AXvb?Hd9_-u||-~PCGt@%z~ zf!o6j1?ZG3V|X6-!`41!j>3b7{MBH&>huj(gEOdKg_Ln0K6Uvn!~`_<;~zD{H5$O6 zVIc5K%=VI(kwFU9UR0oi&OXW&R@c*K`gErqHj%llB*}l)x24kU5R(pphrX#JIx$V= zgMPMO|Giaz_|TrzNEQHx~s3JtwtRh094~ym!Qqyo!&$sB*}O ztECRLZfqa?_u=lgF-u|e=x8o0f|N@c^q@%zUs!t_QZ0ci%WKMEhf0ejEju2gYTTwB zyBkRPlTtX|BMM$?zeinNpDcPc4A$A4r`~6$G)|%-Z_A4nY>9T0)|y}$%Z$RUHTqwW6_B@ z%uiq9jD{n@;Bj;LgVp>uL?a?Piz3$fEb`I}-9P5T-nvNzBaCo=m}H#CD5T@nc!?tU zM~gt;aT)2hqqTl1_{;Jm=(+Fl0{G$Hq+lLB87J_6!~C!v{Q7{jXXLxDNEmw3q8u_= z--~J@SbWG4#M)=0ecDxSHj+sL--|T(&zovB)NvMer$%>F^h$b0wKc-nn)ZA$a2^C( zG!6Q0yVuo;hkYo?kkyUJnIvtJ+#TB=<%XJDMRb=eMh*_M;&A_sj+k(iz+c8n?W93g zVM$rk)IiCrZoU#uG&(i^mv~?tNbKG08WE=J{$&=);!Wi+S|g{kM4O0uX$)pU%Zm@e zt0Q;}R;N?w+mZ}AaUQ>Y(`r4`WYT4JBj+}bvWYc|C83fzK`+1H{s1aKgM7abJG3Zd9Mv>9NfZQl`U=rkIJtzIxz7+Z0=B2$yZ5Ayy zFN4+fJ29ABNmQ(Y0nZJ-9ee9vx|0sat$J{E+8NO-(L=C%48x#0eyYT}*vMUzN$>QL z(ex7O}(O85au>Ty#l`k%3s1~_*S z{?l(p`0SL|Sni?#!ku4PlTq-!1yrN^ldhx-@;tMkcl-Up_LmI%oexKyHlJVzk0dU9 z<^0e=LwA-cP0E^qZ89s`f`XYQ*@^+qgAVlYu}F9${_mKdKh4j6Uqt2@JRNqja`$e1 z<~gyJZeEh8h!Z7mtjcQWBTGQNA))@Q8iPx5N`8IMC?kaLoEUXs9%ie4?sOX$-Z{x~ zh?)XQ-`B|H&7E=yEju*w-ukG0E4M3Dp@w3S#9HFF z1ab(=V>)11n5%(s-c}BW0k-YQRrV*98o7x$o|G2xZX9ulfdj9@l@adWP_-0SmIV|o z7YKUqqusHYrK4LMst0@;6ZSm`MTZ+ujn3vzWh`;LMM93YBW7C#$HHfNs`2px&tXcK zk^vTuGV4M}%3W0W`T5FsW3vo3qRqY<+r}3Ib@bRKy(fg&2>XZBtT>@Ol=$zn9!Mxu zNx1eoNGQ$`W4RcP6927jE*9|&6U%1zUpGjb4~FaPB*gP5j=Txv_<8)sTX0@X6<`*e zwmP1Uzq^g%Gs(p1S-sl4s>F;%0jon+=6+YvKhP?}ta4$Mv?st~YPR;qg4(HXta#M! zcXuAVQE0rr%EuNmBF3P)Zrv>;C+cPJlNS$KhC$towTmf(O!|+gw9r}vgSjk8#a=@- zanywdzr=2idDEdT?65RcAQ$bOcRm@Mz{`s^iRjK-hQcp&^KlfuRjzcIrBiQv<{!cD zR{(wB?-QP5E-g0Yv69{X@}-(|T85R%0iltpV1-4bDIS{VcRJ1I0x2A#)7L118f59F zI5Fx0#xd7Dt`NIKoVHaQKaH)96c2G!zr(2ZEI2+yRMKr(>cCEqOr{tGuelRep`Z|U z`{rpBUbp!H*(So3T|P=}y$MP@i;6&92j}5bw@oXlOhlv~ zJ`Be&Cz7mGp3|g{si+0+u3j!b5m{Yk_p?mKna#NEM4@%{8eIbQ*>{I1d7KxfBE6;4JVKVEYKL*?^IelZZSfC5J_vsA zX1_kS+gnz%P-yOqF>X>e!b`IZ47;{!2W)sw)GzH!khEklkQLwOnSo{vY>CFFnvw&9 z(nETsU`O&m4aaUn*UF)D!sMGO;MtC_1Qh$&08+{*W(g%(MSmPPqcszrZZKS&0N(NK zW_#FKp&@rKhPSX_#eA*zCnR@Xq;RdM8EuZa>;%@DE_vKY z;R| z(8j*1phI9l*@%GC-OoOWup&+D1}k20ZowEX`c_ZQhW3Ti6$qzKMbW~=!90XCgy0|5 zxg_IN#u{e!$o%05hIde)tn{dQsBv5Sl36M?F7IubJts*;|2Ys5o?`R|_SC|!`q@g| zZh=al*9y3j=HKu8*J0cgU^;F*`T4eyTh@*73%koN+1-|AdqfAp$jb2i%$S#)5n`X3 zaq9&t~>XG4?Vvsn=ht^sK3bPIy_|9RmO5TSUu}6*yD0JLY|B2CS zweFhMkymRO421pQQrGZKZphU~8BMuKfcfD;?;1q8FG~>)R(?@s&a8J4)JJ%PdSNq=#I06FyQOPtp`>i^pr?MfU(o@U zC)YC!X9IzK?gTa3XLt)uim-r_pe#r4)(dn_6V%gO%Z{*li_E zRWC&K0R)Zr^u4lmO;>;$#QnUJtR2SuN?vXthLiI}YslBJVaui)KbZa>*0ZCxqil>H z_#dL77@g|9YwFL3D7j?(v(;G_M6;;b#ASKi)nOL9l&M$i|JY3ll1Q{O?w7sbdT?SV zSFiQZwyL|3LhO7=h^PX+cI@~;Bp4F~^o@S^4K#1fX>stZJd{FT1Hu|crG$XaKFwN> z^)P1AWqZ|>&5^l!C4v>}Ork8`y(qVLcCcKC)p+EG(BRjN@P_Arti#>71%tmK)=g=G zp0-Q8;&@0cl_^wrQWcok*L^-N--Di>T(t0qjK<8~WY|-J&h?uqu~prtg$3a4<1L39 zaYu;HNJ*vl-AR+8usCh>G5h@g7}_{|Uho0T$k!aaPW8&$@oMV+UQifjpvx>Ie~_lt z@4%JfKUAd@l0fUNt*b0hiuC?$1kdZ~Uy!&AQBI$ye1E-%ZG=Zc2A-Q08>taxk-v&_ zN;zhXMsS~)7ZJru7tN!I4~-|@1FxFs9fkZi>_~j&;2d?5>H*t~gwF(vYidg# z8}r54NEjrz23uJpq6bddE?;8CjAYNwzN!_tOMoUu+(QzZ?uMP!{=7|s%p|UJBkHme zt%yd~BAWZ^8sIurnN8yK8@I)L!4%%9X!7mG`{bCf(gwr7Dr!e4i1F~}@ffd6zUjKS z2c3fVjEav?V^^q2>`7|3NsOI&tJjn_l(JrNa?SP$!!*gxtnfY!7q>+;h-|_Fvh92B zjV>lK^hOVaVX9-KdY$@p5NBAmZu#QNrR)aM7rcWIKV zeiGUhEbi+AhgFwNe4xiF*iaG%-{9xqk03%yc(}QqbJ9W^W>`AG`o(6IFG>8KBxGzs z#6*76Jn|xOMD(sdD$MP`>SFmGz3y%i3l3nqk?A%*;Bg$!yRVS6SPLM=`9Eqk@}p7m zJSDxgGHRuji9ftR2{h&-3;S!w(?yVZzhL#kjXfCV{AhzQ*kOc`J&vfmSY1SAm3|Ba zmdW~VuBqrkNR<6(D}j3KngEN)EPWe=sa|UR0))Q7dpd}3KdZYG zf~PD_&8k>e1(_@8b_Ni6#E2UfhhN84@cK^DyjKUmA!#k`s@gln5k=s05wFIOOJq#s zFkgSp-SSrBh=rYPB6wD$+~xiXgD*?W=_7MqKJo?v?_;e>O#kS!wF4hx9{i4LyvCW& z0!)}SrqqPuu20oepW}eSAG>_34>_q}DSglGMN$gvz#imFaA)oqGls?1cl=qR8K!*| zB_zZw7nMuPKWiX(u|3uE{`#wvzl_NkV?GsrWDOwwD}cCFX0!s7}uD#hWi zQJyExu#R?M2_m#clf$hzIyt4j%16voOXT10?R>z5vH~RcU;!$n;&4T}<1YQ=n0ym5 zwwfj1dg$bFg4EMIV|5H4e3|A#Op4%gJFpCSoEd??7Q%U(JKWZ6T|!u#w9SWcv9-zR z=XsFE@#s8_F!!`F%>Ijv)OB$GAl}`>3`bm=>r1oVLBdGUq?Ul0C-S*TvGwj{K8?sc z$iRp}xpE_8f*07hmFgc*~BIpWtj_hFW=Zwfk!(&!R@?7C31g@##h|Iq7BAxDz ze?Wmscsu07@ti8P1M544eSfe260i(9Y0Ycl12#^Lk%iyiEki;041vF;{E25o#+GbP zoZAR56zBjRyx^{dj;!`dlHj$M!6E+Wz~Sw+H>QC`16n2fY~q=LRIz{Z-C8<%%kH)m z!i~uswj}Gy*G3Q&p&{H9dQ~w1-Bat1e&i5`<3a7=yZOYJXAd&Aj3YM?s~D8#_M!ihtHpYm1C71x-h8~3K^l{n39E`Aa6@?Cw5tfN zfDD$|NKsNhggTzM1o;xU@4vTX8!XP7V-UH~X)~_p@(9EcWv6nl<>p|i;%=Ep%{4AQ ztqE3M&w&cJU_z_~lR`=%{Wyfuu-G}@eE)i4A@~1>L-=lR~-{GFnD-J)h(T&GBYy1*04-#TsgBDs42d>!oIs%Z4ZSsX7o8H%s z(u?HD9H~&s8~WV2fEUSPYY&D{#0qyfT`OR- zkxH^$vFu10+*mu{!yYVy;wkX%Xi5T82hps{dtU;Ly}?BRJ?NScMAXBHlYf)3+j7OF z!7S-Zs&tYB)j%36O$h4RL}iPIKrFE5f_y#D_uS>`xZj%BwUeJfeAyA zc$Gu95t2J)^jM2g$TotPtHO?~!us~j1A`-usNe^SgD@G}eI{dC=oQLS9&<@4%@_ra zB_zJlh3wmx`NPFmX@Ml$#t^QCY17<+A6TlzrH=d$vf(ylY|7!V-FEW=CyqJzh6oI~ zJkd}b$6Y*|=W_|u7RXk)rO%m<9BL;oPYpMr3Mfv`>I3mi6BQxmwa^#WMD3g`GK>2?u zcov6(1aBhseYrd;&l1)4>aj&9VR_&R{WCq)gDR^&_>QD@p}4u^a| z&2RWfWe~WZ2><=z{R?G9XcpX{lzvTCPTz<_{n)A31Fx4NL0Htl(^2)%#S2_>*(X;m z4yV1cIcCrTP~saz9ev&8F^%ArBX>JdPxuV83zuk>z+HA5WYLN6Q3{#sT0nVl z7D2+e-{$K1nGR4=K=-pkTIU7sg`h#NPWXU=0yw&oXf%O`{S2LAM*n4dw7VfF6(d@c zh9w`OXDXe5%?H{Ti6h@%REn)<2x}^^`|;FUc;~4~`zV=A;)s$Nx@d?)Lol#U2#)0) zZ5w0vl!~o4Zcmm#G{t2@*`m3xb0A5}$i$N4tS{=4L$gd`^i~;j&W(R zgYaej$$vq8R-CX;=D)J4NB3 zQRdJZo1x4U0;&{iI8;yU+*Jd3Y9Lw%0=6;C_w99|gdO&M3&;YX3yiPmDFs%ziU-bu z6uSA6GXGkv(_-~|Zd9LPIH8}SXQMfdz?MOZ9{3GUQD?Tu*zyQMKO-_FU1$meKX3B^ zFPlW6N9ghsxCo$FPdcOqH5bVm| z=>#axlCFYIv0=9L1Qiy*&tCafg_GMbMaIEDB!DU3?`lWTXI?~;uu#P z5h?27oqfB>SvFvTU8eR|rX3ijnk&5ZbaF+hxU_^vyNM4dabj3$+fj5i2ZCTrbBLP8 zc6*=}p2GfUF^H=JpaYn0fBIRB7DM1PLK3Zosd1nE!BRryg`e6Bphf{!1-EV_+ZhTv z__BTXBvnk>2R0e)I(Vb&a77?4ZC+8IjEz#?oLiZ|GPcEv#Qtc9*JvE&V#JXDuFv!~z3sq3Sp2TVGt@H@3vJB zZ3_1DpkT^G#g!Oi#^f3qo3|p@w+)e2USI)PFEQ2r5wuM13vg1JlZ^T&_EEn&I;7MH zf9^LU75)^FB8Y%i6`?|8LnjHr90+iRURsJ{*zS8~u0V}t=|znx(i!Kgp9I+*9fP!Bzd@)c@Kb?(H zV8wutq@FxPdGoR15zrYIq%V~gyjWNb=Z2Ow~PhrGguOs`2DrUvQy%4=K zSD+QEFYPt7)aw9_RmuB($)9WWfyc|>l!Nkjo)^gNXN&P8jACOmV$**mK{LGkP>?#$ zjGGhd3SP#LA(}6aNZ4h`AgTTLNfTyc-)RuM)!s&2#K7+`tC~esB_S6Gw9&%M*^}42 z1V5U|B(t)rG!TDZCumoZlV|a?!4~Vb1D6=Szm!3e*d6xfK$Qvb+;}1!ql>)24n9E? z_5lTn0I1li9`r*W=p+_~d*Q;7vDLF%oxS9uPN~gJbTOqu_<6F&(U*%U&3WE@=@s-yA z0Rlj1h4vA5+_TF<(-$k^1l1uV&7S+|x>jiVFdK8*6VR3yp~Ufb8&NOCYXUA-dzChf-)#|DbR<#u2er5cd3a%7e;yL_)EFz|$=w)GBHzI47Re zr|UER4x?r-RPned{Ev(c`+WqPjO~JZ5NbCptiJ99VINyLfO{#mVgW~;0CWjS|9Qv% zR^Fj)fK{+N9_oz*bGeE6Wc2PzoeVIK(T6q&*Nw^8w8s>56hO5GSO7J%qMkm?J7^mi z+Tqp~dZVtG2UQw2{g+u{&PC4@)9|0~G-Wv?M045FC z6A$ggnhR(=XuR71Wp+{5EO-+O;Q-`D%~dcHq* zp00S$A1EmZhv9EyT=6`rwTd8@aCacpq7>{#k~b72!oAH#WkN<4b4(Dgp(-8_xCl{} zDOI8DXJ|aEsI$7->Mu}4iIt*ERNO%j6ShaY7{b@XCQXc>U!lr$pOim9ut_6p)|2Bq*X&i!>q7 z#)?{QsUA#&5w4htmD`}kYEaJ-swV|Q-8-%(L`X^dd` z`=@*c0<}aix;~zJ91pfc0b;B~<6szkIwSL^n}PT-bgh>OjiJZqZ30^G+`0L%vV9bN zxh%ikTXrw&lL`ciXUfu+uC~gq>KkHX?JZS_Y+Dy7=PoT5QafFFOn()Epn`add%5Ca zrkr|=rjh*s5Iym>^4r~OdZ`yg%0zX)XmtB%Bsd=4;gsLL*7();7VJtINq6Ty*pipK z3o>)=qq!@99$y=_^)7W+p^|yea>leK@9{;3w(E`XI)tWqEI;bWO zPJ4Onay;mgvPB(JD=X^Y7F1SVwDT;&UsAcnWcV)bmJsZNC0upYx>%^Mweh)Nehj;^ z=};-L4w3)ds~HHMLKAix<1VSnt`wkA7=QCr5FiUU*J)w1eY|c|GT35geCTZa#wc1c zmvohWJ<|W|Pc>omzY4SJw=PO9^AX}Db?=-Mp}VA&>u{mTjrA^uM2e4!WEg+SAAg*RSwrjr}t3{JN3Dw4K&pFkxhM$f?e zOUrH%(3e+KY*fZk!0&n{>=v=Vwa~jpo7-sYdSX^ZN8Lo@miuUJACF zoTL$>`}X@%VDvpw7tnZ$>=WNh)hDsLTtrhv#fX(r-$ZdoD~T$(trp|aWC*mE0Azxu z2iwn+zVj<00_TJ=4!hV=Z9(9=OB@Qi>!SwP@5w%9m2BZYUpaC8XS?%JatxiMIN;M~ z2^VClgfB=T6nS`U&CVL|@KrR3yh(#rx4JsIB+fm}Cl7F<>GJ!(0jH8+vA6H+7Qcqc zcr4#lqswCsP@NEm{wp(Qxrdg)ZwaG|kMtEW8OcDzs~l%=hc;P7$BZltH4*|-IW)jo zD7~?Bc)#?{E=_rUW<=V|$rX>jpzDV`FAj^Bqttp#{fo1qD-15u^_V&>YIDi&0R$SH z%dG!cJ>e;X+og`&FaDr=I%;?@r8!4}CVW}?0|JK9_A{bsxj_!CJ$HpbUxRevSNraG z+5Z~^DyU1Px{=V)4zQMJhJJjt#pQjPA0l!kcM@&O$ufknDQzc*&uG4Dq46Th7w!<~ z_=#l01g_xEKOpBv(Y6}D2MRd;Emp_ixfFw@MBraDinR4?I>1h}vjw00r?yAcUbggb zg!T2(0WdX2H5!4aReh7qU&gp)rmc``7+1Cs20NC-xth+v<=yr&^P z4RYg)>Zlq;Bufj-;xy^0pAk+JsZ81EaU*S^LHL=nL@jpk&US zh|GHtx3MdnORj$>nE)l|ctsJAnRn#iidPtb`NFpoJD*}Qe5qDI|3(d@gLn<|3-bxT zKIht$@fn z^2EGs9pHWq^0K$j9cHu7IuUJb0-?X*G9?6Ev;I^?tzI_>bSwaxMZx%Vu5F9p6rnDl zn%@cZCrC>Sj@V#g0q=jRB*P0Zn!OJ*4PV>GS%qH!Ui_(9#u4PoZ+kQYTwm+WzWshB zhctK$-Oxb`)_rk>3PQs6T_YNE2hpo@XVSB;fPk*;V2URx$$T!X5+g$5EB{7*4Ap!B zvZGymVGz%BYHc)*U_Ml_c?4`F!9E_s|Do?L|5B7cD`kWxF-rF}$g(yDSnGnuYK;$m zY&clNRDXq95J=}2stXq>N<=b+AJUWhSp9f$vK75n3!cl6VEbcTC zmM77L&coD5{?^py&r^~r=GvI*h)qQ#C$w=2bX`Z5>hb1$fhC4+|5#h~(x0|~#SsOS zQrDMm8RICk4NWd%22&O3PfsT0YqIt-wpZH$7Nm2|2v^r7lMmmE-B)}41e5VI>KcUe z!IdyqJGV#2f;US7D@jeWO6TL!9CIJl7Kxh;G>JXjdO8w^rE1vW)N!r}zwhs>$8x+( zjyNqLu*@RCqMWo+xz^D5W;+6A^2Rd@pyLFL^JF)}>Ia6haOUW2^J$-(fKsWxShWW;u(BFC!5f!? z1S!V8nZ;2Ut|^ECO;D}^K9uVrS&gjP=``rOvD6n1F8GmF`waT(+%pQ&4edDqW zuX-lYwI`hU7e?)WKtM)Q{)3+J+9IeqAB|Q;BnYabXcU^^W13Rc^nds)I4vY}uI!KP zSkz~}Gg=$fvbi9JxF(eQml()(<~5*5r`TnF1>~L+KiH7fdk#`|KW);FgX$ z7kt5y$Jg-ZO^2ZOcpG*D%PXKi`1|1sdk*@ZMfz_ue&%RnUm=?$s+M+0e|QbBJQ#nh zmhjf$*tQ&oeYJ@06{pP30aymsVuqBvTBOhMz$SEd1q_s=r|<{|G+x_1H4$;vFEz5R zqs)?WFO?!Ba8TW*h`VwiA!LATNh?BVHAA-Wv+A5M_cuPrHVUd)Z7t&B3*eeeRZiR7}uqAevFS1J0@`Vb3nZ zyrY0LyX!r~HHIz>%_cJDYaZuYisUQFv6$4m{Z(r;OhsyLJya&xL!flQI$tM;MgG~I z`M5T3hADN=yYL!599Y_|uW+d8R2Hazi*F%9RBxvyY<%eAz>A_wlM zpV_h1YnMIxi5oadC3Tyq?ZgQH*X$5pcht*&0cPgR@lW$rtVaoG7itN79aYR2*hGzQ zP|QsEM<7CUjWym5J6gF#4dje!w#}4R{%{h_1yp?Xk>KaaWQwh~XnX+diiOLYXS3f! z)P8_T$bh|0fJC*Sa$@TYnfLpdb1LfNg`&y>wi(v-^i`Ox(XdMZP^Mfr% zxS})TL1x4T5sTag>+|aOf!l*m-Eug+UX=+SP-!+RdDk^4bI@v6Jj2_p4#*ll3$s;? z27?1L&76+98wr6J_U-O{4WRc%GUBXv`M2{sNXf^;J!@_EKK;u9cQ`$Anuq^YANBU& zKS=<6ogBAahN?q35@nd{Wo~L(iRg|KbcJgCOs>zW_AykN)t6`;+`(_8mG+-M%&rZni?DNk{V7q?$-CnID-3 z$~bl_7O=3<@W2St7v~GCew`$@`9T$5zm!;df0|7r;U6W{8`!M{)Fn@s`eCapUVn^R zNu^$@CI?R2`!e7SzbFxChFiCyAzdmfmfU_y)!&Xu0lBmyG4WF~#fF?b!D%I%Dc87~ z1yU8oROV%b6~C`;Z7IX6>X&rnXT0PU!=Zb4?ckf(a~He{b%F~XEk&O;v)MY|o7x!k#U(w>Z!m^*YOe$7vah#X{A$nZs5C`TQm{nZ8-S-_GZJel3W??ZOgZeJW z#9tijfqJPlfgfW4GpSj*vgzK!wLjo*L|AYE`I zaJ4?X)E4a`%PgRu`d#fc00`7DtjNq5QtnDbfX4J>ar`j|Nqb_4jOl&KQ9bQ2m2*am z))6&1PJ;7O13EF$>o9Et-uV686eVzWfvtdMt2p(&c@h3yV(dN?e;cbC!LK~H&V9XvFp52oC#=N)r#;W&{*tc)Dh=AS_dXjp zP>eS^A!VJQsZl8J7&{w9uPI*vh?Zrw9c#%rx3vbE#Clsy11~!TKDLS{d`;cW zvMaJ}$f@R+*{=Byh^sxOMBt^T_EUXu_QI^iHCY|Vk9nm)l72JmVo{9Z&^ra!Gt~{< z-t1C`G#SV5=spVs5y4N7pqZ>H+<9rM>P4S zCc_iz)JgYL^3h{x7ZL=Pe~+*XV59#2$lC_;BM?##MnnJwf-7?&eO{%5g9GupcWFj` zlw;~-IvmLqbK1Y>27phw&A9sZm9F}HEfjk*lAgXU>f6q`tq0aa>EoCBMJkXVrNKF4 zyxo2ANfF+*ZeW*DjojwYdT=iM6r>b=A&>=guNNP2<@^0h!{*Y@rhyV$>Sh`l=5p9D z(pd;~IN>qULZC1A=WV(jaErDmBGX)K-vh(jt=~zSXlqyjoK-zfD1aBT>gf6BD+ypW z$#p3}JhA@(Qeod$X~OH2L!3@A!a2Q|`Z(K(5d_O8mDJqzB?FdzNPWF%2Piw ziVjzdHoV!tSgrg?0a@l?$FLs$0c6Iw;(Q;lYU5BKEN5lrRhnMn21!PJh~pFhqhZP6 z3%C8WEC|5pcyTNB2R$;aS#X*{afz_1+Nfhd6L({3>lO$-g1dg?+#v!Gp=D zqOaS?qpW6d?CIkj6U_qQ3xC%RrX5f6P1pqUZ zCHbo0vuJ$+$}=7R$S?sH4Uo9rCB6LTFBE}iz%Lws0X5Q9Ot#`X%;r}_GEAHS*jts< z=-eXG1_A;ln?36HxR*C@o{xRT6W?Dn!fDgnFphr#%@kFA9io6Vx)9WYK>2NO-Ai{O zheGGXVcAKK3OM2Grm92&8ucK`M{9S|ej65Da013WrAd zRM1O;-^;$42xjwfb=;ycm!X7gKNn^$@O?=(&8`BsjE7;%c$* zM%QVwz|??mq?@Nyt5$?|)_;}s_1npA0Te4cj&$*-~&M{H^~^M={gYQtWwYZx zHDYK}b5urgWr8Gv??w1S%kV3|B%g`bjmuV?QEQ=pw0Ba)f^x|2q86mxR>wlqjLF#U zGh2uUguapJFH^y$?VJnGESd3h=aq)iwIQZUXkaxv$=5CLY=_JhoSnfGPFmMi#Jt&aG!W=q4d@IYu9J>>!?u2%5a l3hqzVZuu)tvNeP@vd4%%jN4lJuA14Cg?b249QVqtS>b6;k4Y-}!YVRCSCZ)yPTy;quL$#JFo zo}-8ftvM(AakUD=Omb;A9&$up&x zbBitZno9chGsN)q^)r5Qud$X;!^pMO(d;K7>vvi&HOEnA%qh%L_wRhA&&(r-+*>HQ z+kXbXlk6wu)4~X`XZyEjo2A{)sh<(;-)W)uY=3u-dH!1bl-}ALwMP5ZlqXLRoBgDI zTB|Mh+*7rW8(DuX>#2L{)&BX6Da6@xOo;S;01gB)k8 zv83Kgd!NI1uVK!xUPIi^_OpHLi`J3LthV0v^2Yf||Fk+s7|EV_$*{?``xF&RVmg(SA~6v$tBxsP6j|dkrDYT5R!VujQ?% zElsH{>FwFGM7P#q)@Xk(<(%vrbZ zc1+FoW^OeXp{2qOEA2JnUp^x01BhTDS7C*J8V%w3(uP%It6V z+B&CD`n2C|b`;L8`Z+({UX8sg9hBL6JHKP=mS?S{@Nu?z);En>Yx`5StL$?IZ=$&G z)9e@Qr_J7WvKK#gJg~oJFU+3FzL9-KwZqNtl=V(~V@d6W+XL2m_fG!U!5y*L$+PoV z=7|UF>kz6P?=fTCl~jFFNCkE;F-r?Pb=$ zOUUodjbcZ&j&5=LjTQ-*fox;H+yA~V>g4|WY$;5>npml`Jv8VT~lp8u?Yh4N{8JyjyoDC-IICoNP& z`K;V@aGw*z6pw8XouEEw61 zG3?Z5i?FsFCtQw?MHPE&+X}^=pw4@^hi&ZE*Z^^|>sC-)pOb7;2YWU`d9+yaHk|z% z_GW5nwu!23t@Asb%fz-q)_?bOx1#-y{Q-h*vB;F-It(XV+Q(Xmvv)+SDElXTAB$~) zzrq`}r3mNySirW+!ggrm*X+#QplH{#ElCR9?jSoqGq}TG(bfKAr_DB^E$$82cC_sL z*n@Lp+JldK>@8SX{Id18%Z4+S?!NAJq1vlfXtR~e$t4w*GT1J&-ECXPcFladw-;iV zZFbwIb%(K}-J5OK5~R9aG4^`%dkeNLxGRX4_E~rD*gNGix20oIZ86A4UVzJl-C)aXA4it*R$IpRT_Zp(@D!c2* z0WANkH+!)c6l{aoiL_G}xhGFXIzQx=7WeH-TD&Z}?X{%#)H8?Fi#^1sF(@C@4U{Z< zu{dV&*w(oavTo?J8{58%{rmb2+lw!=YPNrE5Ab{TrQ=-#J3!ok_6-M@X1iI1y*kS( zY*DgB47&t-y)VdeV%zB?aQ0u89yE?Cm#uXSQ){@4E0`Keqq0gSng7mhQHrW6xNM#AOoWxFOa;dFEEI=o0PhmEeM}ZFfrzYz?#u zxvhMV&#`zDiLLh1ZBxF_vAtuj)Q-K~tHHupi0`1<@>}4s$F{w1@Aj;<{lqFCOHHOl z7~8%jh4*YR*-Nz#w=1gc;Jd?^Eq>$}S~TO-54U^m1MEA_&YR0`t;q*d;I-P#XqRoj zzf(R`Qnu4rzh+>jY;~d^@Do&R4zF zj3pwSteZ_zE%SY8jje(GHT&mOI+kJS3Ji5!8J%!se}UX{DwEgeR6fVvn0={9fLYn) z&LQoRv4xD>Gxiway#>oi?b!$gmL8Ni{rf50f7vQAJFMe`SX)usptcvu9=mNI|4!{s z5f*vrd{($Yk;72P?nyfAttv-RNFsx?-DKM!vhiba2gph$dth5uTWWia{cWp4$jxNR zIa?)kBX;3%+d=J?k=ZeB_ZGHeGA$yrH6nYe)$0D5onRGhWZr$;C589TSVhyga)*Eu!aszYq7B{fo9~Y&+T=-OlDAhqMgD$|mj^JFVlU z^4!99tnKUADY5G=-ZI1fngusI1-1=1{3j$SfI=|! zdr)n4Y){*%vtwj`tF?Qh+V`;)n|#keB60(dZR~1kXJr{IHd(~DrK1HAUi3(+O>Dot z&}W67T}h<#saPf-;tNULGD|D`tL0Djg-*Ufp+iNVxPQ1c?ESt_PKsznUE|bQjpFhR zOC5u1QPTgeAioPldtn?!%U&W`nacwL$%KX2L|3GY^Vb5=(y9Wx7KRn%mc^dSgqp>| zJ^_jPfU?+SeQXhXE>4zR>^F;@Jb|5HyBFvuwb0+*u|$2?wM6iGZ7Fv9~H*QA?t#x7NRfv1|`%vrSJOj|_awA^snKV;$&S~bhg z?Z|998_MoFi(0M*vuxAuo=zB{kJI0?O%8pdi(%nW{TKg)*c`FGlP~_8kVGU@!Ss1tfZKd7~m-g2z#jyOaa;Mwl)!PKL%-0IM zLUSY0oLXzJgQESC#cay}>;kauGhZ3V=U2rm`{(s_4kNcPi5&-+EWEr&u+OIVWZ9r? zy`6WSax!;Hw8gz)nR3(qUsR7ktwSH=13PN69WB)kHz-;KVQG1!2{$Z|OqX5Sr_+HV znQaP~*23MR$)xMgkN3XC+^2J0DK4rzfj z^3vwCe`b-Y-S@-M3bv{3$lL8hv+`_t%e{-;=Jx-(nke&j0r?zTFuNWtQ6#mQz7tAg z#p-P<0;0QS$n9v24Z4wbFV(j?me&NU6i9pQDzo3dLD532?e;`~vjwuJzd?~;l`O3( z#3S2y&3BBNU5@sBEW@po<2NYMFJx!fc_S&;=FoqJRT*}8?CC1K$g;Yct0`kgkrLjv z7RP>t%l!nj!L6c>#EkqdI;%{qvY;VAZec;Gzh|>#LRpRdnl0Q7JmiCP2Z^TC@vXQJ zo9H!IHf;BZ?S^ne5-ltH919_tjgpEBFRZ17okFXC-uwAUv7F1&mq<=XGvMVyyzNT- zrP{UYWVjZO1w;!FR_|J%$o-uX3)mKmBWstf+9+z4>`6kWlW5OiU*B#B-zcbTSxay2 zqP5&7p7XO>FM(!7As@4VzfUmL88r@L2^reYRpNnh0#``YE@E&9hmOL~2P5Vo_;LAAYQWU_~-brfT|GfgR|x1GD&yPlC5a5 zSYX>qTcxD-HXQx5%=E!>i<$F1K%K_7ZRcVet`oXl7clEmw~NDyDcjnoSwe5jZgYFn zcI<3px9P?lRtMXABj?R*x)b_z7#M1irP*Pw?ewGVuO(UtBsH0Cu{u)>TF8>@pINkI z24;V^-!Nu>&GI91+d8MMT#WAttY+#o*J)hVoeQlXQb?_A|2HeSTh94Co8?*dxR$Cj zsItTVf}$m2mOYRf&@m}@MJ-ra>YBU#x1~t+9Y=~ii~7t)Y*_>U%G)6XV>|j*o>E|U z*M71RLkY2kcspD5j+CtEpOpKS)irj|>g=w=U4kZE_8JN?IK16kNNh<;Z8_WOp6>G5 zGIG1jlidxxsXK-uU*`na7M{e@@Tx%DA#_Uut%yW#-n9cPLssXXtmBmFWuKBji;X_9 zWia{f9s6sVhsI%7RJD)0)l4C~v=?O6969+ccZV>(vlnMuy;GW{ao*`qW#!~ecGEB% zPPffP`Al|TJKBzdtwnxsu5zFPNf#rRl@1aVS-8TDO{ajq@bq;$gQQMrU`H$#*Lt_x znfsFKg#4wxjcw05=~Y!yp?;HMrgVv}GgVfnLcOi(w6nfUchdGsIQNX@8@34;J`k7f zCu`KRQeRsbiwS(IK?FF#msU0NC+)gG^6A2uB@&hdSXia)V0rirFP0c^C)jmsKP4-B zMRKQu?Q`u+ zS&(U@8`bqufw?u8WdoAU+ z+Md8`zvBuw%dMjYFeZqWQBQXT(qt=i!PvyR-?@TfXVF4u>T2h*hPOk&U|7tv^N@Pn zzq58PYY8lXegFfH^R|mF`@-m*+qu2M+TM?qXVmbvO+ba*k&->NB{PZbX0&7EL7 z+rS)1Jn6~4;Mb2zbg^&GygY>0J@--`)tj3f zaVOhrwG5oD(Y%?61rf3aLKWFye}%RE#Qu6G#d}kxVmIL%3)nHSbd<4# zg*|W~zK=41TG*SmC}Nqr>oQs5KuT!UwLM3zZg@tTrgX!e%QCq)`(=K>g~}nZP5g@F zLGvFx2pAsQtKA(sGWp0ASk(ND?``w_7;W-y`kUT%uG0tZiY#r0(Kx066c6-Nx>3W zptd5>a)=z9W* zHZQCuQ{k@h>Kd!<;S2}PO7sdoq4s#@#g;#TZn8_Jsrj9z3uDQSVCIn8>rb!b=C&8& zB!gNTxlPxznjBEOFd0~$X89Vl*qgDq4CsTP)%NNr`;QS^lKmwRt}VXrW9fS*R@u%4 zk#e(33szQPfdedbit{`6m5hgr)INhw@&)(+0RzBlXWPPpg(V%~uo8psav?P zOw0~Yd}o^%J*_rNEP9A1t@)xlqu{n>==PG*1G`zkwjT_(Vi#`h1}lpPv>PlBu-&CD z^Q#y@6a)Z=b`OkQ8?A9yr6S0d2SxfeZ*?rhQt#6#Nk9$q9j~?zwJZgb9mWLa;AHZ4 zP78m|?w1ZMCY%rpn%A;jdp5hIIjJeUeXv?gme4RAj%r!0o+2|@D=zH*vFKv?TXvm~ z!qKHgkQfTo6A&zrS{_hn_EK<;SADauRZ`yETiX;G4_+a7H7Z7ZRy*O1V5 zQ1>t%%D)ZJc2-EFnrnekYtuUu(m+`^h9KP!2&tcGTVUg}u4R;Kx1xd`XjNXZrY zY;m|tChbUSkhe*j<`0ebD0mUqLbkvIl8KB9^wB90?KJ@F5I(}%r_J={G>c!=Nkv2 zEf{uSpkomxyIx33i_Bs7|uAvEE!?S8e9PD$LaBw2k*{wxvWa;GSj9`2w6> zFx1xI@qsVaPFuQgXNu;Uy zz>=J&CKqDNL^%oeFWoM>U5<9s+sE6#-$?5Fd#6@qSeSs|Kpq=zW@RCkX`^MZpo+O{ z&zl3c%nsnf2dJ>lcKzC*cg5di+pg}(_{J$(e4|G(7`VinI@lW6)~z%vz%9((#MlT% zdm`rVQ{A?B8y^}E37w_!M0oi+SlU7c4}Ojwzn@qDdbOiC?9+1@FDTkZ$ihun(#IIB zyCH+cLg*KEfbFjBdTb^6OwR_OusVj~^7mfF!Y@Y+iF)J4YM7V<@2h{?V1;b1y-+q7JbQF8kL}~;~;A{C#QT5dJ4;hP+ zN)Hd~CQr9ajDR&CY_T+yy3wV5`6WR>Y)T`Y5Hc8^%XbaNC& zS9C(G^02=d$$!sQw0wQg*JQ$ImvQSZw`-6RD1LZ?{x*VwJi*_t*~V@uZlgBIZwAq$Y$fcLwU05Vce zRua4<<@tJ~Ou5NAD>E1p^xzK=ZGUx(3P`JyZ!}=g!Xb1}iQ_ZCBU;~VNZ)I?FZWc{)g>FmD z-i-`rJqWo#X|nKYcUjn(?=JcyJ%>nQZr`TdjyUIZa1H>XXQr9?WN^UXY)1)5)1f)I znYo=%W~hN^Iu~?q*Lt>CbR_7M1WW#IP|P3~NF7Nap&8sW*Pv_^ihj!qN#tFfV<~3? zVjO9|_cw~8jbiH$FMzr~y|d7Hb9U7;Ot*;HU;ma`FF-D!mZG6^FUJAmgC}EbP93c` zm(QT3ac|ivW?boeF9}?h0Q`2Fh2r{Ym0+N07j?tM&Z$w%WXArEB{=rKZu|$Z+PO*? zCEEx2OmToV1D#=IUE4VIeYkT^%rY#Yh^^h9FiF;zw^u%xinjZL>W7CSn1>7={@t5a z@B+6Z`DaL!Z#$T-8C#J#a#7BHb35AgU=u(NfT>M;%FXN-Oxn;;KQjfoJs!TPV8(L>xlGaa0L}dZ<7W7ZVK78x%1cAGc`&U7J#ic?Ll|I$&+ph; zQ*n!zXNNeHoBi7XqHk-JghjBxQ0oMd34EL@oiQsvsW&81<5^CV=oVYnS#C%I#uEX3 z26E-nlj~GZ3Tw~{MI!@;4zOB@%eOI*vrDhNP)u_96<&6QShfolKuW-O%B#7SvmI zxMfQn#0jYt#8h!-VYRnfw)}(>;fKO(Y(OOpVqQ;v4U(;HWu|2zuEtf(tn!&*?Nr)D zP!I!}W%QwMCK!-}Z8M|7@9Cs@TK*T6zeD^bV3~f8E?v#?tg+>EW z$e;y8eDO3T3rRu~gdq0o$yGC0Kw4~o`s^R2i-)IyOU9leu=v&v!&zH?Fd6~^MIrVW z6Z|!5WF`*~3EBm08V~?dwOc-GvNr{|7@)Y{V%J3tWM*YimiB_rtgH%$DgaV^ z-k*rb#+cHw9on>ZRlZCFT1tck1jaQz)-8}JN)p(Iu>HEruwhme5`D|F?W@K2Y?&p2 zqeG*u$Mm)@F^6*n@*`ekp-6)oAWV2VM8$jPB8ev*AzIipX)j@pE-j6P%vHnlIk2-L zQD@i|;Jhp#gbsHF<(+A!&=nsyhop@{zQ<61mP0t*$3)2621=XA?S4X8vf`or&-fVi zR6u}sn@admgB!F^6TnZk>&LF!8vI&YptPW4r@I0Xe(#h)1*3klNKgv*okoT=bTBH7 zE<4I+-TFrZCEL~%2axw(sGto>)ffn5~x6m5UUCO`CcLo)uo2Wgm11D0|6C z_xG{fd$6IwIsnBe57I{RB7Ok_YZ_YVow;J)Fz8I#wVp4$MvXRr*`z`dcxZWJ=vWKxMV?CLfO+za&Iwp?Z1O7 zcnkaoK<^gGEoi%jH1WNO=PmezkL8v50>NOCFx{lMQ=5QYXB=l2#Jw55#7?Z7AxKor zbx!CLi3`z())}wumiX>A3dYo6Xr?oZ+e9{tVu@aUU<6Zq_ms;jSnd*Ov#;J|Svh32 zKcf6D2#5O08QK6DhHoV8N-q6xnn2M)Pw=VdJtnGDASDjc6bpXmm`w5-Km%Mh4AI^@ToQ5fDu%H>?ys z+lnC4z_yaHM#^zV-H)JU2UIAK9nC?1GLjfY#C?z@zT|Fe!%{-wF@SHsfSuG^rcYx# z7et(6DbXpi)s8?YsMB6{3E+ea4e$tY^BqUX{PgpBgzxwYx2(3aZFhjKGi{9PA|(hM z*FoM|2+40`(LTVvRd6SDAa41rp%(AbHk4Ji^YXp`>(E%Xib~jVyLjLGu{0hcFj#)8 zMXQsfm?W=bfi>&;oDJS)GB+5$+uwwHdRAxJ6LhI-085&$>r7a-PXJ{~5|wuqSa&Ed zl&#eJwy&paZ*&^4oYX8Z;tr$=eKa*Vya@%0a0h$#evp9x`!saMJ&XrFKiwq}jKd`n z^R^Qwh{lvX^+rgnpqNOxNvZ~A$h;kv4x|8V5kfFAy(ublC`dRA@RYU}*O2D=fm{Z> z#I~Lz*{OLOq*D_@yKPzmsVy0UaoV@(TcKmwC`k?dP)o|*jI6@Ltip5akX%@|X!wja z0jDzb^1KzsUo^udg_DQ-91EUcgF$TC1JuK$woqX?w?#u_0(5n_LkG#ylFv>Rf8ZOd zpeo=4$mBu$#&Zj=mulaV{(?|D^X5Xrw9!DxtXeAvI=zBbY67@gf&$?B1x0R0I*ydQ zo+@E+0fs$DWr=z!JD} zI){SF&{LG|gl4jD-FTm{h#5Fpf!5w%L$8E{eR8a}63sz;*gXz`HB#U{NHfX$p6Qr>nJKNn^vltf?nM%i@nhq|eW35+8&7LF?Q#Scw6XqhA_soR>L;kX07&bxW zgVTa~OLG+vDn_*N1x?)px1tMZ02`wTX1nl^AKH4SDtw0E0V%%@Kcl$8Ke4w71oXki zCQxwTaaFhWMlNiYw>`Bu5raf=e&0J3G=&_WNyPgdfF`N51w_c3Ji58hz#ci=g)wfp zo3w&LBQa-^Nw573=QSEZi$RyB-GujO+3#2kw;O4~VP=$h3tkH%0J<}%0ZZ9ab$|=* za-hCLD9-NtPxh}Dky=22#yfqEACVXW?5~R4%fZldxWNyB4**bQ)yvtWpz5+-59%DX zXLp}5iUUh*bu~;-*Fu0FX$6BF?TE5Vf3MD#jNEZb;AaMhAEeVuQB>hcwTsBt#Xwya z0ULKas2AiqG=kB%6iJT@EZ2&nW&&6fJn=<`5iadt%!}oqKCKG~mDxuHquoFQ`aVje zkB@{K)$k=sks(C!P?=rjG zP7fUGhC~1@UrOTc(1-w!h0hlMuWqRbg;+8~%WKhmnNLtl&2sGo`csxCzFr@&vBp?0 zNw#B2u5Iv92jMfi=(4c;-xI*Fu3**x!tK&=r2&>QKzT(?%APUK_fF|d*(GRSzf%pm z0TqLCsS8ac7oKFuL~g7v$|B^uamO6Peu83&y32s%9Nw;>Ny5QLGi!@)tTz{cufiy| zuhf>V%~95|vH+Dh#iW&CZ%hMI_p#0*J+txt+SInCi&5w6>@IB|uz7=xLREXiOZ*6S z%Gk5eG;5BI%MECW@4D-ohm9pB$W|@Tx2*N9H8XR;Mp$Zwwdn$HDxxw|7&O~n!{K5< zZ!nvwqKny`<$gk2eX8XN2}Iv#w`*wngPwyTWT9g1gVj?c#!~{4jrjYle;|u@ZWLCn z-Wy0692k&}0u@~b-vtDn+{c2Tj^w&BmF%^sB?JG-^?0(-E6jZpdT`-=4#QFo8$Dr^ zY|c-z;73WL#Y$uG7Do))xqHDMqh$BOO9v(h!Z&m9a)>9trE6BvX|lQvmaOIU=a{q) zxe;t-dYcHO+~AuCqU2~<3Kvh#O4=llXYJeAt>rp;0LvK$OQX{EN%nn63i?F*f@t1c zQ(l5y1rQu1MRbq?3A6!YCBvR)!%1(Z3Nrx6pSgzXu;`ewM@f1{yuw|m7};;Ygdv69 z#rOfnGU}s?0>ZSoV;_Ngi0;IIkAUMDi*FDr)gBAc`&59-z#h8kor|wLj8?YD4I)qDlPhba_C{8~FCes1Z8Caut=9G=u-5pU&8e!`ks@$3%QVgI( zjeLGJSdQ|liakp_5n6iOXZ1*diVoxzDueU$Y*wL4nv#f3E9=oOB-d8~h|xtr-PB#_ zQ5<0u{A$d=QuYV+7~4X4cH}; zRb2VZDV+eCP_s+XbsM32PGSKNvEJP*o9yb7I)Xb1x;7B)LY6-Er;QP5u`oStuL&t}g>j!3Vqe^UxdOlC5FDxq1_{P#)1 z{G-iU7jXH6F;cXk3?C@2mt(LUK!%AP5A2EaY!sqs6lnfIF626{j1VHa7YrENMG0!q z0&lTL5uNkpF{6BhfCn)f%*A-~$cbDln**E#I8&$XQ|g*wPok#P!Y))m@`GR(G$VI| z7CTgS&mvG#K!!TD4eGnpph&3pHE>(mrApa>iU=^^94`hy0;`j58u$&e1eb3NU=s;2 zy5-G}`#h27>aZ&WmpOceuSHS?|2hGh5oSH5GSgy$sJnCr-aD;2QV?Dex``ek2ckPm zr41$G?B3~UVn5o)payq~R}=z(tdUu$qB{%_?JC6CD8tlRb&M7ZD}}Pau8zUz{;W=t z+AvT!S~ZrcIrS%WEdWlS{$WS^rZw5}CxA*MF!rKi_4_*W+R75>s;`SwuL)Sf(v>vFMnSJ9m`D~= zc4uOFbh)>EQ$9GsKbzrVsux?07;DEX0%^UKFjWTWGAQg!@biool2it%Vu$4DaxMx} zdujqjw6NfMFKGO-OD$4zO*))n5Fv|BIdsR@w?p34ZUA&zr3jkC`y4vUst%cp)ZvPj zC{jGI30sJoPk>YCqX(KK_}liK(N=B;f4I?Avv1t4f*bQQAqN-!DT%nThQu1`YZNC~z_dXbSJ)PJXg4Oj z_JRgEp8Y!xUc(8YCot6c&c3;f6dBJT;UnKuOjM$l$dfnB6x^|ArbW9M#q5~p(+daC zW`%*MI1%-*cj&;J03fl{oJjJ9GxV?-z#s?R>CL=nWBLS;l{_)W$4REaj=BRaxPSo1 z-Bpa$D(Ma?1jsr0U6mQCSv>FRY`&gil(=>WjtEP$pC@2IRk|b-?Kefo zM4uC^P(BI(*zLcmB=Q}n3`zX)SOBJi(=fGkqW~8MGg~0cIZ^`c!8(+!YaL!iHv~_Q zlttoQxz7VnMe3S9G?%7Xi2(s8qqfJ+_1uQ5~xV1;BA@Nkh7l}EI{oHZ1Ai*ZIEk}#) z;s-g7%0LphRIaqQ2qe5H@l@d#-rZDyzqU#`3Q0aL5I{RGh&+H;EgH-XWA@16z|eCQ$%@P04UJ<<3i5WF&fM;6W2+73{4f|l6AA| zgll--@M8B_7x$v7)w5x?d&9xv>xfZ;Y4%WKFnDx->llJrBvI@kRHPoTu72+vG z>EDvY!@jd;nBfZ2!EolaF&SoF8U6bSQjVvQP$_#=J~utV040uSZo!)(x!gO6sY@Re zTHa%)s1r)M#W>0KR(um{*t3%DVti-0TyRgYME@e$c`mPaIY|(#@PWHnK*rxpBuV@g z<;n@1bX}->nvPIN&T9Qa6?O&>Qex}SL%7<@4r2=P8MOt-BxCqz>sE+@S*CEaw^YX+ z&RAxZn2A%@2e>Y-?+xaLy1(n?JwO>P1gIPt$S&RTn?p*Y22Ll8N7$GSu!QJRV@``U z_^OR|!7F19&A!=1)6JN{umZ|u@{n6}({x)jVIu@!?_R8;NYgDt)fE@;?Q3i{>^Q>n zsE3EM$G8&gWsZ&X=9N!lhoIQeVCPtcQZ|`S0o(Q&v{8Lm$e{Y1ANvtt-6ptcR*?tS z1>`2nsO*A9DUZ=Y8JGuLOe<9Bh&u(uT!p8@2!tlo%?B0#;UjhCyxi*VXhD}jQ9epu zy1GKNa@dQ~L~wUnguad=B3n!Zfn96?^wo?-rAD)IUz_@$TsL6Z5^0{X_J7fU8%?c%;pAEHHoYzZQR`N z*aqETrZ!K%%>_ZT5M5&Cho{M-`*WR< z!XeBpt%Up30Lw{}aOa@&ywGlA9Y?+%I%&*vM(~3pDtCF2gC?<^jm?5$QOl?1w^Y(9@)|^pe)e^lr&nep0dYv6`(zVoUY035ZXJHnG#&P z4K+*q%HTG)2j})$3Nd>y5yV{z5IDJ@9c{7U2Z2IN14kI$a0WfiC@KNP^VKkwba7|4 z0DQy({gaBYYlaam!H@3O+M|bkEfq8{-{=H;rb!ck$g*__;U=eEz_gxW><~+SwQK5n zHiW;KOB7)yFU_xh==j_AEX+<~yB&Tp>8f<*13w5azXfjr0F7?~kzx8l7>yh|bRZdL zOMXn)!Mig*?1{0@i!M`o#$sGacTPXqLD8yLCLPRh_w@M=vlASl!PGOiyLkvapoKU+ zj98aM{w7M%*hNhROz7OAlB;J$JBp5Tke9)9`Gzvi09YTM?sQ6Vob^VUf{y42cO!JY z22{9m6b)W4Xx&X1{s8c#I&9;O`Wt$Rcs!7HNwoBB5iUSGZmR;StE*XbxFPkRJzF%? zUqNvx2TP>zIk6nq$w2WN5w zAgQ9MQW)#MQ36sPB$1$3BBLdzfg*#4LEtCritgr?Ok4yVhKX134k^I0NQeMgMGu+k zke+ha$R@Yp@-(EHqymiezq8ItQk^D0Van1Rv&q6GXHau=5vH7mb%8|DL4!g@y4VSE zkvfY0@KZx|Hdxpzpx$iXl1d^3cbSAG8BED(Ib?L% zD=GSSZSwix03}TxZQrO;JvD(BE*c?1bjnCQ>6tuy#62~mW1Lo zi9>zk^eln;g1R3nGK-9~HP^t}55_z|(qlTIZ($B6pk-(bDcy035cy2X(Kk}2a&KX7 zM_NWLO0i;Lv%*4CN&SV6S!F(O1w0uGFo4p+@Lx|qhm8<~^=;AzZoaU#sK*6EOzyR~ zL&t2+_6=@MK#lGJ>T=lwG%YKd{G8H|Y2$WA{v5Vgb2*o!9BFVv!~6!(=8{GALCS?& z6@1G}R8pr%ZweB|?YOc@VF=R~s&bckf6W#x3M8qa(?hPo>KRZBAQv#RxZ$6!*~I1q z1y97L9ONS=1zo%4$hDU<-`K5p2HXf-guYkjlxGZzE$8Yv(aG>$dPBZpnziSAFCYXI z$eTbe4C>AYM*&(QwSi8BG-7vq6tHEdvmK?%W3)#C#|U!yO>F(QGP@TP1X5WT0Lk;a~yu-U7r-Mtd+s zLP)OL$e4>lxl1Ac0&j%o4Pu2L@y#B2*RudI0)sQ(UA08nHD%+bh1ZkEw*eKDQZaQq z)3Z|E_W^{Cp$8b@n%_PUN)UTQ?jUGpPO}QUFq0k{b9sJaLs6PSPGM~Hyp$H@Ri<4q zBpE2b`Xk6O4&~qlPmIjzm4~$asrlyEWH(LglB=uip2#5{y9TW1v#6RWx^x>{1VEhZ) zS0to-ey1aW1>2r4%lmM}D>FSD9MIK)Ty)lrNu|^^7!FvZdy@YENSYL)u@4w~D!krL zl;G(AnAOv${J2Hj-h^`GCNVL8HcVrk-5Nvi>5bBM0s zC5DjPuOiuxl+a4Ak{*N@@C;MOYKaVSsQR|0*cYlC>?oAk!|AQt_)MWN1mLiPd~LlT zwxUD>TYpY>b|#>@<==Z56R2k*c_Hi3L3;B7b`J7xt z_Vy^MErE6f>-IMn5X5Y5AIUcP%!+Xi=m|gy@v+FrpE}kBRjjmdTOwQACyN0I-mAN& z8LWNf{gA-RRZ(RP3Qa&u6d@jL`o*do=?`e814MYN6y?m>Mel{uiQ2kX+^j0VGSI&0 z#8C=r-N-vYVPe92*P6=&a5f+~pn}hLN49uKe9>_R6m%yeb~Ry}ERQrH^qLQf(!>)l zIgLf)I%bD7OAuz__UzLgR3y##gF~w3!L@dE9bn_8%=Gof20#^1<<$N_)oysDOnhIM20mi?LnIF_WvtS5CU^eS}#@lcT}%0$TMZaYIiVk>2J#; zRa$B8GFOz4(R)AK$}|EQXp9G;=O++Xn2CdQ4*sf@aAz*+*ynh&SV6)0t;nfle%0Tb zL)3mm8G-`8xw(TKy0k#2lKgSmWrh|9&Y4Cm;z+J%g%&lQlW6ysCDd@FNoWG%R1N07 zJ#M-T*?p<;x|!5GFe zKRs85Tq3D7M4%Tqg8fl~Fb`ysFAop}l%Wj><~CfJP9G-= zzNe1kZ3lqfLl%p%4%DjD{Q=4}X*&SM>7ebXmLxT_5)y>vDH4%;2VGiho)Vw;b%!U* z_(`=(SQp)CA;3}_#5lW#%G2CwD8yiQ!i6qdo^$Btr^?(0q9K{&)p}Gf3DpGzP1MD9 zB(AwMkelR3=R?1W3B>I}!cH~g=$=ES*nz1{Jr&Syy$7*fn6eWdz0gS!=#;dB2HJRU z8;~fYO~`qrG}rUx&c@(_+vy|-yD|~(l)ggIEb#&*>l-q0!$10u|u zrxgn#5RuT(vpir1KkAWld_wJj=;QK1H0ueI8A*il3Q@94h&dQL)23_R=C~S+W6hqn z?&-D>MH~R*y9_^XTV~X+1&FD#j;sQqzHljXS_~R7ONxH5H$R$2Mm_??$J=d`yEFGc zVS=8cuO+ffPQ-YD#On0I=`P`CNM#K^;JodQ%AnF~u7|k$syirBE5XG?^FKLr!0|y2 zkb()CD3j^4q!<-6bZ+h0l~`SM-fHo`YS5%y(ao4UzXKzgdloRg!|J1z)YLJew0|xB zA%_P^b|G4^0iJtaY+;Q?Bu=oKVXy;2)MbIe1s$*9i!eYfD74@-Rj!V=@=jV-(l4fF zxDIA?as>LJc?p30ayJniU>FP5HcDvZJb{9|e7O@^wmsfEeSFwyc>FMH;6id3)m-=v|S*jl|xw#{AE53A#QujY5~qB_-RhT zhduy!I~s9+)76v)F-`sw_ps@Z?65EBA{T^Qi|cdY%L14TA@40edq!7`a->B}In`ZO zjyf=GcK9Znl(4HAY}3ivBmLvt(t8UyCt}e8cq6p#8y^sk5LQ;isxDJxR}=m*lBo3= zSD}E2I3myrbheWVq&T-<79A^tSfa2qgFsm>pox1|O!!ov4x3OZgfzonh z=vR7iRR$1nNPvK;dU$Bjf~2rS`OtUfj(Fb(r6hz%2dMw_nhRMjKD04dq1KZdPziE` zZ3m7`JN(C;DXQ^63m?RHceg!lZL)aY1CZADx*1Ld9s!QxHlfGKRo-T0{&G+pnIasXcK(}QVVkya3%qV*q z--}(iLD^a{1aMge>@8k`F7Gub-1>HCzkpqoDqMcq7|yw}<%ZEh)80ADRPi;KzmS8M zJ08kFa;#J#i(>NW;Wc95V>UKuY{vW7m3i+t5k{1`{<_2DgVW}&|?Fb`EMQJZzmHX6m zvnDVvB#7Cnw-gq@2d_)0f9UcIC%vkQQS$2@dsYV%!D>zZX0?h7a`pjD3^0ZC(UVYH z?>G{W5TZtDq%Q2~=I{;_&xVx7MqUNt?sp2Jg4`!kcFkv(Bz3ku(T|KVUgRgFgpAUp ztcPIX`R{{VVwZ{ocZau9?ZS#OM@GQk)deJ+f$nJqxm8?;GA*?q&OWRS@6Qg;wTjI_ zA#gofm_A@ghu}S=jp@Qauq)f2biIKal=sv@GFG(tp^JGvcQiK|6d?=GPA)^rtIJdk zc3#_*y>+%(FZ84^9zOi<&59P(4th$JTEh*Bm|p{t(c2dI(j}|F{ds1>&$}~zF19jM ze0U4USibC10tqw)Qk9y;+dQ@CZm@EK@@*aa75ao-oOq$Bh3g6(Bw%nZLB(%->c%y; zXUc^*G3qUSbCTQFa`U6C$K#Ez%wr2=y>99j$QLyYKc!QX3uZsE&##=344Cj?=)j<* z`c_AUHs`v_^~DpIH2RjT4csi(^sVY-RS5;e{$L1=Ef4xxZUnL4%S4$7ng_C$Va{@k z@rrH=t#_<<5c<1MFg^&CP6^cG!xeAQf|_9<8Z^{N#$(VD{uKaPK&8KY**8Ss;Cjno z5Cp@h2!T!4U=cS*)=>?Gx7)-f_okPJSrTNIN3s)H07O=uD~E92fH;V9bE5@-(2@&d z2#9n2z)grxRsfN-i0Z^7d&4^YJ++40N!Svu;X8ssz5rY!WfjPri`A4u3{*$hVp9ap zw-aTd3O7R*!B6~E<@1#HQH6hA9d-igHqzU^fE71aMWd!;Ib&-8DCqTklQ5xG1``XJ zdG!x3Lss% z&0+7?v1Qv=P-F~8H>ayZ`r7DCOx-AY7b;Um${iE8GfV zpfCd`qAFKsom?m(4v*@oEzo#ndc$G@YcsS=TH3M#2lOs>CN(12`F(23RY`YxmQ5L8 zdKchO)>rP=#3%k zzR6;1SH%?!CA{6gVKqCJ$4r&bwwvBE15!3rAS^c8x1us5gHx0!j_uWRdcIstMNH7q z>hsbQqn@M-Wl7Xj9gP5^ZgBru!k15ThgOp9B}{I!EKDv4ZED~~C>qk3ec`e&Qi|M~ zgrk<8qzgu~9XK!Dd`v-|9Rav;2-9Fcdw-;a{!z;`vwx|qeABEl+O?-fs1oSVNl_#Z z4AOVms+W~1*7dewx`0Ci5!&LnOg_qmr2|-5HCR}1A%G=v2m_}PUz3Sb0zUN6oh*8ttpROD_tqNBEP?o$wzJ*ux#7=Lb)o@&JLv z&~Scf?@q_giTYFa@p;S#(x@QUK=#nN>-7~aylx^Gv}j1OuVVzqZZcX2JPdqbOGPXtKjxPpcqAKs z1Du?ihfu(%9KKL4Ay<%6WQjzdr%_Wr09!TVKycyGQf40!i?FNGNi{=fpV1y_%jH&Q zaMMwC6OXxwcKNPA6tgh=vZG(JBaLW>06E1q0>Y8kOb1qiyh0*{+BNbPnMKPUP+ye$ z_O0LAo) zje!k>BCg3N!Ol-)??i`L^KO?zHc``QEocbt+USCh!&?;fDctVdq(@3aB7@PZqq`1e zlg9^W4+g2#fkE(S;NM1^DWwO=5m<-pmIffTn9D@aw1ZQLTtw*?Vg&LNL0|fepz*%h zIgye#xO_}M@}nRk=!*m{z~LkhrV}cVl9d@)K*g`l>2l(}ApdIC#4uggtjLm@%&BVd zMLw$ltlR1yXfR=4}1;~-@F=(Qq@QA2JHaA zpDQC>_*+;MRz4S?6Xik8sI(ZRQ_(QLi7I6a~AH13Rn0TnGAc7fQKy66_3 zScyL*lP2D+Q)dh^rItp6MXQHfwspgL2|!hX7#H0Mt~6Y$xYtA_m)b#d!A%|Ym{6;` znpl0bwnQe_Bfq%HXW*ldv2-`gtLXcME{7C{Pz$BJoNq~iM~to(V8*redf2GNv~^7eX=%_Np2! z(QSEJqpLUXZ69Uol03&9WW7^3 zJ_Wi24Z1CJTlQtb&670YF8S)ss9}U_x!p`dz5i?H#At*IgX*-TsDR1%y)=cwuML* zI%8v6Y~-o1i^JX_ZI6fWK|@zENR9FZD-1SJs*timkFIlw5Srx9N|3Pbdjc!lE4W)szL=q zL<~Wsx*4nM0wPI-T6SkH*i4hSg`kTwF;%e4o;v$=e^HnSS z3sw?W$y&BOdRZM7RoW9Z_ffYrZeKSlT1l{iL4=g<0?+d9oFagSdI4 z{aLaPNzIoc-Q4`1I)Q!w9YII7K0q-NSjuogzM|ok-$tnD%pr=yo-{a`5wh9f1c!fgj^B60v+iZsP`DPG8hK_V#95xQ!g z*~I7rc~y!49EsmMrN_pI&N2WFrXQXGD2U?Ef>XZqJDlurIk5nULUO+>d`<}yNA5+~ zt-Jm>nWAM}0Q(BAoVRKs^r2!UE*OoZ?3x&HF(y#|z zBQ^-4&R}R}e`}5Ms({I|JPX}p07$|hc+mXl@p9k^u?Th~S&1q@zc*)vqpB9^;e~uV z?}*osRxyKN^t#XK4vIK2(+(9MKY9pomP}4(G@hLSI5V<=)^A@o%0+Dnq74@nej)?! z>2zSaAPr;9v&%ISA|P1e#xEeYh}Ospq{;)Qn8M6GUDgKxEVF~`f(jcty##^K1p`eG z#gEIk%us29I1B}lxP~tvpa$0%;?h6fD8W^X2T+K}rrRpydZ9ABAUZBn2A<5yT(^QyC-aB2m zcI-PDri|MO&3N{abR&Dv@c(|NWGdZ3fiiLpyW|DJ8EAZrW0?WJi$Mr*E30KqxE<9O ztrW}Ep%#Kvw8svL;1f`0%)DphcH7ybD-~*JkBlsslebp@@K^+(Q`_i#AA&p)%D&WC z;#n`m;z3LfK-U3NiMK}qu!4KalF8pX-YY0-k^!tQNZ`)Rej(pm)-dR+;_&kBjDQDy zz!4N>^miQ5|9~kCiXZk_IL%lV0pS$PH{?q9aBzZ)(hCR4LOScSmkuTuc`&B9=`88b z)h&@IVOY(nv!ojJ(0bteGCt|=rSj@TysJn__~|o`hQkMf4Lx>ur;F~xz>gHBy%qup z#)?W3afg|P!|35>0#Ocg$&#+utr!MV?m7vCSbOsDR)|u&lKuk#n|_AbWXpkC9L?ef zG3o*zX}fnBGhF>+;G zn!NCeA+Qw@z5o!a5t`GrDRi)#a&NS&?m%aLFz$?K(bHyI<>r|_FM*&yyAK@nub)Tx zP6+78^aXiquVqfUVR`vBoT_f*7Y0;A;{0MDwn#D(NgnKZtq_&#G% zQNzZO0=+_(gX>{Dm=*p$n7cvBLi@UUG@{jdxUbSOo9%{JQETzv3yiVhC%O)$j6nhy zH<#0`+ZLh#9Yqpvp6~+g4XB;9c}>O ze!fR#eU?kiVL0PCrfWt?xZ}WMJ){nDUu4Yl6WSXzxw*5XO-1`E-lTpdRE#s|Vc)Fcr-V=0hL*4vEF0Vu6?JOn0s=af zTTn?zDQ~eyh#0Tf!#a@-hbP6vtH71DxH5G?y|{4t$)Ci~3DQd!=5Qy{8_z|2x5cwe z5nQj!QJD2%DM^8Ef7z*z+Z#sFfOZ554i}Ds_-mq71k)b>Q&(odVMd<^NOy3=B0+$I zavG#i#IoxPO(K7%w#$l}8jAxPhEy{Mnno$^aA&a|iWskHJ`p=Q z;v{3@Q!=}{>qf;uXG|&*QZ9Lc6u@Uk2^6Tzi0(96NtCwH(*aeV3#iG-FsqF3{yKw+ zDi&(yLVrai40J^i6Y??lyu& znle*`YbFy_CclsnY%hIJCwYaJ&OYYiUgQ)JWd)hzJ zp3htu%F@R5rjI@?o6%JaQbu!1S7tD!6M8UVZQtr62_^ZUfU}Bt4lLKRjXuJ(5IJL*c~E8EU&}=uFlH7OdgASk z@w$=o=Rh`_KVs%WD0osoD0oos=!99-7n=AC4UC?HCp5s@E9Y?VbNN@NJ`Y-y4mE)f@+%p%o^b96!o zbW9KFA#g#ti=orSpnniVr9D?|l#nan2teib1+LDOGR3K^yGonfjcu}mIO3-A&2Z?A zfFlC!ihvB%^Lc7m9-}4zr9_HW?%A^3rKJZ^#=~{2QR&pgORbs9XyIt#l>mz%%BK8+ zPni=o)FuZb^FAI}Q(kQaK~OY)V)MQ(Q#=#WH?^dlPy+fk^3jY` zDSH$o@NGEi5hPkbE0s2VUkF|mV^S*XdWl6pWhZXmB@sp_o%}cjdejhevLA)Lvq_P+ zM!JjyJG+2@l=)I~VSIKSI0V22x~CapEE^!bvgIUmT82pktJkHqe9#uBiR+1`R`FL8 zib&$V+0OnZY!H+SF~OrgxuUF$yC8-Tuc6y?uWv*R&YlsXEnk?G7|v?g1yYK%DFJEc z_(*$zR?w59afN=^SpzA4vG*uy*`zuuK|K&_iS&c2%Zy1xkR0JcXxptqLH8*kb`2 z>h-d(C38!SA=_+GXwK?@(IbWCOfg5!t|Jbw8fvrJAN3^_MFOkjl?YH^o_9WHAOc(w zs7W#;^WtSlW@7HfGT8m#aF@*UK?F(Mf29rwKZ0Zc$mmYS-Y=s?&OZz~8gQvx?)AJR ztk)mn-8K)EL8}QQGaQHZ1Y?OvpvQ;I=;?4fiJBnsSx}5gxhb zmQ^Nvy)BxUmhUsk1TucK>-)NaLfa`eJw~iBQL%mIq*Eks zB<9n44QbK+vrt@6Ju5sA{k8eE1*kZwblSkGDERiT#Sx`D*d_B?7EmS4eQ%=txwKQ>q;z6n6ayrW3d zSEbmKMHY4Mssr~I!m48A?Ck`fnb%;! zfw^M1eojnun2|wvgwLpcKw8Fl5TfO;TDXk$Rr8A2Manh}iFPW;pwHReWr^fOfYpOR z$@xOR|EdH({@o_nR9YRvV>XoqW}Dvv+Z)s%Va3GngBVwd4e4#i5#^J8sb`cIsE z1mgFaZe}T%90qPWFxm-e{@GX6;X(;B;XK;wGIrdDOG>1JQ_q?7kIfJl&7>mrfOdAm zf?NcNf*{Vc^po>WaY2&NGg0)*XL*D_YE>6BW4F5K_FcQQVH$|7R%HJuT}|W1Zc3oU z4<8J?gKCidhNN;HH6+UTGo6jKRS@a(NM^dY_x-!CO2!O1k^GwWf{#5C>_+t(T+Xt3 zO-r9$VxauXaVU$u+o8q@ho|Vmbm**fs~+%WYRQ>u_0cqtgiO28MLMi|{=x zZ62?F>2J@fZacl98|07!19zCt8^T>Ip;b+a2^X=t^Q|%%S^KJS)r&nqF&OOBb+_Kw zBYP%hh3G<1zl6QKr48V zm#ORv`MuTeVadbtL4HD)l`}(1XZO%y(04@Kv!l^*qqc2&8GWnXV6=VTYFh9@yfsn3 zTh(>yyYiO)15>ae70{=-^`W9w^g1LudW{#|Y;L@Rmvw^?A)wDKnUXr%p zKCxQrXlvycOw||xe?LKQwOuB*Jyfyxg0Gj`A3;C@AjNxP>+K!P>^-nYCB3`az^E4)^9 zsm|`fW`}kX1wxSl%G*~=VCdHrwCY!)yJHW<2VzuJLZUkPY2QNXkV$8wg6VlrKyw{f z2#v70n%U?27NV3RuH$k8Fg6R!SrD(K3#=oQ!iov#@Z*GGWyehGbm^DEC;ZKSzSe(! zo?r?{4oG-#=Z+$2LWrfFUI>qKP+(-vpj107l<>|N8Sz!QWwnOx`gwQ1eS%e0fNzf~ z$`{BnEekmOUhyWf*N#1%%Oz`;^#X8cIU(HRkdc*w*p~rnkHrDlZxz*R*pu2pBe{%` zfi4|R0dlJ@sI+E@U0AFjpS-!mDNZnDnoiXNbbhJ)oREo0Jt}*pqo#J#wIqRkwcDcH z_|8|Qlgk_gVRzUL%O)!AkysanvoEK<=CjNx@g3x+iNq_rS%Hy4J*#VPUw569eSiD6 zimT<@axzdySQ5_lVmsU~#Nd`273Am&v#SGvE+CYswtQ0caO?6+yEBkP7SX_4Cx3n{ zlgwFy9>}rJ^gag{sDP-3itOQ*G@$P$9V`etYme-10)q2gtEG~Q-(*QtyeV=eV47VP z?_$Vr;J8{4J0XFfkGl!I-)$7Kw;Ua4q5197Pb*}m^*i=#0E-8$gRxjNY4^b8)(F*1 z*zcSD-8ulHYoI3OrOl#o;Tqjb+d|hn0M{fwd_a?C`;(^Kq_Scnfop>%Jy)O~>vqVk zE@LI!$;R4@8{f9ikOi8u9aneu_brZ$daqTQpY$TpahtG>hWnikq!V*TRE_d{I}Sle z6ls+8ED_YSF>wHwBHf0r;@wph87(DI;%k^MZKi90Ocuo~0wODzt}BwE0us9Re-kv~ z35;KV8-d3?4!;je@E(C9GYtULUhX#in+?1Q*_~T_d#j6bkvD6Ko-K2NNXM?7h5P#L z?xB?mJ}j;?RG0JBzH7j^sEaB;pfKKI)6L*bh-$Xd^Ai}6Ti1K2_64b~*s_Pj9aBp#&j$iIP$q zuEOPJ2F*@$KeZi4e&~a~->bd7jrDy^SB5pdmKirv+KdDE&Ecv@AS-Mwz7O1`cOvU@ zMN?Za#2Xk_tGQ_M0{CI9Ol6OC5j)~O%T?}e=Ls-j2GXc$9$wTgDuto*NN=ZaJEooY z0E$3M+O{E(pm=KsQV2S{p*CT|S6Q)Dw8-L6UFsqT-x@A0qYN67QSeFED*GOR{gVD+ zSX!GNR6MftIke3tO2KCxl3m25{yhOHTvwMh9Shg}8tlT9scIAU`DKj1**!n_31nwn-P{P#oi55KXra%fcjWgh!q9~l4c+$CMMe}%{X=Pkm2X=D9QSf2ma z8RNgj;riEQj8;15zs@53s|(pb2+j4Md$|7ESL8n_H2<|1;hz+m|KW@9FF#y=ADaJ< zhwI;VC;b0AT;D_UkM(P--92Hz~l zZD$_Q<<^MLu_#(cePH$R5z}UBj*6{A){aG3#%=p;*00$yC z)?dPo+L{CLky3v}b*Z#@-V+!X^wsd{2nc06G%j+|DAmA&&gqKJFmhuGNawo&oWCY{ z0cs&_@2TMpYkiI-pdC8?2)1F5vjip=polMuVvqcpH*|E(%^|%&uz^c6$`#ud2{?k? z>cW5bbkW6)VH4;h=-_CWI1)=^cBZfZUZY)PEp~ty>agn|?_RxEl-V*+G{6hkg|`Db zTUc^1s-Tpl^|SvPD=J_ws%Q~i!uGyTf&U7^M+S%2@J?h5yxB0iw3Ucg(e$TW#-I?P zmy^+^e0vl&43t^^;@nm{`;=r90B2*0ninMRIBlY;0l1?h1nzAvAwh!_7JxWrXV{YE z!KaC1--;|@0duf}1pW!8Huop9lfXv-4YhsEMCIX|=LZoN;2TLu>n9>F@(;Qu==KFT zBxk>2KvN=IZym~%ua+7+1R4k^DAG7Eh^J=>~SFqg-@Mn7}h47W)|F=pSgUZN(s;$H%lvA8v1b zK0KB7j3Ce$u;pR^4oKc9&sP+ZENmkchCgX{+%*X?B8eY_k#HIin3$kKHw7h$SHHG= z0+<3Iw+M=k<_H{e(=1YD)5}{wA&lW|!my9=7;Kpn#(>R(@P?!Zj^k}bMs&0C+<4eo zsJ)a`S)g&`fi2l@mm7GZL{#Dg*+Klxj%Z7eBv2tz65RokhL$a4K^ZKT;t#i!DUim) z8*Ao$Q29R4QG{5`k{`L-Y9MXM+!^p15WD-f#|PciiKQ9bpZGY8h$;b_2NaI%`88+O zQzIk>Cv5YiFyjY z5`Y=c?&U1VQ4jD|m6-esq)W?B_CN>~Ir6krDF7!Z?YiPx1h^_wr7E+e=bs^j4|YDf z24#Y9o*FwF`>H6WF|kfhvJ;3Ux@$545ttQ6(S0|XVn32$cuIuB|mobRmwC!k6J zA3LBy;~PKg`>GhJpePiCIo_6GN4kO)#l#&{SAH&_+N2c!Mx<$`QdT_?gDMO#VeU3wIe{{p#zni>GA6!nL^^klL@9o9XIr4)&yCw zfv}v#;FnnexFaYomQgks@0iwb zuF*{Z;<^2KbUT72PF1c12+<{XJ5C6RC~LvCiqFXrvN43}0h|?xkyGM;ejwSwjI6}C zztcbR21V=v%7?Rzku8f>8CAi#G}~6@iyI1pySV*Gy5WV`wls%v8-;oA+~?sS+NY3l zArRf)#%;d@vxFkNIRlq!6j3do{_;(n^qJT{`p26h(swAioPq_;X_t zHOdY(xEC0@t-EIf`QGO85whI8T2vQEWq~bgaWs&hXf*ktCH9sWAa0n( zecOPp;boD02WdE7<jBIE_7WfJZ4Vem& z6QY|JGg=M*AAc<|+o%MO)@cRder9#J{~IOd(N zveXuVo?^neRO7bpFZmQSak7#3ePG}sJxnIee%lZirv>Aob32m3*&&v* z6yj{(v|BBVq1T0%a0ouTEFi~uK&-c&B}w6Mqs$Co$uipEl5f$|aKgY~wcI zI?6=k4|8%mya_<1O|(MfCHwLKawb^s#gdr5TqV|1V<(#dyJ2$(bpO2{i=(KEkqshG z?KB32RHt-B9bn!f3}AOg#J4T6?RdreRHEW?Dnc8MV$O}J;ss>|6@tBW$t`Ws=qN2> zeBLG!Q_fB^lUR}bLU?m-0)yHJWwGUkQLYQ9h-LxznTCMiv0OUZeI%AqmOjXSzhK2} zRsrTxlb3$?4n~25Te)d@%|LvmqB?l*~%X zqoGc+K^ zn)c8by4)uyAMAey=?i6Tcpbf=LWdg=#nZXC8QWP2kC{q7C>C&c9ZE_6Sk8x*G&GeL z6sJV3xPa}#Z}-rV+lib=*-Cd~-W<{nog_Aq;YRP`_7oTQ3h9nP*Eg+R-|lw;bS^kB zPkJ251;rvE8Kf66SUJC=#s^G%`ZZGic#V(oQI=W|L9mN;nOR;j9Wr}Z358Vm=ABr% z*b9mfG%(hAf|+2%<>70EOCeS`%NV35hNP%$;db!dUGymy0eKfPVmGr&Sk#dz4rCl- zeL5wytgzz)a!t$R3AMwJ85rll#zxuW7S?59pgT<$Oy$PSZ+YABWRnbvj@rdmoJG}7 zH7alWHf0Fd7(%jk+0I_8ZjwMFgpt5RUOshKj3b04Z$qr3`#nEW7*mOgBzh~|%VA-3 zgiyKW9sOxw*N+@mFo%Fj5R+@c4RK|og%WukyMA;+Es~TAY1#1pT0tI_z(zU*@ZRl% zgfk5-$1;)7&|e!{OotFcAg4FhuL#{wmBJlqirFN!u1nJ z)3h6|BO(@;9(&lhfBYXH?b-IpPB0mvAJ*DdF5<*_^`nsD=wz`SLj}C+y!RqLUNlrI z!kpb@%QSlnI)%{8mg&Y;*@SRQ>xT;^*WhkcgxY}oXS^GR7opS98kAW$TwJL}N^UL_ z4js*!@yc4epGn*XMr-V1?=wJzpxnnG!uG;_3!TPyLz98l!%R09;;u~u7*?DX<+Y4i zUR9W2Tkv7*_WFZ%HI2Gt2y<#>tC7ro7>eY4nlxX#Q=Z3Hojo(z1v#F=TJA->F^i*t z{4Y2`l!kIf>~`*#w$n6m3(OuL%i9a0|BRm_d^`X`03nQuVW=y@H<*$^mno-tP#?rq(f@x zo*#|x>;ocQ%Z@P3ZS^TDmv{ga?K3Vu0-#f*{uX8G>6Fau(A(>w+EMXZPf(->N2IWY z$SBW`;wpFymXQ^Z!Bu(P1#+%V<;rz}?yuX}h-IL0 zW*PRMLWA?F5Fs1K`{_u3$qwV!&(k>^YIdrygJ^ga)DeJ2C`^+$k+t4a(;+EQ-bo~P zZ_t9rOyzWA|AH>f$u|;ALzIu1vC>g-k)X z>XK@Fs$^)8BCTv!FsdMNe+^YLb*!JIB&R25_<_)S`13=`+e$1 z1br;d`K|c0TP?pu9FRsF0`BFSVW3JzqkdLd3iT3P{$w>Z0=by7w@s8ib6jFOUdOOU zHwIu0GY}3(v5YQGTq?r*(vtt$9O~NOL;vdxS~B-+8X`_J#=Y}=E5abCF@S%#GoF{U#l&;JLUU`NXLdB&}w^O|mij_L2LH(tff_&du1N>-Z7KXlk zLu&I~CI!b6x?pUrd6mCd16==@BaC=R+s9-QCN9-BL*V#AMfyl@i>)=1n#gbW;tGT` zHfar|;9DI#9kGjq$EoTfqBa;|p zRc|*~-e?hSD5F0lv0jL+OWS|wcC5k8KcWn`N0Rw&-iU&&5>R=Ys7hhg9bH;(>6z91 zQRCeALg^2ylCF#0^;MaR(GW+a;PmZQ(SkP`9Z)V6{4(BO!__=acbv7k^oN@Yqr-)2>%ft2JU?2L+U0|a8=|Vmm-&*W zSvtyQh;=(rtU*gaX%0R&23X$)EqF3yT{ZGQbU+o`7AU7M7G70akVk#qBEk#>nllQ_65d6PUhy zkw(H={Gg>XazwtDKJ5;0O8}I3&Das}$k-TwW$A;j9@OTHTFiT=GEJ5rpoRittNX6s z0VhY>8R0F&a!#ng)(ET&o!hLg+OONl!IKL~ag^VQbgxl>9GL|dz*bzUE*mS1lWa|~ z0^JH;CsV|<8jmJ)G5bwKs3j=Qz?E>TMeiMfQrbXMJTlgMwmIku+CM-GfID($|5Ys! zq!!RGu)^A|!Ql#PTV}gsEU^RQlWrKJcS-D{nQx&gr|Q~vG=30dZ0ZX{7qG+L0(ho{ z{;D&3+Zd|`a2SR0-iDp}`|N_=<_DUd05h z0%E9ESHUAqm6w|U{uK^DQq`1->Z-<<+tG|g+n)v?!m1(M@WO17CjF!}RX5;b7rZnS zX;uh}k)BPT%sng(v!sXKbAG0BmJ87W#b9zs0K`Fma0$Ty8(+J=1Qbr&8EwE$u0eaF zIhzb5y=)tz83lFS>9C>%Rwdhnl*gGDYb<~tRb^z$)t%19)_4d{Pnu7KuJ{Qe0TEO( z4wTq2lo=-vz_11572Y-8&^h>kfS}2wyFi+I!zGs%ttYxts8?-o%msVFTxP1dj)6~h zBc&k2Z;StS<=5qAxjTA*c))LH$ll`}v^1QRR&x^d^{v>y6+rFfFydhf6PB>~9<*?q zvy_0~sur~3p}f@_R!$q?mJ+JRKrKL#tvs{`%pX}s@)OeGk!9_#TG z4NH4SO3{JcfrPjBe5H@2VGgzi+s0(=c=Xg0qT{5awO{RHG*GB#nRzMsbv-y`q`)Lt zh2`XRT}`n$3-WNC@mt>;bSbwMHX?O8DX&>Qwq&CaF zk!{6AcUGsqEcXhmSn1woMp4&PsC||jt$Nt>HZNq#&Z!+!0VK$xQ+=sW)bxY-T>#~J zsgF{kk>oH*Y&@Q?TSds0coxY&t2S|+4~&YtdLLNIjN3wHrlfn8b`>|V18=J@MXOv! zJ;D7>QmF;(ljiROi5CRAIfc|2RAO#u4n~lDPfsas1ml)|18t++a%en!7JDW6QU;}a zwx^p*lW0o#o;rL;;P8b$30#5X1vWY!qKttKGX{n;Bwoe+Bv6Xex~#ObP8rB?EU4w% zf7xYYZ~Zp^f2y?$iWMOg{2QE$6)HF&MVU~w<+!?sGZ=UvJ;?~b)@{BJi{xEIk`4jI z;7229`4N9<6!+zpbs*Y;<~AwUgyjRVgOyz+AV-9Ebtxg3P#fv66 z=dHTz-%2A?U^_;>winOm(8)n%mWV{Jaa;*%I#WmpPe9;Yco)3QRh#AhGU(35`9drL ze5p!oCu1j*?&lE3GR-GkdGYb}?g(6?fcWjerT)GtK@pcmV2YL%_3K?qNyl7>5?!Li z!;RJO;gA^;;=X0LfPhkTTGo^tVuv}D;F?ugMGkT0=AEc7W1a`fh%_ypwgYONq|4k{ zLbp6?8nl-%f7ez-qw40j%7q$8#Y%P1p9!=aO68X+lEG39+?iq?yBz@Xe*?Z(_y?Fv z?CVNhp4oInE+03h28^U_(ED=h1yCn_VVEA<4r=2RnUDbD^+N%$W10 zX$+fU6DEo;`bIr#JS30OM)v!LwPe1k@-hLtMCuH28l0GWMZm!(mAGj@WVcJ1aozO-!hHV2zVc$R$djmH&rV~>g#2b>0<>YLb&6u|N^YnZ5IiJn-qx4oKlTLFepx02 zLJQsO(!$F`(#=9!?)6w}EMc{%23TNNi3at30?SAnaADX!@D)6qi$On)3Sii_S=_uh z;|$FMlRz$mxb57)g-F>5UboNFapn6|Mm!+i=?u;L)bi;VLA`Rk|Mp+o60mTtH2=mJ zthwIUTxe$+@HwxZ{3(+AYWikA&A!|Dobp*LDVkkGx^%~ck~0KVGvrVCJfx6UW_|#8 zUhXTyRa(pdv6-`Nh+j*5Nksw7(YTeEX+&3LaC#efU6exev--q~wS!HLaLekB2Tl8$ z{29Y3A>QXTJVJkPVqFC8lYw>eZ;nYd-Bt)e{c@hvM!_-1!U4tl2zRK3_b*NcAjolV ze&&zVdI5_h;Uw%qZmb$0KA`R-eD%s6?Bz3P!5E-RzbqC%Xiwmnt6UC&$@!6my2lCV zCEj<}1BXU&$I+%Qh{y2Amxy=6%xz zctuj|7MaYxResyI3Gc^>RnG8y-;`niMM8WVavHvgjl}C@+tVF+Pc1|ypx_oXa(kmI zTJMY*@R$LQccI2~PlGJ_7Q)hg=Y1df(1B&bDLv<#iBP!F|AW56bz9x2XUKqtULPa> zTU3hcLLYJf&61hpD}n5UqG^eN_2}iox}_e>6OpX}u6%r-34EOPF?3xd{$C4$-ZnL! zEZsmiobLmSC-#FRZ4M+ZF?jU#1oDIq$DAdvfJ77H5Tl2Cc4f-?nIRR_PDsxM~bIN&r+5=873;Nqgfv3)rBNP{*`HgnY>r zqS%<=Qw73tUdwMP1^|r6$cmzx&IKfkA|!odlFdO3t{5NSL+thO(0TJoHf65@h{9_+ z*KP2=2YW$!+$5fqY13IrQWhX-DT?SqeB5tJL1QU%fz{Yfw-LAy62H`11lSrKv>ieq zlI80D&*s`fOfWiMpSgYy?s^7_M7b0(EsNgLM>u%6z$m+fCaiCSk_RFzMGEm92pPRx3+qF!)eQde9DZz z?H;JFYsO!zMJm{owCEmdwaKNxhC z*92!5N%6zx*n=bNWg3h9WT&wimBk?u(@m@= z`7q4Y3358S;LA7>mGcQ%s6HTeftY7shD#<<9L)DS>QXP|ZF|7vMprUx00&WN5G}xW z)ulC1@K5SVwfY$7UrJt(D<48hI49x$(HxR4AlT1wAx3JnX)pqW(sGkKtYviowoZ{o za45cOoy0)LCC}v{d7Jwd9~M;FkTGw zccA}`_2S0{N5lP)eb-j(YdP8?8& ztRA4n-mFikttg~mooX+i_e1DoxJXZ!f8L!3XA~laIuCY#`ZhEfs+?7BSTuQI8HhF9 zXSD&tDO%Lkw1ddRGqd31JsaMb!Z}TFY8c?Si=he8ZixlXY2~t&aZ8BE^h1gOwCc*u zz|4_Nkktb^qY>WEq{XDx!^F7vJvDu|gj;Qjhc~~Q@@#eicx>7F1HDt33>pDYAiA_j z-cGDK@vtJ0I7sbfm#icgS|D65t>=9l?RM?5;-(aQxvEUMGiYNOtjq-{-jHTHAuup4 z=|OAby}9<`49cn;lvwV!v#X&N>HvbdT5fYdCxCUL#1O#R7P>6w*??vR`FS=@{dku> z^J1vgq^tDOujQVm0(4ICe8tW1jqfH`AQB`rk@G20cUpsL0q>0Y=Ndz8Csh60QJfzh z&xt$OT|w^Mq&Dm_=?8m~n68!3r%HyTn&PTJ2O%ofRSW9a*7j@f(E!Ker6DI1( zwYLN0Ap{ca4rq^uLxI>JJxOqYis5*q23%)}A;3CxbpbX%$-soS}3psL27dqD)e03H4z?3Bwl?Ej`X$25sCz;t;UwmNWVP2Cy*KkJRv}8 z6zp%^0DLD+Cs>W-P!$%@ z^vE*Ch>Ocj|4)XzntSH?&MD5EfC_DgK=W|&5)2A($aPM_yXi=@W%TiuNN*Yp}9urTPY zbm&~@Ihn5#$os9I%1- z$ceIdWbjKy3gXI@n}OTR@(D2FOxSKIEPrF-EZjspK>Ij~V{PZk&Xxs)OnT|ih!aU0 zF3u77eWp@N`}(Q98@8eW;upCG#wcf&iHm>!LfzeFGX0q0}witgbvU$MTV9a z+Rl8nfM*C4q#hwRRkJ{K#MmX2hr~$gOff@-j34p^IjIj>1^O6G7}$GI=O+(!NrLWRM=zsTVoPR4EcNqwKk&W)03b|)=V)|56~QwY`vUH6uh$osl_pFzIGyt`wIn=2 zw162v4f!ooloy&Tv_b5@(8uMQqp-OJ2>H8ahLEkKRd%0ml*r0_xdAnl02;A7piQuPid8IvMw3fciRaJt5A^pWzBK58*IkH9%PGL5qjtF@cxG{h0yuz5 zq3ZS`1p_NY2z}#%#Mc+nsDj8w4{mceH~nr1k`z#S!AIxaXHm5If|3R9RnET~xA;WR z?xHu{FxG(yYB^tDYw&gJ#!wa=Zcy;pQt?XwNnVCP ze+MK?1T)*FS8f3VVH-ZHiQ9Z1vH%l;G7q)BxmLA(uP$dbdc}^I2TvBJ0tpOdl@n^n z0^Gwg07+!^-pg+*j^_!vhJugq6^4QhOMoFGAK-}`N-#93)X`GH7WiJ9lqQV9(ohq% zzY>V-1*rw-wKV%)8%2U02$vwiLA$~Q5%gRNS!$Hq=)+Lj7G%0!Wd+EH>SfrIT}6YA zbf^v2l*e<83!yUQuEn?Ob@c& z;duvDNLKMo={ciqb9132CN-A{h>DuLB%Y-q=q{ju(vNn)+6Oe^t#$@0gTjL=DuMbj zgb(O7SPVE%-3dv3snH-z@jyWm22rOis*5r%N`yXShek|jBxAgnefyBsCWKoG*pKAe zX$(c^xJL%O!8h9M!eV?EY4r51S-85VmbkHHXfYSNZLU~_h=!KaKq1J8G`i4-?xCPJ zsB$=}Fn;KPU@57f5Iy@2S7E000RPi0-l*69w%Kj7!A_zwcpOGB7N@yy!Tp=sQE7rBDabyQICamD9j}Xoss4Wp}bW$vY@2oauC@j-7uy>i|kah#EQ!0B&**U;c@_at20d3b*AAAdnUr@?q|>R`dtO1}*Huz$f95Yr)~H8wvqH)=(@0)w~L~ z)oJ7W2%G>fdF#!rQrIr-LRml$5MS4K2`jQmQ-JjE5?cj`p{ou2sYBkpto01}0W1MF zjkJ_p@YTx%F-lQ0ru%E?5;m9#2w#TyZP+yNvz;MHt0tcB!=+_Q!k7VEUw-rNMDGQc zXVmB@9dD701uSfYjuEiETd!udWJtTz0IJgintW6C4Y1R&=ijGU!dMCc$i*VNjU1|s zj4BfDuVnLUhb%@5lFE#ts(hQny)%$_)paGGQMy*=&ym}qiK13HwUN^`qj1OBQiWr^ zG(WUs8dSl|X(2YG_c{184ruU6>HNJJCU7@2*Z9XHl*@fq{sc0ci(_y#9qBNsKxX-N zQ)<=KBi+;{gm^lUjp`t@JJqU`foSbajdga@cLh?o?*I~!^F@>B98_saf`epigA9n% zK!LVTbt=A3xf5RcgTNn>yy_E&>uqc%yiu@j<`Sp*Pu8cjp(wwmh;#(NN-Lbm67ca% zF1JIrR|cO#!Dg2wG1Fqs6lpc>4$IsmNP;AqUP~|AWxmvuAc-RBe0dr*^spKB(Aq{} zz)6QmA%SU@#xULGgB0LEqR4W4xj)fZ4R#bDa;WxxDvWeYR8y6jGrNx75PFl(mh0yU z6%42f^96VgXpBzB2&Qiv)TBUfayV`}w;yi?p0QnOuA^5pph7G`&L^rWG&;^tssbD!TC{BrJZ))mgSp3!xJXR=+o@l@Sn>d}A}3jEYhuq!l|zl_ zRdOsq4BnBUcr@SHKhc{P+D>F|K=d76eo21l~-sNzJfGbvna^cZVC)R*~Cn zXZ~?(dlF9~`2@tyKJ}df)P*MdO&H)aw$X8fN2p`OVu!Z~l@yW*RMN1+!2@WM)S_`h z+d3Azr^xtct~g5y{zfC2mtwzA*#}mK-NUWU6jd3NK?Vw5Ihei^XxW6{Zg+)FLC$`1 z*;7;8l3QHiK^XzrUu2V)SxL-^lb5CTMZmi`J&>{F&ID<9&?c1d1-A6)@e1>2vreJ zkZ0ca(-Ag60}Gm#{8!H2vCL|zh{(mEPA`O<)X|;tiYOyF@OG3bxD{uW6>2VZAPobp zWZw!PqXXXHFoAUP>JE+@E|J7T4UY>;u+(cufWE3;K|#D_I#v(V14y_nhwza zym=a>Fe95tgMqr=WqnL$0xvU5E~4(8s97oPCn_0KnWm#Hf?$L=0vkW>Qh4)8n9+#~ zI{?l)a|7FmjF_i-zmK5FH8Z*d$avYaUB4oATnADO6N%F?y}d%~60?P19Ciy~Cp;(+ zQy)v1drhpByo{y5PU;Chc{gRs>Y@wJ7O)ioQ}B&RXa6^-Bk1;{yMa!Su?sZ@oZ)uI zDKsR2j}WgC^gNfv@^`4InO>pE<0?9lR-xiok@xhI9TZUv2N8r$SoCU!Le)n}^p8Vv zTU(x%9JI~Oi1oE;5ejWo;g%%OSxn<@E5_--*{CK!@;7(r(2A|fhyg$qH_(BJKu`uH zNqurQLI-#w4VElrwMEfcche%0ONJ7F@(l(-ZN6l(5NR5!#u1s$qTUU?q2K_;1WuXpOV7sDB1r_T7%9;-rc!9K9Fh8sYu z0@^xc2Q@>|OAJ8Tcc|y4cYaX9v}=x^pkaB>DdKX-l1!D`P*=`5B}LI3P$MyPmI zk|V+soLGQsE)z+j`-)$Nfc?E4s~83tZdt6gWg4dkwyHajbFn$)FWH+RNGF1T0mK=}g@Bpj=4=4p#0EG44!rYDs z4KhgwSKP1AI*3fv{+r}iQ@ZVK05SA6@D^&~fjHrKN)t3~=+?|FUB3(Kf)66>Akm;* zPsBnM6@QbaR}1c-awPzoW?F#6&bft=Y2yZlDgYeZ8&@Ia2$2{$TZ_XkTyn`G4lK*B z@!A0mo-B4a5_`1l%jp48`m7^Tm@&Its3BD<8U7&f)CsZD>jO2xhwwKY_duUds}-la zdOrtY0|tTIO@z6H1ynvr>wN%-f{xpPZNASz201U5nY1?E#Z9vaelrBY6sx-exn7$( z4m5-P>=%A4trvF6R>|4jIgr*!Dknk5u2iW|6;KXPQd0BM1q1*~L6)X8#9)g;MJClVt3CgLF8q?--;gUB;D&K_6efd-QsLuyCQG&nO`TT)Q zz+!NaE!EqH6dsa1Ou#wOh~M>$-ZeXyoOtXp)UKyMp-^ftL+oBo7fLA&C|epiUA*r@ z%}=AI0@r-}n1vFw*9N!+{lnqDDKc6qE}xp{0Dt)-Ip+v|6Krg9-kON5bt#UiCE}_x zriK}TJ@qW!$j|Bm5K)p_qiWl||05j+GFhT6Z1MO)5<*wdZe`7r{Pfv!kg*huEM4ls z1vn58a97A6a_a5~Q!Pns1;l)=4g{c%ZkB_Al*rFtL**kNctFSuqrc=EJ_+E-te_M( zdar$LVShsWq$^O%(}S}cNEVPC>=Ooc>1`3Q?BKou%u0_QKR)D6nMox8j!|78MH?E? zCMuLVt^x^#0g$OebOFaUE$2ur-OXJtpd2fQ>1Yz0puu4B4P+R^>mcf zdSQ$@<=c^*@ZC^LBo1+?26**%p#sJsLEswb`4!d!PO=>W39<&O>h7T{AGr%LCq#E4 z6^B=Cv>5@_i6K62=tDgd!EpK5L7BL}(=@SWJqNSy{ER>C2@uJaR_a2%zdZ`Piy@4i zcuN$Xs2CTJCc;UZpm_(tDC-1lltOKbTDt=&hzW>207LOgd!GaA7yFh*0<$jR-8563 ziSr$4$~Jo17dOebTx=B2oj{l%1@wd9Wz6BajnHGcPibkT`s_U7a(n@30T?b^l&w8A zWp%(2gQ50le!oQ_RD|zgYrh?Wc4`FCOS`K+j~2U{u%)u7Bs}w06*xgrns}%hYtrhb z&-D5b3xubi%j>WJm8|0G^}5tX-WCaLb~-~+mU%Lr1E311HEMrRn9gEzQ1SVla3mqZ zIKV|F>25p(eTUWgs9%dULN|>Hj2=ThhU47!KzoYNya4iCPy{?qXA4SC-fV$&F$^HcxSol5*4ldw5GiDjWq-0etzYQz%+G=#wxwSnwv|8uXe$#suHYq# zvE2#PV4n)(WC~85k#l7!H*M+Bx0XlQjeJ?$(vLly@iPsSEHL0;tSla6YS4qj(gVU; z9`#y53Q%cgLp~)SqVGRp#umkKKdxva9L8J9jmRsnV3a>T_Qzl@Ks3O(rwN_Ba zMAllR-PXw5-BVhy48zz5#T%y5ZKY9SIT`k0?yBW7vCSz;d0v3BD=Q$9nD7P&N4`Vh1+CIS$vQP3Qx3q=*9>@~%M@|Dx#b35v5X zSb>5j*+EHZEQQLgX2>NByndo~xWL;dSS{(847Q}D>o^I_3V2$>Gn}OSspN zj%5)H_Oy0NV_d2x5M*vo5%mIWyX*oX0iUleB%Gq9zJZ<18FGC)x_LpqHZ;)oBnxCSE*DaEz-PVI5AB?0^-x~{vp zqeLr(t%ru^k}=B%0iTj5jokn{jFzk*-zDx)A4|2PxyGO)D*tRgN5LJvNzoj+;p{=7 zOI#caY3XI3->E_)7Oc`bO`vBJP+?AXVLNe`$-`$!VCu29L9Ae|e53D9Xw+e20(`Qu zb)O;Ij8f9rFXG)m`03(g4llQE7(zMS1(+)&-oPmH+agWE#moOErl+`!nNpD%natf> zR$)O=bp|L2>aBSVAB&2XfR&RxfA63LF$@!Zv_kcHUpV0CyjT~@#@^#0(_0&&{!H0|6QVGxk4vPy7r89Ez9 z*v?Vju~%6;kmr=*n1$5anQEUYRXc|H%!})NYN<{qCh#bYgz)5N=_RcVB}-B#tVY&X zD^JMn z_1*%OV+G?&`!2OyK9+1lNWLW%fh+2b2OX6`nxR9wZo4+xK@q?jupo*tFX=Tt&;e!w z^9+FcO{g#`Xe7gIDFCv!WT+nrT~6uQg1otvLH=F577pG-7+0UVn>n*{>OHjUBa3c^xoh55tC$$OLAD?>yCt!n;%cMQdtFaYCcl+VrS2Q9WCGOSXH zfCZJgR})#W*ah6WuCHo417k)Maq!Ob1JNKp95?`w@va5~bJ7cGFAjw1N{3Z!HXxv= zM>yicsnBsn6N*7ur$=|Mvx20s%+CQK)S2CA5q)>a{%|vLj;_4{HF1%IfoXWVI*oIR z1f(@g{k6;IFCo5>JL7(UDcaww140?(#Vq3)S87e z1l!ubh*9_F-eR{&qoSL%gA>#_7hbS_rDlLayu|~yktyvzk{!BZrMj#SEl!M?P~55I z3ZTOX?s)%oq{u+1-q%3#4W`>}2834Pm7gWZW9QM<+-B}VXQRU;AtzJpT%1}r;9!Vx zOcrsd@;Z85!ol5=-@^3u`)EW$BJw)fYp|Z$?xWh}3x_T8<bZ=x zsr^)dP|LXX>=1jWAWqn&j6YY|B;1$~f8wVw>e;#}ca$(_)<6@Y1>~hk0C5qQhKN@V z2S?AWc7QTi^?vJ!GlvR-0Rp#n;|KYr2Q~?&dc!yJC8*!z^1GuZC$jCZ83O~2^35_MucQz5NDRr%m@zT|4rnJBbg=(E zMg#rnHX^KsFQElrYRz%IV8r2~+~$~0C!V}o75sCAX%&@SzK)?X{jH{E)^vlG z3VK@^G1A;`twr;LH!IjhaU)EERglsEXw{Uwa0{9nRKaj+QcC_xM_Q?is{r@Soo&_& z(xSTC=@B$7t&u_+LSssN<_(INU!zJsgi(a@k>(H6t?^bT z%E}!S6V&le2Zsw*#ssQLmDx-FGnqjqwTC;GuIm;?PEu7mI?mN) zq#3&?WDPL?+$zoMsll;T`M%i(8IKZ1j*n&`Qg9QNfeU?w=1!Vu^a!(mHYwo}m0e&L z6!GQuc*wmwW+!y2i&r@pSpY0b&@bhOi!C5OIXF}ejJF(6zDlcB`s*l@c#EzUQJt95 zBq}fP&@7>|KBpYgmlgenCDC0$@r_w-Y}YxFFb35T8fSHNj-wiqxg&;=}pv%i|DP=($hM>Xz z&6X`s0~vwcF@&u0UQiWTEHgi}Oa)8kcYv&rjD*Fa9_?iU0RpfZU4sr9@Eg9df+C7X zQQachv){l2uqw-IV5IE5^RN83t9K(#CAC%XH2z%W9F=`DFddX0&iso5`&vZiroz* zm@a$2hkMDI!K)G&u>?O_EMr*+Aq81-ckK-*0YNTU;{UnsTw(?mG&#Zh)TuJzZ^r}( z_i?CHZ$(M%E$A*j`?z{QY9&$8nk-3^;wpT};Gof>59<(4-)*NykmRp0%b1Zs5An&pkgu zT?k?hW);j#JvUuoNcgA%tUR%=311G~&SgH)?kS;DO-G*TTtIp>`eq4elev;<+xxd& z18I;dL%uf}o}Zwo^4b0#?Tt+6dH6IV@OCar^b_@0Rg$k5~mkexQWvRzDIhHE0OLiub~Q*st*RW^~{SYg`?2C z2$PeTx|=S7pH~a4zvPz7^i+Yl~-L+?TG9)P3K{b^Sp7-3DukWm<#aqyixw<8#$ z4^K+EGPr%8p@PXz=&I$>T`vjMOg01Nv?udjnFt+mM)nQE$LI$JVzDvj$s&5p_e~KU zZKC9sGQN5D%3{49E2Rt4;G0h1wR8xPk$9Gq$~&7*2_6$Qxq*RBJyTp7?6o*=W!^pf z!&SQW+jWLKiu5TpO;Ub$o`7|e(K;9-T2v<}sxK5k%F>Pvka%4QB#9hEag~0$b>j%* zPL=5nwU?)r4^Jy?>y=2k%LLRDeJ(U{M)EQVs(aAGLBF7sn{Onjs4!Q_hG?R@IXgs0 z+7l3ud6l;3j$| zLo?;`*aOi8$&Uo_@n8M~K24*HPJ$4=wVmp;qutw}sK%y}qKvf)ACk_cflJK>hUPzk2$0=u+=b&<0YijXMsgP(uw0>h zh_+A5J_lD+cDy&h1qfADE+-i*ZH0foVB+(2#8K6!wGB@VPS)da^$#oxK;SF9cwHy~ z7o%#8(VZF(PaSAH7gZm<-nxwel??l$s5^DZb1mz+$Yh8V0ft_F%zaorwqrUf#n3jM zk;H^whAIa$!f@Op_oXEtfUH6+*WubilC%yooxwYbOW0=KhdG%cc*Ax9;rDEokfxFv1lLBXYoNbxAVN;p zFoR*>g;%PuCfB3Mogm#@?+1uQDBvI`j^=JUy$XtcT65LP2&p=zn?q(At5rnEuIBsA z5Q^oUQt08?Mb3MNn=vk|N(@9|xB~-jd#gIsqg1B-rj8&#>3Kj$7GTNs(=0{CFGvlo z@PwflB`{sV5f0VfId4agc0G(1gsmB~d+Z!?0(f>a-h{CAj=lX8jdIbJw$tsxf0ckX zB9T=p9PgXvvJB>eJgTBE11B<+xFBMLc*PKS3lhYej0*;N-1{78RisEDxYP7Oo_0K% z9q3lhMH)PMiU=3b#zu8=T)G+oJIf0K&JTSSAI1if#vO%5dyeR)+@y&Sze~B2PM4!( zneIrMJ(K1!Gh(vh!=#==ouM9a;W&!8A)E?;WNuY&m_6u zp=$?|Zen1vZBegu7*3t&Qvq9kT4*|`%Q2gbV^nu%AW1}%ax;eSmZ$Fka+>iTx(mfs z{gG=%W}VE!lAjN$Sx-7o=Kj<~DzNS$CnMcnI|E5YD>g(8QJoGYo$4m5ci_wS zb3}rNmd`_26lo72-7!Qc!Y%WX@}sL2b+fvtWMpaAGlOyyF+;9rI+dll;)vG|h7mO! zI+f=qv>mvT;2GFcKT{yh7KiF4q)#zVI-w6KG-O4Kpohn;dc7Z7+VHQDwCr0qWo0}7 zbN~s0UWc*lZf>L?V6Y~7o=+=VWIl%TJQwrI@7k4BV=F0{Hg_BWGIv}j(_%2afL-UZ zlrLNY3#74;3zTe{@g&hBT&SQ1Rve{GP`#EQU4MJq6hUP3t|5WEtkC+F-`0B9jkiz) z`NTbB5S-j80RbpA>Jg3z%gGc~>e9QTnz;ayM&}UC2Yv#4e7?6$Sne9B(FTkz$H&40 zFm;s&lh+G}#DJ?}5boTw)`0*_+$Pb3NpFubG?A{6x+V5^ZU%>u9URAsb3E141#b^J z;!F#W9?ZwYZ7ClC>O`Rtg`JUZTS$_%fB~^81q|;A21vpJ0-*WPw$#d|U+6NK(o?Y{ z*74cxOB7~CP=tU9oKy($nk>s>%wobR?RQWlhlDZ-NoM7Py9=m3w3OaKg%_t$mI&{( zxKTRI zM>rYGdRH0PS0DvsKmh_lzCWn(Dop^qL-Cs3Q}-F*QnY4JM!WI7igB_{4gHjoy}liR zl&rJJ%c+D5>lWA`G2g@@YaYer-N~_wl$ILkn*D5h3`Ocqg9T`JbS`@Y9(&WIJWcxa zSF5Pn5k~pDE&z9a76z;}UYHC_tvGA-&iwL6Msc7)X?y49vi}L>pKPA1EH_`K3VcXb zvRI|W7&D+T>aH_%f`$N_pt@^z$AsR7>PaZW$$1ZfueBxP+~J=44XiUcs_>pl*+kG& zIs)R9wgB~%E9nL~DuR7r1Y&ZkKUA$@E*XtoI^KR7R_+lu1my3Wb^y#K*cAb7|5O}j z9O`+Q5}%df)!S8x{7A|Y>^N_;0Y40aAtI2$iG5)ajMNEFq2Yy7)WmABhxAAb>Wd?> zr z4*)%2(cv-#q$|nfnP&9WgKJ-ld5qIAD2*hl=6MYo_0W3Y`^pmeJv9SnxhP=&z2QO| zY=9buB^3i0a(@{@r-=;|u>uAGWO6nf2uA%g?hQarE+3>j3)&4wxGjow=>9l_GK`~P z(Qf~VLKHfoY&wU?kZ(nSN2G|1X#k;hK^k4UuxxjXcecu)a(t}8p{y{=$1e4;U=XHl zFrsKWw=mxO;pSdcM_R7k;ra@ec?>ogj04+p0t!RWZH&#bG%MUOp@WS?B$-!sXIU!*fB+j!zBPSEx3LL*%{mCi8!M6%j|-@}?V!(eV_au!Ilv%v|vq7wH+r z3OJCCEWqEV{vac(TOnYdEcWS2-)R>{44id3&r5&>!3VxK$!1|WDxypWS03(!PE1fXq@ z&ACk^e2Pw~TvrhEIA0ZzYgmdCL4+w+xLI(OJi(AT-^1uld#P&NNz@+%o68izlOthd z1qBU;bGUh_=zjnVO29(ycql(@T6paZ2kOps<~% z?Ph@KF1?%h?8KP{lCKLCV;k(r7XSgq2MkFS*_t>Seidb(ejg#ot0r;)5WB&hc7)sW zMK9dyH7YP*u_bui01~^5ppc83+b=us`#H*D6wy8~=P&p&IThZ!i+AMKjZ2%{0kh_o zuII6cUv${4c8>kv6!$g59Dhnyo**||Q=Tp(<#}GJR&HbSMUl_|FIuagRBGhh5e}hO z{9N3k>H<;@c1cT5r5Qmwjz|Cl0e;zqBwm2@uSh!b6IdParL*)$aEk0t+@XJ@NrF`! z_HypoGCg_DK$3gq{HB)FngqcmUNYZcf{r-0L(Jy@J3Ov16$69}z6)IU*Z3eLp}cAf zBM|%BJCY1Z%jl^SOHV(Iu^N(4o!*)K!VKkP5cc z-T=rp(CTj|LL|&Gk-@ffUYcK)od;V~!E#^ROC}nu4z!tqJxIH*fm_sA+>35;r`#tH zBaFcdV}T;z@_RO%7Ny4)AYeQaae>T7hl>z~{etJ%1uin+q6O&t1#bhqL1q}k`y_DN zy-k)Q0)y`Wce1@yUZ83kDQH8r@@PF26Ih@y1*fE_H%E~aK}5GP!-b`N_Lda91r|n4 zz@O<7b`-y{djt|_+2l11muez*t_3vQe1jGhAgQSD4!3vHq1FrHM&!L^c0+#Da7mPP z&OCAi*}-dY2Z5ZNtKZU}iA{Y*g3g}#V~m`?GbaDBs#z@Y>QhYake+^Qc#bAIG# zmV{nsZhzgkDe1U+vZiDVZ`>B4WF7Y65H=`YPq6?3uz(Cq6Z_2ZeXT>hr9dof3|)pa~Qd zi~qf5vJeuG1_S{#!|OH@Kh)ZZy_Mr)sXZL zO6FcJ1bjY-%m!@eeIK|7S!Hb!Uo4!zhBL;1X0z(E;{dqlxWt>RNZ*g6NZCa{1rCy$ zV6eKo)1_Pu6(-5B(*^9o2cwb?sFnSmKDR!?5<#1K#86x0T>vWrR%2b8^0_t}jtV5l`@D~|$`?jv5m*iQ9 z|El;Q{XI3>Y#49|;NRNqKhftx{;87eX8@!!}Wa4B>NJl3>>;!=a z&>dM$ssy?!q-ku*C?fN1qStcqtExg}BDhP9uB9g`9uX5YRsPTgALa(nEy%!W* z!SXWF+3b|5yoNh4&`q+_&#Im5CENgh>-Q<0js?YT_)1QuL9M& zOc4x3S5Fm4Xmqn|#>J$)^w-HE-^GAu2-7)8lZ5Q|>QIuQKS-&5*yMMUO5Pf5y9~_kh zM$|JM-Y$r9i#MuZ6*uR~AM~@;f0LWrQ!T;UCQh}1v3e@;9!I%pU`GKUUoDn*=(>V6 zpB*Gj`s?--Q8mT)sNz6Zo(R{#q7e{dklkTPF7QB{ZEDM)e)`0uAhzOZ40|)j-ITvX zwmC%2hc(fjMomXYNeW$9#pl*sgM|dGXyVBvp}MnxFacA6!o(|P_vSe3QwtuYJo7>y zDLgV$GAA9k7fUS>C6?ZSNze#-IV8eH98(-(@&g~SdvRm4XG06lN^fURg{-xBE|Y=R zCFThWh`Jm_5Yk!GjfcoUKm-NyvHnId({@Op6t@l4=J9n|vMJ;ySmV;J!VL0-e>#c$ zj^xn?%7~GFH{YCh2N4XPiMV$++B% znEEZ)y?To3F0d#RfJ_C3ulnWGTBPAqmLX?amM>K;ONn%nxO0T__DZPON>}<>D5uB$ zJ1PSOiXthK5d}Y)Ut55RlM3zvT}3^?a$*6fnQ&S{MQHIo(^6>$;7Mah+Se7#bhNiC?F@XW{ zXZLAdDg|jpY&m@}JOUlIqGI0qnan!@P(Z+5`G4M=${<%#mDPRSCaLcM9?>7aEzA|y z)!oh>StDlf|4VpCOB&dv-~RKp{v#Nt+AdYN@2n(0^&fxw*b|L!S!1i%SsImTH>&}c zSZ#>)by_Umu-rKWs=&)BiM@FqPLo{Rz|gga`KmCVmLUN;BVlO)m+jG*H~RpE7^#pj zU~6~x0DJ)tivvYv20PCS>K{$Hg2eCQ4)baGop3-zdqTRtC}3t4PQXty@Fs!X`qCWO z+lPJ)AQI|;wD4hRJ9~9y_h<{-Tg=HV5B0^=U>IWe@P`X0UKpyJ$)(TRR??Hf{c}H5 z#f-BPkcx)pO}#FCs`&O5&;+?C)6AN>ANO8_ZKVrZs#>em=~^CelJqSBEm0)soBr5o z%D`KVGMQ%2eM5zmgN(y20--C4R&ISEFyCnY2IThCyW8*kcVCr^xv1@q2ny;}Z+SQj zT{LqE|GGFrleS8Ib_zedpWy4oD|%gXnWpY|#rzPza~z0BwDuy9ax^kh5M?}LDt8fn z8=A?xeFvAg0l~oDviVmz~ZL;tl{TfKfb6ieT`>4{Z2B||wzwX_$7vT?1ehz;c zfqx&C(0qYO07rt=j^X{zZ#MAn->Q98#y?b5Xzy>M`2E+aK!5Q0a8D2S*h#Ay;xSTx zVJm;`ML-{)e?kJh#|8?FzrR-{2ZP)IEI7cCrM&k&@dG9UwY03Sf&ZU}rN29?3n`qs@6yT`x7Zozqpu3IsQHZ|2{1J{;aMIoU@wCw5{N3o+q%^ z5Tub7WeB!%;~lgs6e~{3QV-1UaCJ1-s??U~?X;6DG0Q}VOYH1Hrl3u~p)BZMC&_VT z?5)lQh9ja%9t3J`ix!m@g`Xzzl$$30y7hil$nX@xR(Pjnk>gIWYC$Y^qU@ph$tse5 zcNJ%W#eszYS)U8skXG9s^t3#^b$7jIgX_S1M$wQS;(CIxW5OSQRoadgn}wo7M60Md zlJahAkx9aNpBQeIw;6#LPL<~3>fFcvhHcP zU0JL&Gn79$sho$SP%Cn*Y~q!*_}(|uMY?#*vUXqipq&WV7B4g#03d?0X|Dd+tz$Nsjk(I^^vn#xnm#Nj_r?U={~c z2t<|o{X*y?A@YVDUILU*UeXF6y8xiz6ffVNz2)%m#ZnY^Z9KcqBhUy!4~KiONig8W z9xPsD-%Y8#%6#nvTT(0wQ$%VBH(4wleE?E5Nn z<`;WxvAUqbh3|Dk^D^`#Xdl1@8^;omJP zL`boV z4%ZZ5GtH&i(02fm1JYS?Bx#Ys#n9j?h69?~P2>i&6G%A>ZUGmazzDL+z7FIbB*W@z zl%2qce|pkLlWyU>r|X6o(az(72<>wRnG6FBcyeihEYfDPCNe+#Qnd43jt6rEJ{k6D zCt9ovx2wsGU2(?G>*f|3N+o3d7@(9zCEb6G{Vvu?T?F2pv zgi!D7s3ZZYa|bjzpxKFZr8GYESer`8WF^P@t#S_R4bcOz+^|%)6M#0Tp&+-L6BF18 zh=GW9k7d-l?lw^Ok2mnozblx-J3<3$4R<)QFpKPU6Kbi=g5$6!SUY=@RjR-)ge-~2T>zESl*>nA_{?3aQ?%=I7C>ume<`WJcZf8rwiZ&{xI%SHH; zpZpshu7CU@{8yIeU-DJ|8jJ9k-93MeMfexTp1=4a{BxG)-*yrHk%#Ml;v)RFL-YTx zMflH7_|GEzXA%Ch2>*qj{AUsVvk3oLg!_~KEW&>l;Vpvw@W=lL>bc&qJm>)cru$M$ literal 0 HcmV?d00001 diff --git a/test/python/wien2k/CaOs2_jbasis_full.sympar.gz b/test/python/wien2k/CaOs2_jbasis_full.sympar.gz new file mode 100644 index 0000000000000000000000000000000000000000..a9abae895ebdc9ec503081f756ee7264e54b54e6 GIT binary patch literal 7354 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 literal 0 HcmV?d00001 diff --git a/test/python/wien2k/CaOs2_mode1_full.indmftpr b/test/python/wien2k/CaOs2_mode1_full.indmftpr new file mode 100644 index 0000000..13e6507 --- /dev/null +++ b/test/python/wien2k/CaOs2_mode1_full.indmftpr @@ -0,0 +1,11 @@ +2 +1 2 +3 +complex +0 0 0 0 +0 0 0 0 +cubic +0 0 2 0 +0 0 0 0 +1 +-2.0 3.0 1 diff --git a/test/python/wien2k/CaOs2_mode2_full.ctqmcout.gz b/test/python/wien2k/CaOs2_mode2_full.ctqmcout.gz new file mode 100644 index 0000000000000000000000000000000000000000..38b1ece8c01ecc614fed3c4bb239d806e307cd0d GIT binary patch literal 21902 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 literal 0 HcmV?d00001 diff --git a/test/python/wien2k/CaOs2_mode2_full.indmftpr b/test/python/wien2k/CaOs2_mode2_full.indmftpr new file mode 100644 index 0000000..7732eb7 --- /dev/null +++ b/test/python/wien2k/CaOs2_mode2_full.indmftpr @@ -0,0 +1,11 @@ +2 +1 2 +3 +complex +0 0 0 0 +0 0 0 0 +cubic +0 0 2 0 +0 0 0 0 +1 +43 92 2 diff --git a/test/python/wien2k/CaOs2_partial.parproj.gz b/test/python/wien2k/CaOs2_partial.parproj.gz index 7b893c4986c8ea096e3aa8b8c2b91025cc64e811..65078188ca0626102591862c2ff94485eaebb143 100644 GIT binary patch delta 26167 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∨kp6!3X!JWg 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 G90CAliJ?gV literal 65216 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

XF+HS*zyTEwhDjHL{y`Fz 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%0DPKo8g<;gzIrFU@ly$&SWo?ue06uhF!B-AijTp3t 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\n' + '1\n1 0 0\n0 1 0\n0 0 1\n0 0 0 1\n' + '2\n1 0 0\n0 1 0\n0 0 1\n90 0 0 1\n') + _, _, refs = dp.read_dmftsym(path, rotloc=True) + assert len(refs) == 2 + np.testing.assert_allclose(refs[1]['a'], np.pi / 2, atol=1e-14, rtol=0) + + # A tiny but nonzero spin coupling must retain the full spinor basis. + theta = 1e-9 + basis = np.eye(6) + basis[0, 0] = basis[3, 3] = np.cos(theta) + basis[0, 3], basis[3, 0] = np.sin(theta), -np.sin(theta) + path = os.path.join(tmp, 'basis.dat') + with open(path, 'w') as fh: + for row in basis: + fh.write(' ' + ' '.join(f'{value:.17E} 0' for value in row).replace('E', 'D') + '\n') + transform, mixing = dp.read_fromfile(path, 1) + assert mixing and transform.shape == (6, 6) + np.testing.assert_array_equal(transform, basis.conjugate()) + + # Each correlated l with an explicit irep owns its own correps record. + path = os.path.join(tmp, 'multi.indmftpr') + with open(path, 'w') as fh: + fh.write('1\n1\n2\ncomplex\n0 2 2\n0 1 1\n1\n1\n1\n-2 3\n') + parsed = dp.read_indmftpr(path) + assert parsed['so'] == 1 and parsed['sorts'][0]['correlated_ls'] == [1, 2] + + # Selecting individual irreps is not implemented: do not silently export + # the entire shell in place of the requested correlated subspace. + with open(path, 'w') as fh: + fh.write('1\n1\n2\ncubic\n0 0 2\n0 0 2\n10\n1\n-2 3\n') + try: + dp.read_indmftpr(path) + except NotImplementedError as error: + assert 'irreducible' in str(error) + else: + raise AssertionError('split correlated shell was silently accepted') + + # The input lacks the cross overlaps needed for two local orbitals; + # the native implementation rejects this case as well. + path = os.path.join(tmp, 'multi.almblm') + with open(path, 'w') as fh: + fh.write('1\n1\n2\n0\n1\n2\n') + try: + dp.read_almblm(path, dict(nsort=1, lmax=0, mult=[1])) + except NotImplementedError as error: + assert 'local orbital' in str(error) + else: + raise AssertionError('multiple local orbitals were silently accepted') + print('wien2k_dmftproj_common: ok') diff --git a/test/python/wien2k/wien2k_outband_python.py b/test/python/wien2k/wien2k_outband_python.py index 823580b..a05fa66 100644 --- a/test/python/wien2k/wien2k_outband_python.py +++ b/test/python/wien2k/wien2k_outband_python.py @@ -80,6 +80,15 @@ def _check(case): outband.write_outband(os.path.join(tmp, case)) with gzip.open(os.path.join(HERE, f'{case}.outband.gz'), 'rt') as fh: _compare(os.path.join(tmp, f'{case}.outband'), fh.readlines()) + with open(os.path.join(tmp, f'{case}.klist_band'), 'w') as fh: + fh.write('GAMMA 0 0 0 8 2.0\nX 4 0 0 8 2.0\nEND\n') + assert outband.read_k_list(os.path.join(tmp, f'{case}.klist_band')) == (2, [(1, 'GAMMA'), (2, 'X')]) + try: + outband.write_outband(os.path.join(tmp, case)) + except ValueError as exc: + assert 'k-point counts differ' in str(exc) + else: + raise AssertionError('inconsistent band-path dimensions must be rejected') finally: shutil.rmtree(tmp) diff --git a/test/python/wien2k/wien2k_parproj_python.py b/test/python/wien2k/wien2k_parproj_python.py index fc13bad..f252ccc 100644 --- a/test/python/wien2k/wien2k_parproj_python.py +++ b/test/python/wien2k/wien2k_parproj_python.py @@ -41,11 +41,18 @@ def _compare(got_path, ref_lines): np.testing.assert_allclose(a, b, atol=1e-11, rtol=0, equal_nan=False) -def _check(case): +def _check(case, mode=0): tmp = tempfile.mkdtemp() try: shutil.copy(os.path.join(HERE, f'{case}.indmftpr'), os.path.join(tmp, f'{case}.indmftpr')) + if mode: + path = os.path.join(tmp, f'{case}.indmftpr') + with open(path) as fh: + lines = fh.read().splitlines() + lines[-1] = lines[-1] + ' 1' if mode == 1 else '60 76 2' + with open(path, 'w') as fh: + fh.write('\n'.join(lines) + '\n') shutil.copy(os.path.join(HERE, 'jbasis_d.dat'), os.path.join(tmp, 'jbasis_d.dat')) for ext in ('struct', 'dmftsym'): shutil.copy(os.path.join(HERE, f'CaOs2.{ext}'), @@ -73,6 +80,10 @@ def _check(case): _check('CaOs2_partial') _check('CaOs2_jbasis_full') +# All definitions select bands 60..76 here; the partial projectors and +# below-window density must match the native energy-window reference. +_check('CaOs2_partial', mode=1) +_check('CaOs2_partial', mode=2) print('wien2k_parproj_python: ok') From 024c556fae286b933fedf77adb561f3be81f9079 Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Thu, 22 Oct 2026 21:18:27 +0200 Subject: [PATCH 03/12] Share shell symmetry matrices and orbital descriptors in _dmftproj Move the identical _phase/_l0_matrix/_nonmixing_matrix/_shell_matrix of symqmc and sympar and the duplicated _build_orbs of ctqmcout and parproj into _dmftproj. Behaviour is unchanged. --- python/triqs_dftkit/wien2k/_dmftproj.py | 53 +++++++++++++++++++++++++ python/triqs_dftkit/wien2k/ctqmcout.py | 13 +----- python/triqs_dftkit/wien2k/parproj.py | 14 +------ python/triqs_dftkit/wien2k/sympar.py | 45 ++------------------- python/triqs_dftkit/wien2k/symqmc.py | 49 ++--------------------- 5 files changed, 63 insertions(+), 111 deletions(-) diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py index ed90268..9cc04e6 100644 --- a/python/triqs_dftkit/wien2k/_dmftproj.py +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -275,6 +275,59 @@ def mixing_rotrep(op, l, P, ti): return rotrep +# --- shell symmetry matrices (shared by symqmc and sympar) ------------------- + +def _phase(op, ti): + a, c = op['a'], op['c'] + return (c - a) if ti else (a + c) # (g-a) on magnetic ops, else (a+g) + + +def _l0_matrix(op, ti): + """s shell: 2x2 spin phase block diag(e, conj(e)) (outputqmc.f l==0).""" + e = np.exp(1j * _phase(op, ti) / 2) + return np.array([[e, 0], [0, np.conj(e)]], dtype=complex) + + +def _nonmixing_matrix(op, shell, ti): + """Non-mixing SP+SO whole shell: the up/up block scaled by +-(a+g)/2, + block-diagonal over spin, with the orbital time-reversal operator on the + magnetic operations (setsym.f, outputqmc.f:1292-1339).""" + l, P = shell['l'], shell['P'] + rotl = dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) + if ti: + rotl = timeinv_orbital(l, rotl) + rotrep = P @ rotl @ np.conj(P.T) + e = np.exp(1j * _phase(op, ti) / 2) + d = 2 * l + 1 + mat = np.zeros((2 * d, 2 * d), dtype=complex) + mat[:d, :d] = e * rotrep + mat[d:, d:] = np.conj(e) * rotrep + return mat + + +def shell_matrix(op, shell, ti): + """Spinor symmetry matrix for one shell under one operation.""" + l = shell['l'] + if l == 0: + return _l0_matrix(op, ti) + if shell['mixing']: + return mixing_rotrep(op, l, shell['P'], bool(ti)) + return _nonmixing_matrix(op, shell, ti) + + +def build_orbs(info): + """One entry per INCLUDED orbital (sort, l, atom order).""" + orbs = [] + for isort in range(1, info['nsort'] + 1): + sortinfo = info['sorts'][isort - 1] + for l in sortinfo['included_ls']: + for imu in range(1, info['mult'][isort - 1] + 1): + atom = sum(info['mult'][:isort - 1]) + imu + orbs.append(dict(atom=atom, sort=isort, l=l, + basis=sortinfo['basis'])) + return orbs + + # --- case.indmftpr ----------------------------------------------------------- def read_indmftpr(indmftpr): diff --git a/python/triqs_dftkit/wien2k/ctqmcout.py b/python/triqs_dftkit/wien2k/ctqmcout.py index 44e7fb1..2f50e77 100644 --- a/python/triqs_dftkit/wien2k/ctqmcout.py +++ b/python/triqs_dftkit/wien2k/ctqmcout.py @@ -60,7 +60,7 @@ from scipy.linalg.lapack import zheev from scipy.linalg.blas import zgemm -from ._dmftproj import (require_identity_struct, validate_so_windows, band_index_window, dmat, fmt_scalar, read_almblm, +from ._dmftproj import (build_orbs as _build_orbs, require_identity_struct, validate_so_windows, band_index_window, dmat, fmt_scalar, read_almblm, read_dmftsym, read_fromfile, read_indmftpr, reptrans, rotloc_rotl_so, select_band_window, select_window, tmat, write_row) @@ -100,17 +100,6 @@ def _build_crorbs(info): return crorbs -def _build_orbs(info): - orbs = [] - for isort in range(1, info['nsort'] + 1): - sortinfo = info['sorts'][isort - 1] - for l in sortinfo['included_ls']: - for imu in range(1, info['mult'][isort - 1] + 1): - atom = sum(info['mult'][:isort - 1]) + imu - orbs.append(dict(atom=atom, sort=isort, l=l)) - return orbs - - # --- Rloc spinor representation (set_rotloc.f / setsym.f) --------------------- def _rloc_rotrep(op, l, transmat): diff --git a/python/triqs_dftkit/wien2k/parproj.py b/python/triqs_dftkit/wien2k/parproj.py index fd97004..3c4465d 100644 --- a/python/triqs_dftkit/wien2k/parproj.py +++ b/python/triqs_dftkit/wien2k/parproj.py @@ -58,7 +58,7 @@ import os import numpy as np -from ._dmftproj import (require_identity_struct, validate_so_windows, band_index_window, dmat, mixing_rotrep, read_almblm, read_dmftsym, +from ._dmftproj import (build_orbs as _build_orbs, require_identity_struct, validate_so_windows, band_index_window, dmat, mixing_rotrep, read_almblm, read_dmftsym, read_fromfile, read_indmftpr, reptrans, rotloc_rotl_so, select_band_window, select_window, tmat, write_row) @@ -81,18 +81,6 @@ def _sqrtm_real_sym(O): # --- included orbital descriptors -------------------------------------------- -def _build_orbs(info): - orbs = [] - for isort in range(1, info['nsort'] + 1): - sortinfo = info['sorts'][isort - 1] - for l in sortinfo['included_ls']: - for imu in range(1, info['mult'][isort - 1] + 1): - atom = sum(info['mult'][:isort - 1]) + imu - orbs.append(dict(atom=atom, sort=isort, l=l, - basis=sortinfo['basis'])) - return orbs - - # --- s12 radial transform (set_projections.f:163-197) ------------------------ def _build_s12(l, isrt, n, spin): diff --git a/python/triqs_dftkit/wien2k/sympar.py b/python/triqs_dftkit/wien2k/sympar.py index 68e8ebc..9811196 100644 --- a/python/triqs_dftkit/wien2k/sympar.py +++ b/python/triqs_dftkit/wien2k/sympar.py @@ -49,9 +49,10 @@ import os import numpy as np -from ._dmftproj import (dmat, fmt, mixing_rotrep, read_dmftsym, read_fromfile, - read_indmftpr, reptrans, timeinv_orbital, tmat, - write_row) +from ._dmftproj import (fmt, read_dmftsym, read_fromfile, read_indmftpr, + reptrans, shell_matrix, tmat, write_row) + +_shell_matrix = shell_matrix # --- included shells --------------------------------------------------------- @@ -77,44 +78,6 @@ def _included_shells(info): return shells -# --- matrix construction (shared with symqmc) -------------------------------- - -def _phase(op, ti): - a, c = op['a'], op['c'] - return (c - a) if ti else (a + c) # (g-a) on magnetic ops, else (a+g) - - -def _l0_matrix(op, ti): - e = np.exp(1j * _phase(op, ti) / 2) - return np.array([[e, 0], [0, np.conj(e)]], dtype=complex) - - -def _nonmixing_matrix(op, shell, ti): - """Non-mixing SP+SO whole shell: the up/up block scaled by +-(a+g)/2, - block-diagonal over spin, with the orbital time-reversal operator on the - magnetic operations (setsym.f, outputqmc.f:1292-1339).""" - l, P = shell['l'], shell['P'] - rotl = dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) - if ti: - rotl = timeinv_orbital(l, rotl) - rotrep = P @ rotl @ np.conj(P.T) - e = np.exp(1j * _phase(op, ti) / 2) - d = 2 * l + 1 - mat = np.zeros((2 * d, 2 * d), dtype=complex) - mat[:d, :d] = e * rotrep - mat[d:, d:] = np.conj(e) * rotrep - return mat - - -def _shell_matrix(op, shell, ti): - l = shell['l'] - if l == 0: - return _l0_matrix(op, ti) - if shell['mixing']: - return mixing_rotrep(op, l, shell['P'], bool(ti)) - return _nonmixing_matrix(op, shell, ti) - - # --- output ------------------------------------------------------------------ def _write_matrix(f, mat): diff --git a/python/triqs_dftkit/wien2k/symqmc.py b/python/triqs_dftkit/wien2k/symqmc.py index 0e5a008..389047d 100644 --- a/python/triqs_dftkit/wien2k/symqmc.py +++ b/python/triqs_dftkit/wien2k/symqmc.py @@ -50,8 +50,10 @@ import numpy as np -from ._dmftproj import (dmat, mixing_rotrep, read_dmftsym, read_fromfile, - read_indmftpr, reptrans, timeinv_orbital) +from ._dmftproj import (read_dmftsym, read_fromfile, read_indmftpr, reptrans, + shell_matrix) + +_shell_matrix = shell_matrix # --- correlated shells ------------------------------------------------------- @@ -108,49 +110,6 @@ def write_symqmc(case): f.write(_format_matrix(_shell_matrix(op, sh, timeinv[isym]))) -def _shell_matrix(op, shell, ti): - """Spinor symmetry matrix for one correlated shell under one operation.""" - l = shell['l'] - if l == 0: - return _l0_matrix(op, ti) - if shell['mixing']: - return _mixing_matrix(op, shell, ti) - return _nonmixing_matrix(op, shell, ti) - - -def _phase(op, ti): - a, c = op['a'], op['c'] - return (c - a) if ti else (a + c) # (g-a) on magnetic ops, else (a+g) - - -def _l0_matrix(op, ti): - """s shell: 2x2 spin phase block diag(e, conj(e)) (outputqmc.f l==0).""" - e = np.exp(1j * _phase(op, ti) / 2) - return np.array([[e, 0], [0, np.conj(e)]], dtype=complex) - - -def _nonmixing_matrix(op, shell, ti): - """Spin-diagonal basis: the up/up block scaled by +-(a+g)/2, with the - orbital time-reversal operator on the magnetic operations.""" - l, P = shell['l'], shell['P'] - rotl = dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) - if ti: - rotl = timeinv_orbital(l, rotl) - rotrep = P @ rotl @ np.conj(P.T) - e = np.exp(1j * _phase(op, ti) / 2) - d = 2 * l + 1 - mat = np.zeros((2 * d, 2 * d), dtype=complex) - mat[:d, :d] = e * rotrep - mat[d:, d:] = np.conj(e) * rotrep - return mat - - -def _mixing_matrix(op, shell, ti): - """Spin-coupling basis: full 2(2l+1) spinor representation (setsym.f, - timeinv.f), shared with sympar via _dmftproj.mixing_rotrep.""" - return mixing_rotrep(op, shell['l'], shell['P'], bool(ti)) - - def _format_matrix(mat): out = [] for part in (mat.real, mat.imag): From 517ced1814d6efefc135a37bc6022c52c3f1fdf9 Mon Sep 17 00:00:00 2001 From: the-hampel Date: Fri, 23 Oct 2026 14:32:12 +0200 Subject: [PATCH 04/12] Drop unreachable non-spin-orbit paths from sympar and parproj again The shared-module rewrite brought back the branches removed in the sympar and parproj reviews: both writers still require the spin-orbit flag (and parproj both almblm spin files), so the ifSP/ifSO switches, the scalar l=0 and paramagnetic time-reversal tail in sympar, the single-file almblm branch and the conditional timeinv-flag write in parproj cannot take their alternative path. Also drops the unused norb and math import, an empty section header, and docstrings that still described single-precision cubic harmonics and a tetrahedron-weighted density matrix. outband reuses parproj._build_matn_rep and follows its new signature. Output is byte-identical for the partial (projection modes 0/1/2) and fromfile jbasis cases. --- python/triqs_dftkit/wien2k/outband.py | 2 +- python/triqs_dftkit/wien2k/parproj.py | 69 ++++++++++----------------- python/triqs_dftkit/wien2k/sympar.py | 59 ++++++----------------- 3 files changed, 42 insertions(+), 88 deletions(-) diff --git a/python/triqs_dftkit/wien2k/outband.py b/python/triqs_dftkit/wien2k/outband.py index 2dddae6..b8d592f 100644 --- a/python/triqs_dftkit/wien2k/outband.py +++ b/python/triqs_dftkit/wien2k/outband.py @@ -255,7 +255,7 @@ def write_outband(case): o, info, spins, windows, transmat, rot) else: matn_reps[(o['atom'], o['l'])] = _build_matn_rep( - o, info, spins, ns, windows, transmat, rot) + o, info, spins, windows, transmat, rot) # ---- write ---- with open(case + '.outband', 'w') as f: diff --git a/python/triqs_dftkit/wien2k/parproj.py b/python/triqs_dftkit/wien2k/parproj.py index 3c4465d..f30c346 100644 --- a/python/triqs_dftkit/wien2k/parproj.py +++ b/python/triqs_dftkit/wien2k/parproj.py @@ -39,8 +39,9 @@ LO-overlap token ovl_LO_udot (set_projections.f:163-197). All n radial channels are written separately (the ir loop). -3. Three extra per-orbital blocks: the BZ-symmetrized, tetrahedron-weighted, - Rloc-rotated density matrix densmat (density.f + symmetrize_mat + rotdens_mat), +3. Three extra per-orbital blocks: the BZ-symmetrized, point-integrated + (per-k weight), Rloc-rotated density matrix densmat + (density.f + symmetrize_mat + rotdens_mat), the per-orbital Rloc spinor rotrep (set_rotloc.f), and a time-reversal flag. The reference case CaOs2 is SP+SO (ifSP=ifSO=1, ns=2), so every per-orbital @@ -54,7 +55,6 @@ rot_dens.f / setsym.f / set_rotloc.f for the symmetrization and Rloc rotation. """ -import math import os import numpy as np @@ -63,10 +63,10 @@ rotloc_rotl_so, select_band_window, select_window, tmat, write_row) -def _op_timeinv(op, ifSO): +def _op_timeinv(op): det2 = (op['krotm'][0, 0] * op['krotm'][1, 1] - op['krotm'][0, 1] * op['krotm'][1, 0]) - return bool(ifSO and det2 < 0.0) + return bool(det2 < 0.0) def _sqrtm_real_sym(O): @@ -79,8 +79,6 @@ def _sqrtm_real_sym(O): return (D1 @ Z.T).real -# --- included orbital descriptors -------------------------------------------- - # --- s12 radial transform (set_projections.f:163-197) ------------------------ def _build_s12(l, isrt, n, spin): @@ -100,21 +98,15 @@ def _build_s12(l, isrt, n, spin): # --- srot rotrep (setsym.f) -------------------------------------------------- -def _srot_rotrep_nonmixing(op, l, transmat, ifSP, ifSO): +def _srot_rotrep_nonmixing(op, l, transmat): """srot(isym)%rotrep(l,isrt)%mat, the (2l+1) up/up block of the symmetry op in the new basis: transmat . D(R)_{lm} . transmat^H, with the orbital time-reversal operator applied for the magnetic (timeinv) operations. Returns (rotrep[2l+1,2l+1], timeinv, phase).""" a, b, g, iprop = op['a'], op['b'], op['g'], op['iprop'] - krotm = op['krotm'] - det2 = krotm[0, 0] * krotm[1, 1] - krotm[0, 1] * krotm[1, 0] - if ifSP and ifSO: - timeinv = det2 < 0.0 - phase = (g - a) if timeinv else (a + g) - else: - timeinv = False - phase = 0.0 + timeinv = _op_timeinv(op) + phase = (g - a) if timeinv else (a + g) rotl = dmat(l, a, b, g, float(iprop)) rotrep = transmat @ rotl @ np.conj(transmat.T) if timeinv: @@ -151,7 +143,7 @@ def _rotloc_rotrep_so(orb, ops, info, ref, transmat, mixing): # --- projector matn_rep (set_projections.f Theta path) ----------------------- -def _build_matn_rep(orb, info, spins, ns, windows, transmat, rot): +def _build_matn_rep(orb, info, spins, windows, transmat, rot): """matn_rep[(ik, is)] -> (2l+1, nbsel, n): the raw radial-normalized Theta projector with the local rotation and the basis transform applied per radial channel (non-mixing SP+SO path, set_projections.f:591-621).""" @@ -164,8 +156,7 @@ def _build_matn_rep(orb, info, spins, ns, windows, transmat, rot): if not incl: continue nbsel = nb_top - nb_bot + 1 - for ispin in range(ns): - sp = spins[ispin] + for ispin, sp in enumerate(spins): kp = sp['kp'][ik] off_bot = nb_bot - kp['nbmin'] off_top = nb_top - kp['nbmin'] @@ -279,7 +270,7 @@ def _rotdens_densmat_mixing(blk, rotrep_loc, timeinv): # --- density matrix (density.f Theta path, non-mixing SP+SO) ----------------- -def _orbital_densmat_blocks(orb, info, spins, ns, windows, matn_reps): +def _orbital_densmat_blocks(orb, info, spins, windows, matn_reps): """The nsp=4 raw density-matrix blocks (up/up, dn/dn, up/dn, dn/up) for one orbital, point-integrated with the geometric k-weight (density.f:889-907, tetr=.FALSE. path). The window is the bands below e_bot (dmftproj.f:798).""" @@ -311,8 +302,7 @@ def _orbital_densmat_blocks(orb, info, spins, ns, windows, matn_reps): return blocks -def _symmetrize_densmat(orbs, info, ops, nsym, srot_rotreps, dens_raw, ns, - ifSP, ifSO): +def _symmetrize_densmat(orbs, ops, nsym, srot_rotreps, dens_raw): """symmetrize_mat for the non-mixing SP+SO path (symmetrize_mat.f:196-276). dens_raw[(atom, l)] -> [4 blocks]. Returns symmetrized blocks per shell. @@ -340,7 +330,7 @@ def _symmetrize_densmat(orbs, info, ops, nsym, srot_rotreps, dens_raw, ns, is_ = iss if iss <= 2 else iss - 2 isp = is_ - 1 tmp = dens_raw[(iatom, l)][iss - 1].copy() - if ifSP and timeinv: + if timeinv: tmp = np.conj(tmp) ephase = 1.0 if iss == 3: @@ -386,21 +376,15 @@ def write_parproj(case): require_identity_struct(case) nsym, ops, rotloc_ref = read_dmftsym(case + '.dmftsym', rotloc=True) - up, dn = case + '.almblmup', case + '.almblmdn' - if os.path.exists(up) and os.path.exists(dn): - spin_files = [up, dn] - else: - spin_files = [case + '.almblm'] - ifSP = len(spin_files) == 2 - ifSO = bool(info['so']) - ns = 2 if ifSP else 1 + spin_files = [case + '.almblmup', case + '.almblmdn'] + if not all(os.path.exists(p) for p in spin_files): + raise ValueError('spin-orbit parproj requires both up and down almblm files') spins = [read_almblm(p, info, projectors=True) for p in spin_files] nk = spins[0]['nk'] info['nk'] = nk orbs = _build_orbs(info) - norb = len(orbs) # Two band ranges (dmftproj.f:798,836): the energy window [e_bot, e_top] # for the written Theta projector (block A), and the bands below e_bot @@ -457,9 +441,9 @@ def write_parproj(case): o, info, spins, below_windows, transmat, rot) else: matn_reps[(o['atom'], o['l'])] = _build_matn_rep( - o, info, spins, ns, windows, transmat, rot) + o, info, spins, windows, transmat, rot) matn_reps_full[(o['atom'], o['l'])] = _build_matn_rep( - o, info, spins, ns, below_windows, transmat, rot) + o, info, spins, below_windows, transmat, rot) # ---- rotloc rotrep per orbital ---- rotloc_rotrep = {} @@ -480,12 +464,12 @@ def write_parproj(case): l, isrt = o['l'], o['sort'] for isym in range(nsym): srot_rotreps[(l, isrt, isym)] = _srot_rotrep_nonmixing( - ops[isym], l, transmats[(l, isrt)], ifSP, ifSO) + ops[isym], l, transmats[(l, isrt)]) dens_raw = {(o['atom'], o['l']): _orbital_densmat_blocks( - o, info, spins, ns, below_windows, matn_reps_full) + o, info, spins, below_windows, matn_reps_full) for o in nonmix_orbs} - dens_sym = _symmetrize_densmat(nonmix_orbs, info, ops, nsym, - srot_rotreps, dens_raw, ns, ifSP, ifSO) + dens_sym = _symmetrize_densmat(nonmix_orbs, ops, nsym, + srot_rotreps, dens_raw) for o in nonmix_orbs: rotrep_loc, timeinv = rotloc_rotrep[(o['atom'], o['l'])] densprint[(o['atom'], o['l'])] = _rotdens_densmat( @@ -499,7 +483,7 @@ def write_parproj(case): for (l, sort), group in mixing_groups.items(): rotreps = [] for op in ops: - ti = _op_timeinv(op, ifSO) + ti = _op_timeinv(op) rotreps.append((mixing_rotrep(op, l, transmats[(l, sort)], ti), ti)) raw = {o['atom']: _orbital_densmat_mixing( o, info, spins, below_windows, matn_reps_full) for o in group} @@ -533,11 +517,11 @@ def write_parproj(case): for m in range(2 * (2 * l + 1)): write_row(f, P[m, :].imag) continue - for ispin in range(ns): + for ispin in range(2): P = matn_reps[(atom, l)][(ik, ispin)][:, :, ir] for mi in range(2 * l + 1): write_row(f, P[mi, :].real) - for ispin in range(ns): + for ispin in range(2): P = matn_reps[(atom, l)][(ik, ispin)][:, :, ir] for mi in range(2 * l + 1): write_row(f, P[mi, :].imag) @@ -555,5 +539,4 @@ def write_parproj(case): write_row(f, rotrep_loc[m, :].real) for m in range(2 * (2 * l + 1)): write_row(f, rotrep_loc[m, :].imag) - if ifSP: - f.write('%6d\n' % (1 if timeinv else 0)) + f.write('%6d\n' % (1 if timeinv else 0)) diff --git a/python/triqs_dftkit/wien2k/sympar.py b/python/triqs_dftkit/wien2k/sympar.py index 9811196..d8e2865 100644 --- a/python/triqs_dftkit/wien2k/sympar.py +++ b/python/triqs_dftkit/wien2k/sympar.py @@ -38,19 +38,16 @@ sympar drops three things symqmc/ctqmcout carry: no orbital-description block at the top, no ifsplit/irep sub-block selection (always the full matrix), and no crorb%ifSOat/correp metadata. It is purely group-theoretic: header, perms, -optional timeflag line (ifSP), the representation matrices, and (only when -.not.ifSP) a paramagnetic time-reversal operator per orbital. +timeflag line, and the representation matrices. -This reference case (CaOs2) is SP+SO: indmftpr SO flag=1 sets ifSO, and -ifSO=>ifSP, so it exercises the non-mixing 2*(2l+1)=10-wide block-diag spinor -path and writes the timeflag line; the paramagnetic tail is absent. +Only the spin-orbit case is implemented (indmftpr SO flag=1, which implies +ifSP): 2*(2l+1)-wide spinor matrices with the timeflag line. The non-SO layouts +(scalar l=0 entries, paramagnetic time-reversal tail) raise +NotImplementedError. The reference case is CaOs2 (SP+SO). """ -import os -import numpy as np - -from ._dmftproj import (fmt, read_dmftsym, read_fromfile, read_indmftpr, - reptrans, shell_matrix, tmat, write_row) +from ._dmftproj import (read_dmftsym, read_fromfile, read_indmftpr, reptrans, + shell_matrix, write_row) _shell_matrix = shell_matrix @@ -61,8 +58,7 @@ def _included_shells(info): """One entry per INCLUDED shell (l_inc in {1,2}), one per atom of its sort, in orb order (sort, l, atom). Each shell carries l, basis name, a mixing flag and the transform P: a spin-coupling fromfile basis gives the full - 2(2l+1) P (P spinrot P^dag matrix), otherwise the (2l+1) up/up block (the - single-precision-cast cubic harmonics dmftproj writes).""" + 2(2l+1) P (P spinrot P^dag matrix), otherwise the (2l+1) up/up block.""" shells = [] for isort in range(info['nsort']): s = info['sorts'][isort] @@ -88,55 +84,30 @@ def _write_matrix(f, mat): def write_sympar(case): - """Write .sympar from .dmftsym, .indmftpr, .struct. + """Write .sympar from .dmftsym and .indmftpr. - Detects ifSP/ifSO from the presence of .almblm{up,dn} and the indmftpr - SO flag, exactly as oubwin/symqmc/ctqmcout. For SP+SO the file carries the - timeflag line and 2*(2l+1)-wide block-diag spinor matrices; the paramagnetic - time-reversal tail is written only when .not.ifSP.""" + Spin-orbit only (indmftpr SO flag=1, implying ifSP): writes the timeflag + line and the 2*(2l+1)-wide spinor matrices.""" info = read_indmftpr(case + '.indmftpr') if not info['so']: raise NotImplementedError('non-spin-orbit sympar is not implemented yet') - shells, so = _included_shells(info), info['so'] + shells = _included_shells(info) nsym, ops = read_dmftsym(case + '.dmftsym') natom = len(ops[0]['perm']) - ifSP = os.path.exists(case + '.almblmup') and os.path.exists(case + '.almblmdn') - ifSO = bool(so) - ifSP = ifSP or ifSO # ifSO => ifSP - timeflag = [] for op in ops: det2 = (op['krotm'][0, 0] * op['krotm'][1, 1] - op['krotm'][0, 1] * op['krotm'][1, 0]) - timeflag.append(1 if (ifSO and det2 < 0.0) else 0) + timeflag.append(1 if det2 < 0.0 else 0) with open(case + '.sympar', 'w') as f: f.write('%6d %6d\n' % (nsym, natom)) for op in ops: f.write(''.join('%6d ' % p for p in op['perm']) + '\n') - if ifSP: - f.write(''.join('%6d ' % t for t in timeflag) + '\n') + f.write(''.join('%6d ' % t for t in timeflag) + '\n') for isym, op in enumerate(ops): + ti = bool(timeflag[isym]) for sh in shells: - l = sh['l'] - ti = bool(timeflag[isym]) - if l == 0 and not (ifSP and ifSO): - f.write(fmt(1.0) + '\n') - f.write(fmt(0.0) + '\n') - continue _write_matrix(f, _shell_matrix(op, sh, ti)) - - if not ifSP: - for sh in shells: - l = sh['l'] - if l == 0: - f.write(fmt(1.0) + '\n') - f.write(fmt(0.0) + '\n') - continue - tm = tmat(l) - op = sh['P'] @ tm @ sh['P'].T - ident = np.eye(2 * l + 1, dtype=complex) - time_op = op @ np.conj(ident) - _write_matrix(f, time_op) From 28dbafac4e8722a51221ed1eeb689a407ce8ea04 Mon Sep 17 00:00:00 2001 From: the-hampel Date: Fri, 23 Oct 2026 14:37:26 +0200 Subject: [PATCH 05/12] Test band-mode projectors for a non-mixing basis The only band fixture used the spin-mixing fromfile basis, so the non-mixing projector branch of write_outband never ran and a wrong call signature there went unnoticed. CaOs2_band_cubic reuses the band inputs with a cubic Os d shell and an uncorrelated Ca d shell; its reference is native dmftproj -so -sp -band output (full-precision cubic-d template), matched to 2.4e-15. --- test/python/wien2k/CaOs2_band_cubic.indmftpr | 12 ++++++++++++ test/python/wien2k/CaOs2_band_cubic.outband.gz | Bin 0 -> 84192 bytes test/python/wien2k/wien2k_outband_python.py | 17 ++++++++++++----- 3 files changed, 24 insertions(+), 5 deletions(-) create mode 100644 test/python/wien2k/CaOs2_band_cubic.indmftpr create mode 100644 test/python/wien2k/CaOs2_band_cubic.outband.gz diff --git a/test/python/wien2k/CaOs2_band_cubic.indmftpr b/test/python/wien2k/CaOs2_band_cubic.indmftpr new file mode 100644 index 0000000..7452996 --- /dev/null +++ b/test/python/wien2k/CaOs2_band_cubic.indmftpr @@ -0,0 +1,12 @@ +2 +1 2 +3 +complex +0 0 1 0 +0 0 0 0 +cubic +0 0 2 0 +0 0 0 0 +1 +-2.0 3.0 +0.6529001225 diff --git a/test/python/wien2k/CaOs2_band_cubic.outband.gz b/test/python/wien2k/CaOs2_band_cubic.outband.gz new file mode 100644 index 0000000000000000000000000000000000000000..2201443dbf0a8867bfec64c40cbd68336d3e85ae GIT binary patch literal 84192 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 literal 0 HcmV?d00001 diff --git a/test/python/wien2k/wien2k_outband_python.py b/test/python/wien2k/wien2k_outband_python.py index a05fa66..64b8138 100644 --- a/test/python/wien2k/wien2k_outband_python.py +++ b/test/python/wien2k/wien2k_outband_python.py @@ -22,6 +22,10 @@ # the plotted path, is read from CaOs2_band.klist_band; the Fermi energy is the # last line of CaOs2_band.indmftpr (the band almblm keeps a placeholder eferm # record that the reader skips). +# +# CaOs2_band_cubic runs the same band inputs with a cubic (spin-diagonal) Os d +# shell and an uncorrelated included Ca d shell, covering the non-mixing +# projector path; its reference is native dmftproj -band output. import gzip import os @@ -63,19 +67,21 @@ def _isfloat(tok): return False -def _check(case): +def _check(case, inputs=None): + inputs = inputs or case tmp = tempfile.mkdtemp() try: - for ext in ('indmftpr', 'klist_band'): - shutil.copy(os.path.join(HERE, f'{case}.{ext}'), - os.path.join(tmp, f'{case}.{ext}')) + shutil.copy(os.path.join(HERE, f'{case}.indmftpr'), + os.path.join(tmp, f'{case}.indmftpr')) + shutil.copy(os.path.join(HERE, f'{inputs}.klist_band'), + os.path.join(tmp, f'{case}.klist_band')) shutil.copy(os.path.join(HERE, 'jbasis_d.dat'), os.path.join(tmp, 'jbasis_d.dat')) for ext in ('struct', 'dmftsym'): shutil.copy(os.path.join(HERE, f'CaOs2.{ext}'), os.path.join(tmp, f'{case}.{ext}')) for ext in ('almblmup', 'almblmdn'): - _gunzip(os.path.join(HERE, f'{case}.{ext}.gz'), + _gunzip(os.path.join(HERE, f'{inputs}.{ext}.gz'), os.path.join(tmp, f'{case}.{ext}')) outband.write_outband(os.path.join(tmp, case)) with gzip.open(os.path.join(HERE, f'{case}.outband.gz'), 'rt') as fh: @@ -94,5 +100,6 @@ def _check(case): _check('CaOs2_band') +_check('CaOs2_band_cubic', inputs='CaOs2_band') print('wien2k_outband_python: ok') From 270eccd38cb2ec974fed7c89d08c81a9bf1b2aaf Mon Sep 17 00:00:00 2001 From: the-hampel Date: Tue, 27 Oct 2026 10:40:24 +0100 Subject: [PATCH 06/12] Describe behaviour instead of history in dmftproj port comments Module docstrings and test headers referred to the precision-fix PR, legacy float32 templates and dft_tools issue numbers; several test headers still stated single-precision references compared at 1e-6/1e-7 while the tests compare at 1e-11 against native double-precision output (verified: the symqmc .npy references equal native dmftproj output exactly). The reptrans cast flag reproduced the old float32 template and was used only by its own test, so it goes too. --- python/triqs_dftkit/wien2k/_dmftproj.py | 22 +++++++------------ python/triqs_dftkit/wien2k/ctqmcout.py | 4 ++-- python/triqs_dftkit/wien2k/parproj.py | 3 +-- python/triqs_dftkit/wien2k/sympar.py | 3 +-- python/triqs_dftkit/wien2k/symqmc.py | 12 +++++----- test/python/wien2k/wien2k_ctqmcout_python.py | 14 ++++++------ .../wien2k/wien2k_dmftproj_common_python.py | 7 ++---- test/python/wien2k/wien2k_outband_python.py | 4 ++-- test/python/wien2k/wien2k_parproj_python.py | 3 ++- test/python/wien2k/wien2k_sympar_python.py | 5 ++--- test/python/wien2k/wien2k_symqmc_mixing.py | 10 ++++----- 11 files changed, 36 insertions(+), 51 deletions(-) diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py index 9cc04e6..cd0b3ac 100644 --- a/python/triqs_dftkit/wien2k/_dmftproj.py +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -29,10 +29,9 @@ proj_mode==0 band-window selection and the gfortran-style real formatters. This module owns each of those exactly once. -All generators use the exact double-precision cubic harmonics. dmftproj reads -the same coefficients from full-precision SRC_templates (the precision-fix PR), -so the port reproduces its output to machine precision. `reptrans` keeps a -`cast` flag only to reproduce the legacy single-precision template on demand. +All generators use the exact double-precision cubic harmonics; with +full-precision SRC_templates dmftproj reads the same coefficients, so the port +reproduces its output to machine precision. """ import math @@ -97,9 +96,7 @@ def read_two_complex(r): # --- angular bases: transmat = , m = -l..l -------------------------- -# Standard cubic harmonics, Wien2k convention, exact double precision. dmftproj -# reads the same coefficients from full-precision SRC_templates (the precision- -# fix PR); `reptrans(..., cast=True)` reproduces the legacy float32 template. +# Standard cubic harmonics, Wien2k convention, exact double precision. _COMPLEX = {l: np.eye(2 * l + 1, dtype=complex) for l in range(4)} @@ -115,14 +112,11 @@ def read_two_complex(r): } -def reptrans(basis, l, cast=False): - """transmat = , exact double-precision cubic harmonics. dmftproj - reads these from full-precision SRC_templates (the precision-fix PR), so the - port uses the exact analytic values. A complex basis is the exact identity. - `cast` is retained for callers that still want the legacy float32 truncation.""" +def reptrans(basis, l): + """transmat = : the exact double-precision cubic harmonics for a + cubic basis, the identity for a complex basis.""" if basis == 'cubic' and l in _CUBIC: - c = _CUBIC[l] - return c.astype(np.complex64).astype(np.complex128) if cast else c + return _CUBIC[l] if basis == 'cubic' and l != 0: raise NotImplementedError('cubic f harmonics are not implemented yet') return _COMPLEX[l] diff --git a/python/triqs_dftkit/wien2k/ctqmcout.py b/python/triqs_dftkit/wien2k/ctqmcout.py index 2f50e77..aac711b 100644 --- a/python/triqs_dftkit/wien2k/ctqmcout.py +++ b/python/triqs_dftkit/wien2k/ctqmcout.py @@ -50,8 +50,8 @@ (set_rotloc.f / setsym.f). ctqmcout layout is outputqmc.f:66-613. The cubic transform uses the exact -analytic harmonics; with the precision-fixed dmftproj (full double precision -templates and KIND=8 casts) the port reproduces case.ctqmcout to machine +analytic harmonics; against a dmftproj with double-precision casts and +full-precision templates the port reproduces case.ctqmcout to machine precision on a full-rank window. """ diff --git a/python/triqs_dftkit/wien2k/parproj.py b/python/triqs_dftkit/wien2k/parproj.py index f30c346..fd74118 100644 --- a/python/triqs_dftkit/wien2k/parproj.py +++ b/python/triqs_dftkit/wien2k/parproj.py @@ -47,8 +47,7 @@ The reference case CaOs2 is SP+SO (ifSP=ifSO=1, ns=2), so every per-orbital matrix is the full 2*(2l+1)=10 spin+orbital block. The exact cubic transmat and the rot_projectmat local rotation are applied to matn_rep before writing, -exactly as in ctqmcout (dmftproj reads the same full-precision templates after -the precision fix). +exactly as in ctqmcout. outputqmc.f parproj writer: 897-1183. set_projections.f s12/projector: 163-197/273-622. density.f Theta path: 588-915. symmetrize_mat.f / diff --git a/python/triqs_dftkit/wien2k/sympar.py b/python/triqs_dftkit/wien2k/sympar.py index d8e2865..493fb2d 100644 --- a/python/triqs_dftkit/wien2k/sympar.py +++ b/python/triqs_dftkit/wien2k/sympar.py @@ -31,8 +31,7 @@ crorb(1:ncrorb). The orb ordering is (sort, l, atom) per dmftproj.f:357-387. The per-shell basis transmat is per sort: a complex shell uses the exact -identity, a cubic shell uses the exact double-precision cubic-d harmonics (the -same full-precision templates dmftproj reads after the precision fix), as +identity, a cubic shell uses the exact double-precision cubic-d harmonics, as ctqmcout does. Mixed within one file (Ca complex, Os cubic for CaOs2). sympar drops three things symqmc/ctqmcout carry: no orbital-description block diff --git a/python/triqs_dftkit/wien2k/symqmc.py b/python/triqs_dftkit/wien2k/symqmc.py index 389047d..524d9e0 100644 --- a/python/triqs_dftkit/wien2k/symqmc.py +++ b/python/triqs_dftkit/wien2k/symqmc.py @@ -41,11 +41,9 @@ 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. Legacy 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. +All matrices are built in double precision from the exact cubic harmonics. +A case.symqmc written by a dmftproj that casts the basis or the spin phases +through single-precision CMPLX differs from this output at about 1e-7. """ import numpy as np @@ -62,7 +60,7 @@ def _correlated_shells(info): """One entry per correlated atom (l_inc==2), in sort order. Each shell carries l, basis name, its transform matrix P = and a mixing flag (True for a spin-coupling fromfile basis). symqmc builds its symmetry - matrices from the EXACT cubic harmonics (no single-precision cast).""" + matrices from the exact cubic harmonics.""" shells = [] for isort in range(info['nsort']): s = info['sorts'][isort] @@ -71,7 +69,7 @@ def _correlated_shells(info): if basis == 'fromfile': P, mixing = read_fromfile(s['sourcefile'], l) else: - P, mixing = reptrans(basis, l, cast=False), False + P, mixing = reptrans(basis, l), False for _ in range(info['mult'][isort]): shells.append(dict(l=l, basis=basis, P=P, mixing=mixing)) return shells diff --git a/test/python/wien2k/wien2k_ctqmcout_python.py b/test/python/wien2k/wien2k_ctqmcout_python.py index 5c129f7..dad20fd 100644 --- a/test/python/wien2k/wien2k_ctqmcout_python.py +++ b/test/python/wien2k/wien2k_ctqmcout_python.py @@ -6,24 +6,24 @@ # Verify the pure-Python case.ctqmcout generator (triqs_dftkit.wien2k.ctqmcout) # reproduces the dmftproj Fortran correlated-shell projectors to machine # precision: regenerate case.ctqmcout from the almblm/struct/dmftsym + a wide -# energy window and compare to the precision-fixed dmftproj reference. +# energy window and compare to the native dmftproj reference. # # The window (-2.0, 3.0) keeps 50 bands, more than the 20 correlated spin-orbitals -# of the two SOC Os d shells, so the Loewdin overlap O is full rank. -# Reference built with the precision-fixed dmftproj (#14) and full-precision -# templates. The original narrow window is not a valid Loewdin oracle. +# of the two SOC Os d shells, so the Loewdin overlap O is full rank. The +# references are native dmftproj output with double-precision casts and a +# full-precision cubic-d template. # # CaOs2_jbasis_full exercises the spin-mixing fromfile (|j, m_j>) path: the Os d # shell is a 2(2l+1)=10 spinor basis (jbasis_d.dat), so the projector, Rloc -# rotrep and complex-harmonics transform blocks are the full mixing matrices the -# dft_tools #148 path singles out. Same wide window for the full-rank Loewdin. +# rotrep and complex-harmonics transform blocks are the full mixing matrices. +# Same wide window for the full-rank Loewdin. # # CaOs2_mode1_full and CaOs2_mode2_full exercise the band-index projection modes # (set_projections.f:70-88). Mode 1 ("-2.0 3.0 1") scans all spins/k for the # global band-index window; mode 2 ("43 92 2") takes the indices straight from # the window line. Both resolve to bands 43..92 (50 bands > 20 correlated # spin-orbitals), so the Loewdin overlap stays full rank and the projectors -# match the precision-fixed dmftproj to machine precision. +# match the native dmftproj to machine precision. import gzip import os diff --git a/test/python/wien2k/wien2k_dmftproj_common_python.py b/test/python/wien2k/wien2k_dmftproj_common_python.py index 1d41f9a..21705f9 100644 --- a/test/python/wien2k/wien2k_dmftproj_common_python.py +++ b/test/python/wien2k/wien2k_dmftproj_common_python.py @@ -40,16 +40,13 @@ def _reader(text): assert a == complex(3.0, -4.0) and b == complex(5.0, 6.0) -# --- angular basis: cubic transform, with and without the float32 cast ------- +# --- angular basis: cubic transform ------------------------------------------- -exact = dp.reptrans('cubic', 2, cast=False) -cast = dp.reptrans('cubic', 2, cast=True) +exact = dp.reptrans('cubic', 2) assert exact.shape == (5, 5) # unitary assert np.max(np.abs(exact @ np.conj(exact.T) - np.eye(5))) < 1e-12 -# the cast truncates 1/sqrt2 to single precision (legacy constructor rounding) assert abs(abs(exact[1, 0]) - 2 ** -0.5) < 1e-15 -assert 0 < abs(abs(cast[1, 0]) - 2 ** -0.5) < 1e-6 assert dp.reptrans('complex', 2).shape == (5, 5) assert np.allclose(dp.reptrans('complex', 2), np.eye(5)) diff --git a/test/python/wien2k/wien2k_outband_python.py b/test/python/wien2k/wien2k_outband_python.py index 64b8138..064e511 100644 --- a/test/python/wien2k/wien2k_outband_python.py +++ b/test/python/wien2k/wien2k_outband_python.py @@ -6,8 +6,8 @@ # Verify the pure-Python case.outband generator (triqs_dftkit.wien2k.outband) # reproduces the dmftproj Fortran band-structure projectors to machine # precision: regenerate case.outband from the band-mode almblm/struct/dmftsym, -# the k-path (klist_band) and the band indmftpr, and compare to the -# precision-fixed dmftproj -band reference. +# the k-path (klist_band) and the band indmftpr, and compare to the native +# dmftproj -band reference (full-precision cubic-d template). # # case.outband feeds convert_bands_input. It is the band analog of # case.ctqmcout: the same correlated-shell projector construction (raw Alm/Clm diff --git a/test/python/wien2k/wien2k_parproj_python.py b/test/python/wien2k/wien2k_parproj_python.py index f252ccc..3e42067 100644 --- a/test/python/wien2k/wien2k_parproj_python.py +++ b/test/python/wien2k/wien2k_parproj_python.py @@ -9,7 +9,8 @@ # an uncorrelated Ca d-shell. Inputs are the shared CaOs2 almblm/struct/dmftsym # renamed to the CaOs2_partial case. # -# Floats compared at 1e-7 (dmftproj single-precision basis-transform floor). +# Floats compared at 1e-11 against native dmftproj output (full-precision +# cubic-d template). import gzip import os diff --git a/test/python/wien2k/wien2k_sympar_python.py b/test/python/wien2k/wien2k_sympar_python.py index 9431dd9..d79866b 100644 --- a/test/python/wien2k/wien2k_sympar_python.py +++ b/test/python/wien2k/wien2k_sympar_python.py @@ -9,9 +9,8 @@ # an uncorrelated Ca d-shell to the correlated Os d-shells. Inputs are the shared # CaOs2 almblm/struct/dmftsym renamed to the CaOs2_partial case. # -# Floats compared at 1e-7: dmftproj stores the cubic basis transform through a -# single-precision CMPLX cast, so its matrices carry ~1e-7 noise the double- -# precision generator reproduces to the same floor. +# Floats compared at 1e-11 against native dmftproj output (full-precision +# cubic-d template). import gzip import os diff --git a/test/python/wien2k/wien2k_symqmc_mixing.py b/test/python/wien2k/wien2k_symqmc_mixing.py index da6850e..39225f4 100644 --- a/test/python/wien2k/wien2k_symqmc_mixing.py +++ b/test/python/wien2k/wien2k_symqmc_mixing.py @@ -11,11 +11,9 @@ # - an l = 0 (s) correlated shell, the 2x2 spin phase block. # # Both reuse the CaOs2 symmetry input (16 operations, 8 of them time-reversal). -# The reference is the dmftproj Fortran case.symqmc for the same input, stored as -# the matrix data in single precision: dmftproj reads the fromfile basis with a -# single-precision CMPLX cast (set_ang_trans.f), so its output there carries a -# ~1e-7 error. The generator is full double precision, so we compare at 1e-6 and -# separately assert each Python spinor matrix is unitary. +# The reference is the matrix data of the dmftproj case.symqmc for the same +# input, stored in double precision and compared at 1e-11; each Python spinor +# matrix is separately checked for unitarity. import os import shutil @@ -73,7 +71,7 @@ def _check(indmftpr, ref_npy, extra=(), unit_tol=1e-7): assert dev < unit_tol, ('not unitary', dev) -# spin-mixing |j, m_j> basis: the path dft_tools #148 singles out +# spin-mixing |j, m_j> basis data, shells, _, _ = _run('CaOs2_jbasis.indmftpr', (('jbasis_d.dat', 'jbasis_d.dat'),)) assert shells[0]['mixing'] and shells[0]['P'].shape == (10, 10) From 6cf9119524af671d8791c5ebd491c5832931ecd9 Mon Sep 17 00:00:00 2001 From: the-hampel Date: Tue, 27 Oct 2026 10:43:38 +0100 Subject: [PATCH 07/12] Treat an empty band-index window as no bands In projection modes 1/2 the window below the projection range is (1, b_bot - 1), clamped to (nbmin, ...). Once b_bot <= nbmin that range is empty or inverted, but select_band_window still reported it included, so ctqmcout added a negative band count to qbbot (-1 instead of 0 for "0 92 2") and parproj failed on a negative array dimension. An empty clamped range is now not included, like an empty energy window. ctqmcout then matches native dmftproj (CaOs2_mode2_below reference); native parproj writes uninitialised density matrices in this case, so parproj is covered through the shared window unit test. --- python/triqs_dftkit/wien2k/_dmftproj.py | 9 +++++---- .../python/wien2k/CaOs2_mode2_below.ctqmcout.gz | Bin 0 -> 41238 bytes test/python/wien2k/CaOs2_mode2_below.indmftpr | 11 +++++++++++ test/python/wien2k/wien2k_ctqmcout_python.py | 4 +++- .../wien2k/wien2k_dmftproj_common_python.py | 5 ++++- 5 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 test/python/wien2k/CaOs2_mode2_below.ctqmcout.gz create mode 100644 test/python/wien2k/CaOs2_mode2_below.indmftpr diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py index cd0b3ac..780073c 100644 --- a/python/triqs_dftkit/wien2k/_dmftproj.py +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -540,12 +540,13 @@ def select_window(nbmin, nbmax, eband, e1, e2): def select_band_window(nbmin, nbmax, b_bot, b_top): """proj_mode 1/2 band-index selection for one k-point (set_projections.f - 70-88). e1/e2 are band indices, not energies: every k-point is included, - nb_bot = b_bot clamped up to nbmin (strict INT(e1) > nbmin), nb_top = b_top - clamped down to nbmax. Returns (included=True, nb_bot, nb_top).""" + 70-88). b_bot/b_top are band indices, not energies: nb_bot = b_bot clamped + up to nbmin (strict INT(e1) > nbmin), nb_top = b_top clamped down to nbmax. + Returns (included, nb_bot, nb_top); included is False when the clamped + range is empty (nb_top < nb_bot), which contributes no bands.""" nb_bot = b_bot if b_bot > nbmin else nbmin nb_top = b_top if b_top < nbmax else nbmax - return True, nb_bot, nb_top + return nb_bot <= nb_top, nb_bot, nb_top def band_index_window(info, spins): diff --git a/test/python/wien2k/CaOs2_mode2_below.ctqmcout.gz b/test/python/wien2k/CaOs2_mode2_below.ctqmcout.gz new file mode 100644 index 0000000000000000000000000000000000000000..49d68ac8818a192c2f0636e6cdbc7767469ab047 GIT binary patch literal 41238 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 20 correlated # spin-orbitals), so the Loewdin overlap stays full rank and the projectors -# match the native dmftproj to machine precision. +# match the native dmftproj to machine precision. CaOs2_mode2_below ("0 92 2") +# puts b_bot below nbmin, so no bands lie below the window and qbbot is zero. import gzip import os @@ -80,6 +81,7 @@ def _check(case): _check('CaOs2_jbasis_full') _check('CaOs2_mode1_full') # proj_mode 1: band-index window 43..92 _check('CaOs2_mode2_full') # proj_mode 2: explicit band indices 43 92 +_check('CaOs2_mode2_below') # proj_mode 2 with b_bot below nbmin print('wien2k_ctqmcout_python: ok') diff --git a/test/python/wien2k/wien2k_dmftproj_common_python.py b/test/python/wien2k/wien2k_dmftproj_common_python.py index 21705f9..af99aea 100644 --- a/test/python/wien2k/wien2k_dmftproj_common_python.py +++ b/test/python/wien2k/wien2k_dmftproj_common_python.py @@ -72,11 +72,14 @@ def _reader(text): # --- band-index window (proj_mode 1/2) --------------------------------------- -# set_projections.f:70-88: every k included, indices clamped to nbmin/nbmax. +# set_projections.f:70-88: indices clamped to nbmin/nbmax. incl, lo, hi = dp.select_band_window(1, 92, 60, 76) assert incl and lo == 60 and hi == 76 incl, lo, hi = dp.select_band_window(50, 80, 43, 92) # clamp both ends assert incl and lo == 50 and hi == 80 +# the below-window (1, b_bot - 1) is empty once b_bot <= nbmin +assert not dp.select_band_window(5, 92, 1, 4)[0] +assert not dp.select_band_window(1, 92, 1, -1)[0] # proj_mode 2 takes b_bot/b_top straight from the (rounded) window line. m2 = {'proj_mode': 2, 'e_bot': 43.0, 'e_top': 92.0} From ae6fc6c05d8e1c070de14f512966faf0c0d5a194 Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Tue, 27 Oct 2026 17:18:28 +0100 Subject: [PATCH 08/12] Document projector modes and native template precision --- doc/ChangeLog.md | 1 + test/python/wien2k/CaOs2.README.md | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/doc/ChangeLog.md b/doc/ChangeLog.md index be9ffd0..e4a01d6 100644 --- a/doc/ChangeLog.md +++ b/doc/ChangeLog.md @@ -12,6 +12,7 @@ this section to the version number when the next release is cut. * Run DMFT on the irreducible Brillouin zone: `convert_dft_input(use_ibz=...)` reduces the data to the irreducible k-points, sets `symm_op = 1` and writes the correlated-shell symmetry operations (real-harmonic rotations for `l = 0, 1, 2` and atom permutations, built from the space group in `vaspout.h5`) to `dft_symmcorr_input`, so that DFTTools and ModEST restore the full-BZ average by symmetrization. Enabled by default when VASP used symmetry and `vaspout.h5` holds the symmetry data, and only when it is known to work: correlated shells with `l <= 2`, a symmetry-closed orbital set with an orthonormal `TRANSFORM`, all equivalent atoms projected, no spin-orbit coupling, and the symmetrized IBZ occupation and local levels reproduce the full grid within `ibz_tol` (1e-3). Otherwise the converter falls back to the full grid with a note; `use_ibz=True` raises instead. The VASP `Driver` passes `use_ibz` through for CSC runs ### Wien2k +* Add pure-Python band-mode projectors, projection modes 1/2, and custom `fromfile` bases, including spin-mixing bases, to the Wien2k projector generators * Read the high-symmetry k-path labels from the end of `case.outband` and store them as `kpts_labels` / `kpts_labels_idx` in `dft_bands_input`, matching the VASP band conversion ### test diff --git a/test/python/wien2k/CaOs2.README.md b/test/python/wien2k/CaOs2.README.md index 8f6ed1b..53144ef 100644 --- a/test/python/wien2k/CaOs2.README.md +++ b/test/python/wien2k/CaOs2.README.md @@ -93,3 +93,17 @@ The Python generator uses exact cubic d coefficients and double-precision phases; its generated matrices are checked for unitarity at `1e-12`. It writes only into a temporary directory, so the converter tests always read the original native fixture. + +## Double-precision generator references + +The separate generator comparisons in `wien2k_ctqmcout_python.py`, +`wien2k_parproj_python.py`, `wien2k_sympar_python.py` and +`wien2k_outband_python.py` use the precision-corrected native producer. +Their cubic-d references require a full-precision `case.cf_d_eg_t2g` in +`$WIENROOT/SRC_templates`. Replace the eight-digit `0.70710678` coefficients +with `0.70710678118654752440` (preserving their signs and all other entries) +before regenerating those references. The Python cubic basis uses the same +double-precision coefficients. The eight-digit template can leave differences +of about `7e-9`, exceeding the generator tests' absolute tolerance of `1e-11`. +This requirement applies to the full-rank generator references; retain the +original template when reproducing the historical converter fixture above. From 6d24ba961c87054708ce1c8e28c6bf6716c9e928 Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Tue, 27 Oct 2026 17:25:47 +0100 Subject: [PATCH 09/12] Parse band-mode projector inputs in memory --- python/triqs_dftkit/wien2k/_dmftproj.py | 24 ++++++++++------- python/triqs_dftkit/wien2k/outband.py | 26 +++++-------------- .../wien2k/wien2k_dmftproj_common_python.py | 12 +++++++-- test/python/wien2k/wien2k_outband_python.py | 5 +++- 4 files changed, 36 insertions(+), 31 deletions(-) diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py index 780073c..0da152c 100644 --- a/python/triqs_dftkit/wien2k/_dmftproj.py +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -49,9 +49,11 @@ class Reader: common case: every almblm logical record fits on one line). `skip()` consumes one physical line unconditionally, matching READ('()').""" - def __init__(self, path): - with open(path) as fh: - self._lines = fh.read().splitlines() + def __init__(self, path, *, lines=None): + if lines is None: + with open(path) as fh: + lines = fh.read().splitlines() + self._lines = lines self._i = 0 def skip(self): @@ -324,15 +326,19 @@ def build_orbs(info): # --- case.indmftpr ----------------------------------------------------------- -def read_indmftpr(indmftpr): +def read_indmftpr(indmftpr, *, lines=None): """Full structured parse of case.indmftpr. Returns a dict with nsort, mult, lmax, the spin-orbit flag `so`, the energy window (e_bot, e_top, proj_mode) and one `sorts` entry per atomic sort with its basis name, optional fromfile sourcefile path, and the correlated / included l lists (l_inc==2 / l_inc in {1,2}). Every generator derives its - shell or orbital list from this one parse.""" - raw = [l.split('!')[0].strip() for l in open(indmftpr)] + shell or orbital list from this one parse. Optional lines replace the file + contents; relative basis paths still resolve beside indmftpr.""" + if lines is None: + with open(indmftpr) as fh: + lines = fh.readlines() + raw = [l.split('!')[0].strip() for l in lines] raw = [l for l in raw if l != ''] nsort = int(raw[0].split()[0]) mult = [int(x) for x in raw[1].split()][:nsort] @@ -426,7 +432,7 @@ def read_dmftsym(path, rotloc=False): # --- almblm parsing ---------------------------------------------------------- -def read_almblm(path, info, projectors=False): +def read_almblm(path, info, projectors=False, *, lines=None): """Read one spin's almblm file in the dmftproj.f read order. With projectors=False keep only the header (elecn, nk, nloat, eferm), the @@ -437,14 +443,14 @@ def read_almblm(path, info, projectors=False): With projectors=True also accumulate the per-(l,m) Alm/Blm/Clm coefficients in the canonical Wien2k packing lm = l*l + (m+l), for every atom of every - sort (ctqmcout/parproj).""" + sort (ctqmcout/parproj). Optional lines replace the file contents.""" nsort = info['nsort'] lmax = info['lmax'] mult = info['mult'] nlm = (lmax + 1) ** 2 natom = sum(mult) - r = Reader(path) + r = Reader(path, lines=lines) elecn = to_float(r.record()[0]) nk = int(r.record()[0]) r.record() # nloat diff --git a/python/triqs_dftkit/wien2k/outband.py b/python/triqs_dftkit/wien2k/outband.py index b8d592f..e16f302 100644 --- a/python/triqs_dftkit/wien2k/outband.py +++ b/python/triqs_dftkit/wien2k/outband.py @@ -48,7 +48,6 @@ """ import os -import tempfile import numpy as np from scipy.linalg.blas import zgemm @@ -63,18 +62,12 @@ def _read_indmftpr_band(indmftpr): """case.indmftpr in band mode: the standard parse, plus the Fermi energy appended as the last physical line after the (e_bot e_top proj_mode) window line. The trailing scalar would be mistaken for the window line, so feed - read_indmftpr the file without that record and return eferm separately.""" - raw = [l.split('!')[0].rstrip('\n') for l in open(indmftpr)] + read_indmftpr the lines without that record and return eferm separately.""" + with open(indmftpr) as fh: + raw = [l.split('!')[0].rstrip('\n') for l in fh] nonblank = [i for i, l in enumerate(raw) if l.strip() != ''] eferm = to_float(raw[nonblank[-1]].split()[0]) - tmp = tempfile.NamedTemporaryFile('w', suffix='.indmftpr', delete=False, - dir=os.path.dirname(os.path.abspath(indmftpr))) - tmp.write('\n'.join(raw[:nonblank[-1]]) + '\n') - tmp.close() - try: - info = read_indmftpr(tmp.name) - finally: - os.unlink(tmp.name) + info = read_indmftpr(indmftpr, lines=raw[:nonblank[-1]]) return info, eferm @@ -83,15 +76,10 @@ def _read_almblm_band(path, info, eferm): record is a placeholder the band path ignores; the Fermi shift uses the eferm passed in (from case.indmftpr, dmftproj.f:576-581). read_almblm reads the 4th record as eferm, so overwrite that record with the indmftpr value.""" - text = open(path).read().splitlines() + with open(path) as fh: + text = fh.read().splitlines() text[3] = ' %.16E' % eferm # Reader record 4 (physical line index 3) - tmp = tempfile.NamedTemporaryFile('w', suffix='.almblm', delete=False) - tmp.write('\n'.join(text) + '\n') - tmp.close() - try: - return read_almblm(tmp.name, info, projectors=True) - finally: - os.unlink(tmp.name) + return read_almblm(path, info, projectors=True, lines=text) def read_k_list(path): diff --git a/test/python/wien2k/wien2k_dmftproj_common_python.py b/test/python/wien2k/wien2k_dmftproj_common_python.py index af99aea..50c6770 100644 --- a/test/python/wien2k/wien2k_dmftproj_common_python.py +++ b/test/python/wien2k/wien2k_dmftproj_common_python.py @@ -109,9 +109,17 @@ def _reader(text): assert nsym == 16 and len(ops) == 16 assert all(o['krotm'].shape == (3, 3) and len(o['perm']) == 3 for o in ops) -# Atomic sorts and symmetry operations are independent counts (P1 can have -# many inequivalent atoms but only the identity operation). with tempfile.TemporaryDirectory() as tmp: + path = os.path.join(tmp, 'noso.indmftpr') + with open(path, 'w') as fh: + fh.write('1\n1\n1\ncomplex\n0 2\n0 0\n0\n' + '-2.0 3.0 2 ! band window\n') + parsed = dp.read_indmftpr(path) + assert parsed['so'] == 0 + assert (parsed['e_bot'], parsed['e_top'], parsed['proj_mode']) == (-2.0, 3.0, 2) + + # Atomic sorts and symmetry operations are independent counts (P1 can have + # many inequivalent atoms but only the identity operation). path = os.path.join(tmp, 'P1.dmftsym') with open(path, 'w') as fh: fh.write('1\n1 2\nSym. op. 1\n0 0 0 1\n' diff --git a/test/python/wien2k/wien2k_outband_python.py b/test/python/wien2k/wien2k_outband_python.py index 064e511..7b70d51 100644 --- a/test/python/wien2k/wien2k_outband_python.py +++ b/test/python/wien2k/wien2k_outband_python.py @@ -31,6 +31,7 @@ import os import shutil import tempfile +from unittest.mock import patch import numpy as np from triqs_dftkit.wien2k import outband @@ -83,7 +84,9 @@ def _check(case, inputs=None): for ext in ('almblmup', 'almblmdn'): _gunzip(os.path.join(HERE, f'{inputs}.{ext}.gz'), os.path.join(tmp, f'{case}.{ext}')) - outband.write_outband(os.path.join(tmp, case)) + # Band parsing must also work without writable temporary storage. + with patch('tempfile.NamedTemporaryFile', side_effect=AssertionError('temporary file created')): + outband.write_outband(os.path.join(tmp, case)) with gzip.open(os.path.join(HERE, f'{case}.outband.gz'), 'rt') as fh: _compare(os.path.join(tmp, f'{case}.outband'), fh.readlines()) with open(os.path.join(tmp, f'{case}.klist_band'), 'w') as fh: From 729d71bf4cc8acfd57fd653ee0b8e54fb233c3ef Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Tue, 27 Oct 2026 17:27:13 +0100 Subject: [PATCH 10/12] Fix and verify cubic-p magnetic symmetry basis changes --- .repo-hygiene-allow | 1 + python/triqs_dftkit/wien2k/_dmftproj.py | 5 +++- test/python/wien2k/CaOs2_pcubic.indmftpr | 11 +++++++++ test/python/wien2k/CaOs2_pcubic.symqmc.gz | Bin 0 -> 1851 bytes test/python/wien2k/wien2k_symqmc_mixing.py | 27 ++++++++++++++++++--- 5 files changed, 40 insertions(+), 4 deletions(-) create mode 100644 .repo-hygiene-allow create mode 100644 test/python/wien2k/CaOs2_pcubic.indmftpr create mode 100644 test/python/wien2k/CaOs2_pcubic.symqmc.gz diff --git a/.repo-hygiene-allow b/.repo-hygiene-allow new file mode 100644 index 0000000..86f9197 --- /dev/null +++ b/.repo-hygiene-allow @@ -0,0 +1 @@ +test/python/wien2k/CaOs2_pcubic.symqmc.gz Native dmftproj cubic-p regression output from the published CaOs2 inputs retained in this repository. diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py index 0da152c..766d5f3 100644 --- a/python/triqs_dftkit/wien2k/_dmftproj.py +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -292,7 +292,10 @@ def _nonmixing_matrix(op, shell, ti): rotl = dmat(l, op['a'], op['b'], op['c'], float(op['iprop'])) if ti: rotl = timeinv_orbital(l, rotl) - rotrep = P @ rotl @ np.conj(P.T) + # Antiunitary basis changes conjugate the source coefficients. + rotrep = P @ rotl @ P.T + else: + rotrep = P @ rotl @ np.conj(P.T) e = np.exp(1j * _phase(op, ti) / 2) d = 2 * l + 1 mat = np.zeros((2 * d, 2 * d), dtype=complex) diff --git a/test/python/wien2k/CaOs2_pcubic.indmftpr b/test/python/wien2k/CaOs2_pcubic.indmftpr new file mode 100644 index 0000000..2cb0501 --- /dev/null +++ b/test/python/wien2k/CaOs2_pcubic.indmftpr @@ -0,0 +1,11 @@ +2 +1 2 +3 +complex +0 0 0 0 +0 0 0 0 +cubic +0 2 0 0 +0 0 0 0 +1 +-2.0 3.0 diff --git a/test/python/wien2k/CaOs2_pcubic.symqmc.gz b/test/python/wien2k/CaOs2_pcubic.symqmc.gz new file mode 100644 index 0000000000000000000000000000000000000000..ce1b94c74185774bde2c0aaa29951b481eae2092 GIT binary patch literal 1851 zcmZ9Mc~lbU8ph4kG&PsZOv5FNvT|QS9B4=fMbR=`0@I{0H-wv-4sMm2<H3wsu&{7q=Ho{fbme*@|bj?Dy(njM|xAVb(!Bs#QRqs3s5+~zUO49x< zd*7dyuv&p#qffFcnd|+!%=KT&xc<9qrSRz#H|Fzk%nz4khfv4j$S$$a=pJZzofOT_ zNu(wlUrc_uR7Gbm^}=p8K%*#0@Vo5jzJuY;k4!4stG+howuQpg?)+;O2R#m#8ve36 zdZ=(r+_jyP$_PF@^i3kiaf_j)_X;`+#brwlPkNiM&z|yCEwB9v@A*CdY<8#N?198jC`a;Ng}NDe*G%6^l4u9 zE!Lkto#85VQs5tw#q`v>WmuyL#BP_XKEB_VLDc3{)Bs9z;ff>_YAOCHC_ISK55iEB!#EU> zV{3`GolkwnG$CYCJLdADp25kxG@O!k2 zptvFRkbovHP65b`;cSJCh)EogeomWt;G(&@j1GmBIgMiE&DUPcsIbckQTiyG#Tsgh zpr4@1paU(A8Qk})aBn% zN0x?I#IWkelxmIIwiAEb@!D_4W+N>*(JZsDBujJ!I^zVtw;MDSGKxnJtOQjY1<{xV znIQ=@Fki>6t>Cj~QBP7Uiogv5A?y|B=2}rCebFaL$Y@g#=_x(&s^RqLfZJKj zyEaa#Ckg=_FEumf_*&#V)LlS_Enh2pJMQ;C*ueS6ayu`$K0>mA;60sIFsFS+RyMde zg?_y2mH+;;?^E{GresXtI3Me}7ZRNK*Ts)A*#9haF$TYA6ga$6o3ehnXL8$SUx@G{ z2J4Kr*1#AU0h4||P2-L0?j*>sqdm6|5?v1^-n#Q+ua_-4fimwMZkd+*ah{iY2hd$r z1Sa1?o>UVkn4kCQ95GGuh)WleD8Wou{dyw7CX;+dXFgPW|4r^3?ubmDovLluC^@lz z=3MUaJ@oZo1v)MWc{3+>IuaW5{~M)egB zo;|1ixp=lipH`ArUFr#cXNSyc_)R%)RtUmW`B^^DTRLcOt?7LoHn?hhHNUk5hFFCS zMx^gk>P$eYb-Q3>HU33!f!(_3C++JGPqkxXwB7QoI!(>bg)J4131Q&BgJAKmzs&cTBwK>bN^>52)Wh73LoBmiC<(<;@5fc474cAwbe3eR z^&64+C(xX?0e!tOmNtB83o4P5f~R~Mj4+Cki!U5oh(?H%BG|`b=xp7sCaJ_z49CBK zEsy|P#9e+k^-Bk&@*TX)CB)fw!Gf}RS&3f_c@1 z*GaR1^W=p_d$75&uK+M7YxbiS;l=uU-^zM??OysnG$l{|kX_KmLfpIF)az+a#a$i1 z>6SBSWu=X>{|^HX`F}g}awPi`IVOu!~nykU2v_)4(Le0tHA~==uwdgG zg$@^yeRLy&>PTF|q&|=Tzse{N38ap;8<1W5CgE_HKn8Y)4+IQe;wqkHA z3pliX`U-6sVQG!bk>02Vg^LE;O@haSBJuvma!?kq`kA~Plb3iz?gK#83d8N?UAb+@ z*Ye$pC}dwsL$VS}(>5bYWyFf12W$t(%-Z#A1#BF%HYG^2t8e1fWPiGdbQD=ryAA+Z z$3;0`zk`vr1Uql@3SE4kjU$Z=FT>RmpZ7VpIb|dZ`nqHWkh-(^OC1?I0RFG$ga(lR T2?849tK8Y;p-`_WIl2D;%S)H| literal 0 HcmV?d00001 diff --git a/test/python/wien2k/wien2k_symqmc_mixing.py b/test/python/wien2k/wien2k_symqmc_mixing.py index 39225f4..9702446 100644 --- a/test/python/wien2k/wien2k_symqmc_mixing.py +++ b/test/python/wien2k/wien2k_symqmc_mixing.py @@ -3,18 +3,20 @@ # (GPL-3.0-or-later) ################################################################################ -# Verify the pure-Python case.symqmc generator on the two paths the spin-diagonal +# Verify the pure-Python case.symqmc generator on the paths the spin-diagonal # cubic test (wien2k_symqmc_python) does not exercise: # # - a spin-mixing fromfile basis (the |j, m_j> basis), which uses the full # 2(2l+1) spinor representation and the spinor time-reversal operator; # - an l = 0 (s) correlated shell, the 2x2 spin phase block. +# - cubic p harmonics, including the complex basis change of magnetic operations. # -# Both reuse the CaOs2 symmetry input (16 operations, 8 of them time-reversal). +# These reuse the CaOs2 symmetry input (16 operations, 8 of them time-reversal). # The reference is the matrix data of the dmftproj case.symqmc for the same # input, stored in double precision and compared at 1e-11; each Python spinor # matrix is separately checked for unitarity. +import gzip import os import shutil import tempfile @@ -34,7 +36,7 @@ def _matrix_data(symqmc_path, nsym, natom): return np.array([float(x) for x in toks]) -def _run(indmftpr, extra=()): +def _run(indmftpr, extra=(), ref_gz=None): """Generate case.symqmc in a scratch dir from the shared CaOs2 symmetry input and the given indmftpr, returning (matrix data, shells, ops, so).""" tmp = tempfile.mkdtemp() @@ -49,6 +51,16 @@ def _run(indmftpr, extra=()): shells, so = symqmc._read_correlated_shells( case + '.indmftpr', case + '.struct') natom = len(ops[0]['perm']) + if ref_gz is not None: + got = open(case + '.symqmc').read().split() + with gzip.open(os.path.join(HERE, ref_gz), 'rt') as fh: + ref = fh.read().split() + header = 2 + nsym * natom + nsym + assert len(got) == len(ref) + assert [int(x) for x in got[:header]] == [int(x) for x in ref[:header]] + np.testing.assert_allclose(np.array(got[header:], dtype=float), + np.array(ref[header:], dtype=float), + atol=1e-11, rtol=0, equal_nan=False) return _matrix_data(case + '.symqmc', nsym, natom), shells, ops, so finally: shutil.rmtree(tmp) @@ -64,6 +76,10 @@ def _check(indmftpr, ref_npy, extra=(), unit_tol=1e-7): ref = np.load(os.path.join(HERE, ref_npy)) assert data.shape == ref.shape, (data.shape, ref.shape) assert np.max(np.abs(data - ref)) < 1e-11, np.max(np.abs(data - ref)) + _check_unitary(shells, ops, so, unit_tol) + + +def _check_unitary(shells, ops, so, unit_tol): for op in ops: for sh in shells: mat = symqmc._shell_matrix(op, sh, _timeinv(op, so)) @@ -83,4 +99,9 @@ def _check(indmftpr, ref_npy, extra=(), unit_tol=1e-7): assert shells[0]['l'] == 0 _check('CaOs2_l0.indmftpr', 'wien2k_symqmc_l0.ref.npy', unit_tol=1e-12) +# Cubic p basis: full native header, all operations and both correlated atoms. +_, shells, ops, so = _run('CaOs2_pcubic.indmftpr', ref_gz='CaOs2_pcubic.symqmc.gz') +assert all(sh['l'] == 1 and not sh['mixing'] for sh in shells) +_check_unitary(shells, ops, so, unit_tol=1e-12) + print('wien2k_symqmc_mixing: ok') From b296c9519382a64bf7e322ad375495aa422778e9 Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Tue, 27 Oct 2026 17:28:07 +0100 Subject: [PATCH 11/12] Trim trailing whitespace in band-window references --- test/python/wien2k/CaOs2_mode1.oubwindn | 2 +- test/python/wien2k/CaOs2_mode1.oubwinup | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/python/wien2k/CaOs2_mode1.oubwindn b/test/python/wien2k/CaOs2_mode1.oubwindn index 778773d..97fdd85 100644 --- a/test/python/wien2k/CaOs2_mode1.oubwindn +++ b/test/python/wien2k/CaOs2_mode1.oubwindn @@ -2,4 +2,4 @@ 1 1 60 76 - 1.0000000000000000 + 1.0000000000000000 diff --git a/test/python/wien2k/CaOs2_mode1.oubwinup b/test/python/wien2k/CaOs2_mode1.oubwinup index 778773d..97fdd85 100644 --- a/test/python/wien2k/CaOs2_mode1.oubwinup +++ b/test/python/wien2k/CaOs2_mode1.oubwinup @@ -2,4 +2,4 @@ 1 1 60 76 - 1.0000000000000000 + 1.0000000000000000 From 52fde5d94eed11378e61c6180086fcdafc448aa9 Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Tue, 27 Oct 2026 17:30:27 +0100 Subject: [PATCH 12/12] Clarify generator coverage and precision comments --- python/triqs_dftkit/wien2k/_dmftproj.py | 4 ++-- test/python/wien2k/CMakeLists.txt | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py index 766d5f3..c4db637 100644 --- a/python/triqs_dftkit/wien2k/_dmftproj.py +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -21,12 +21,12 @@ """Shared dmftproj machinery for the pure-Python case.* generators. -The five generators (symqmc, oubwin, ctqmcout, sympar, parproj) reproduce +The generators (symqmc, oubwin, ctqmcout, sympar, parproj, outband) reproduce different outputs of the dmftproj Fortran executable but draw on the same underlying pieces: the list-directed almblm reader, the Fortran real/complex token parsers, the Wigner-D rotation in the dmftproj convention, the angular basis transforms (transmat), the case.indmftpr / case.dmftsym parsers, the -proj_mode==0 band-window selection and the gfortran-style real formatters. +band-window selection and the gfortran-style real formatters. This module owns each of those exactly once. All generators use the exact double-precision cubic harmonics; with diff --git a/test/python/wien2k/CMakeLists.txt b/test/python/wien2k/CMakeLists.txt index 18fb4e1..f94fffa 100644 --- a/test/python/wien2k/CMakeLists.txt +++ b/test/python/wien2k/CMakeLists.txt @@ -37,9 +37,8 @@ add_test(NAME Py_wien2k_symqmc_python set_property(TEST Py_wien2k_symqmc_python APPEND PROPERTY ENVIRONMENT PYTHONPATH=${PROJECT_BINARY_DIR}/python:$ENV{PYTHONPATH} ${SANITIZER_RT_PRELOAD}) -# Generator on the two paths the cubic test does not reach: the spin-mixing -# fromfile (|j,m_j>) basis and an l=0 shell. Reuses CaOs2.dmftsym/struct; the -# references are the dmftproj matrix data (single precision, ~26 kB total). +# Native double-precision references for spin-mixing fromfile bases, an l=0 +# shell and cubic p harmonics, including magnetic operations. add_test(NAME Py_wien2k_symqmc_mixing COMMAND ${TRIQS_PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/wien2k_symqmc_mixing.py WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})

-e4fcRBL?J5i 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 delta 26534 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 m3#e-vs6P) path: the Os d +# shell is a 2(2l+1)=10 spinor basis (jbasis_d.dat), so the projector, Rloc +# rotrep and complex-harmonics transform blocks are the full mixing matrices the +# dft_tools #148 path singles out. Same wide window for the full-rank Loewdin. +# +# CaOs2_mode1_full and CaOs2_mode2_full exercise the band-index projection modes +# (set_projections.f:70-88). Mode 1 ("-2.0 3.0 1") scans all spins/k for the +# global band-index window; mode 2 ("43 92 2") takes the indices straight from +# the window line. Both resolve to bands 43..92 (50 bands > 20 correlated +# spin-orbitals), so the Loewdin overlap stays full rank and the projectors +# match the precision-fixed dmftproj to machine precision. import gzip import os @@ -30,9 +41,9 @@ def _gunzip(src, dst): shutil.copyfileobj(fi, fo) -def _compare(got_path, ref_path): +def _compare(got_path, ref_lines): got = open(got_path).read().split() - ref = open(ref_path).read().split() + ref = ''.join(ref_lines).split() assert len(got) == len(ref), (len(got), len(ref)) floats = [] for a, b in zip(got, ref): @@ -41,59 +52,41 @@ def _compare(got_path, ref_path): else: floats.append((float(a), float(b))) a, b = np.array(floats).T - np.testing.assert_allclose(a, b, atol=1e-7, rtol=0, equal_nan=False) + np.testing.assert_allclose(a, b, atol=1e-11, rtol=0, equal_nan=False) def _check(case): tmp = tempfile.mkdtemp() try: - for ext in ('indmftpr', 'struct', 'dmftsym'): - shutil.copy(os.path.join(HERE, f'{case}.{ext}'), + shutil.copy(os.path.join(HERE, f'{case}.indmftpr'), + os.path.join(tmp, f'{case}.indmftpr')) + if os.path.exists(os.path.join(HERE, 'jbasis_d.dat')): + shutil.copy(os.path.join(HERE, 'jbasis_d.dat'), + os.path.join(tmp, 'jbasis_d.dat')) + for ext in ('struct', 'dmftsym'): + shutil.copy(os.path.join(HERE, f'CaOs2.{ext}'), os.path.join(tmp, f'{case}.{ext}')) for ext in ('almblmup', 'almblmdn'): - _gunzip(os.path.join(HERE, f'{case}.{ext}.gz'), + _gunzip(os.path.join(HERE, f'CaOs2.{ext}.gz'), os.path.join(tmp, f'{case}.{ext}')) ctqmcout.write_ctqmcout(os.path.join(tmp, case)) - _compare(os.path.join(tmp, f'{case}.ctqmcout'), - os.path.join(HERE, f'{case}.ctqmcout')) - # A mismatched SO spin window must fail before replacing the output. - dn = os.path.join(tmp, f'{case}.almblmdn') - with open(dn) as f: - lines = f.readlines() - lines[3] = '100.0\n' # Shift all down-spin bands outside the window. - with open(dn, 'w') as f: - f.writelines(lines) - try: - ctqmcout.write_ctqmcout(os.path.join(tmp, case)) - except ValueError as error: - assert 'identical up/dn band windows' in str(error), error - else: - raise AssertionError('mismatched SO spin windows were accepted') + with gzip.open(os.path.join(HERE, f'{case}.ctqmcout.gz'), 'rt') as fh: + _compare(os.path.join(tmp, f'{case}.ctqmcout'), fh.readlines()) finally: shutil.rmtree(tmp) -assert ctqmcout._select_window(10, 13, [-3., -2., -1., 0.5], 0., 1.) == (False, 0, 0) -assert ctqmcout._select_window(5, 5, [0.5], 0., 1.) == (False, 0, 0) -_check('CaOs2') +_check('CaOs2_full') +_check('CaOs2_jbasis_full') +_check('CaOs2_mode1_full') # proj_mode 1: band-index window 43..92 +_check('CaOs2_mode2_full') # proj_mode 2: explicit band indices 43 92 + +print('wien2k_ctqmcout_python: ok') -for scale in (1., 1e-20): - overlap = np.diag([scale, 2 * scale]).astype(complex) - inverse = ctqmcout._sqrt_inv(overlap) - np.testing.assert_allclose(inverse @ overlap @ inverse.conj().T, - np.eye(2), atol=1e-14, rtol=0) +# A singular overlap must fail clearly rather than writing NaN projectors. try: - ctqmcout._sqrt_inv(np.diag([0., 1.]).astype(complex)) + ctqmcout._sqrt_inv(np.ones((2, 2), dtype=complex)) except ValueError as error: assert 'rank deficient' in str(error) else: raise AssertionError('singular overlap was accepted') - -with tempfile.TemporaryDirectory() as tmp: - path = os.path.join(tmp, 'multi.indmftpr') - with open(path, 'w') as fh: - fh.write('1\n1\n2\ncomplex\n0 2 2\n0 1 1\n1\n1\n1\n-2 3\n') - parsed = ctqmcout._read_indmftpr(path) - assert parsed['so'] == 1 and parsed['sorts'][0]['correlated_ls'] == [1, 2] - -print('wien2k_ctqmcout_python: ok') diff --git a/test/python/wien2k/wien2k_dmftproj_common_python.py b/test/python/wien2k/wien2k_dmftproj_common_python.py new file mode 100644 index 0000000..3429df8 --- /dev/null +++ b/test/python/wien2k/wien2k_dmftproj_common_python.py @@ -0,0 +1,112 @@ +################################################################################ +# TRIQS: a Toolbox for Research in Interacting Quantum Systems +# (GPL-3.0-or-later) +################################################################################ + +# Unit tests for the shared dmftproj machinery (triqs_dftkit.wien2k._dmftproj), +# the module the five case.* generators are built on. The generators' golden +# tests cover the assembled output; these exercise the isolated primitives +# directly so a regression in a shared unit is caught at its source. + +import os +import tempfile + +import numpy as np + +from triqs_dftkit.wien2k import _dmftproj as dp + +HERE = os.path.dirname(os.path.abspath(__file__)) + + +# --- list-directed numeric parsing ------------------------------------------- + +assert dp.to_float('1.0D-3') == 1.0e-3 +assert dp.to_float('4.57E-002') == 4.57e-2 +assert dp.to_float('-2.5d0') == -2.5 + +assert dp.to_complex('(1.0,-2.0)') == complex(1.0, -2.0) + + +def _reader(text): + fh = tempfile.NamedTemporaryFile('w', suffix='.tmp', delete=False) + fh.write(text) + fh.close() + return dp.Reader(fh.name) + + +r = _reader('(1.0,2.0)\n(3.0,-4.0) (5.0,6.0)\n') +assert dp.read_complex(r) == complex(1.0, 2.0) +a, b = dp.read_two_complex(r) +assert a == complex(3.0, -4.0) and b == complex(5.0, 6.0) + + +# --- angular basis: cubic transform, with and without the float32 cast ------- + +exact = dp.reptrans('cubic', 2, cast=False) +cast = dp.reptrans('cubic', 2, cast=True) +assert exact.shape == (5, 5) +# unitary +assert np.max(np.abs(exact @ np.conj(exact.T) - np.eye(5))) < 1e-12 +# the cast truncates 1/sqrt2 to single precision (legacy constructor rounding) +assert abs(abs(exact[1, 0]) - 2 ** -0.5) < 1e-15 +assert 0 < abs(abs(cast[1, 0]) - 2 ** -0.5) < 1e-6 +assert dp.reptrans('complex', 2).shape == (5, 5) +assert np.allclose(dp.reptrans('complex', 2), np.eye(5)) + + +# --- Wigner D and orbital time reversal -------------------------------------- + +for l in (1, 2): + D0 = dp.dmat(l, 0.0, 0.0, 0.0, 1.0) + assert np.max(np.abs(D0 - np.eye(2 * l + 1))) < 1e-12 # zero rotation + D = dp.dmat(l, 0.3, 0.7, 1.1, 1.0) + assert np.max(np.abs(D @ np.conj(D.T) - np.eye(2 * l + 1))) < 1e-12 # unitary + T = dp.tmat(l) + for m in range(-l, l + 1): + assert T[-m + l, m + l] == (-1) ** m + + +# --- select_window: contiguous band range in (e1, e2] ------------------------ + +eband = np.array([-1.0, -0.1, 0.05, 0.2, 0.5]) # bands 10..14, window (-0.15, 0.30] +incl, lo, hi = dp.select_window(10, 14, eband, -0.15, 0.30) +assert incl and lo == 11 and hi == 13 + + +# --- band-index window (proj_mode 1/2) --------------------------------------- + +# set_projections.f:70-88: every k included, indices clamped to nbmin/nbmax. +incl, lo, hi = dp.select_band_window(1, 92, 60, 76) +assert incl and lo == 60 and hi == 76 +incl, lo, hi = dp.select_band_window(50, 80, 43, 92) # clamp both ends +assert incl and lo == 50 and hi == 80 + +# proj_mode 2 takes b_bot/b_top straight from the (rounded) window line. +m2 = {'proj_mode': 2, 'e_bot': 43.0, 'e_top': 92.0} +assert dp.band_index_window(m2, []) == (43, 92) + +# proj_mode 1 scans the (e_bot, e_top] energies for the global band-index range. +m1 = {'proj_mode': 1, 'e_bot': -0.15, 'e_top': 0.30} +spins = [{'kp': [{'nbmin': 1, 'nbmax': 5, + 'eband': np.array([-1.0, -0.1, 0.05, 0.2, 0.5])}]}] +assert dp.band_index_window(m1, spins) == (2, 4) + + +# --- case.indmftpr / case.dmftsym structured parse --------------------------- + +info = dp.read_indmftpr(os.path.join(HERE, 'CaOs2.indmftpr')) +assert info['nsort'] == 2 and info['mult'] == [1, 2] and info['lmax'] == 3 +assert info['so'] == 1 +assert info['sorts'][1]['correlated_ls'] == [2] # Os d correlated +assert info['sorts'][0]['correlated_ls'] == [] # Ca nothing + +part = dp.read_indmftpr(os.path.join(HERE, 'CaOs2_partial.indmftpr')) +assert part['sorts'][0]['included_ls'] == [2] # Ca d now an included shell +assert part['sorts'][0]['correlated_ls'] == [] +assert part['sorts'][1]['correlated_ls'] == [2] + +nsym, ops = dp.read_dmftsym(os.path.join(HERE, 'CaOs2.dmftsym')) +assert nsym == 16 and len(ops) == 16 +assert all(o['krotm'].shape == (3, 3) and len(o['perm']) == 3 for o in ops) + +print('wien2k_dmftproj_common: ok') diff --git a/test/python/wien2k/wien2k_oubwin_python.py b/test/python/wien2k/wien2k_oubwin_python.py index 26b427a..048f070 100644 --- a/test/python/wien2k/wien2k_oubwin_python.py +++ b/test/python/wien2k/wien2k_oubwin_python.py @@ -18,6 +18,7 @@ import numpy as np from triqs_dftkit.wien2k import oubwin +from triqs_dftkit.wien2k import _dmftproj as dp HERE = os.path.dirname(os.path.abspath(__file__)) @@ -48,8 +49,8 @@ def _check(case): (10, [0., 0.5, 1., 2.], (True, 11, 12)), # strict lower, inclusive upper (10, [0.5, 1.], (True, 10, 11)), # open window reaches nbmax (10, [-1., 0., 2.], (False, 0, 0))): # no in-window band - got = oubwin._select_window(nbmin, nbmin + len(energies) - 1, - np.array(energies), 0., 0., 1.) + got = dp.select_window(nbmin, nbmin + len(energies) - 1, + np.array(energies), 0., 1.) assert got == expected, (energies, got, expected) # Three k-points with distinct weights, a Fermi shift of 10 Ry, and one @@ -58,31 +59,17 @@ def _check(case): with tempfile.TemporaryDirectory() as tmp: almblm = os.path.join(tmp, 'case.almblm') with open(almblm, 'w') as f: - f.write('''0 -3 -0 -10.0 -1.0 -0 -IK = 1 -0 0 0 -1 10 13 -0.25 9.0 -0.80 10.25 -0.60 10.75 -0.25 12.0 -IK = 2 -0 0 0 -2 20 21 -0.10 8.0 -0.10 9.0 -IK = 3 -0 0 0 -3 30 31 -0.75 10.25 -0.50 10.75 -''') - windows = oubwin._windows_for_spin(almblm, None, 1, 0, 0., 1., 0) + f.write('0\n3\n0\n10.0\n1.0\n0\n') + for ik, nbmin, energies, weights in ( + (1, 10, [9., 10.25, 10.75, 12.], [.25, .80, .60, .25]), + (2, 20, [8., 9.], [.10, .10]), + (3, 30, [10.25, 10.75], [.75, .50])): + f.write(f'IK = {ik}\n0 0 0\n{ik} {nbmin} {nbmin + len(energies) - 1}\n') + for energy, weight in zip(energies, weights): + f.write(f'{weight} {energy}\n') + f.write('ATOM = 1\n1\n') + f.write('(0.,0.) (0.,0.)\n' * len(energies)) + windows = oubwin._windows_from_spin(dp.read_almblm(almblm, dict(nsort=1, lmax=0, mult=[1])), dict(proj_mode=0, e_bot=0., e_top=1.), None) assert windows == [(True, 11, 12, 0.25), (False, 0, 0, 0.10), (True, 30, 31, 0.75)], windows output = os.path.join(tmp, 'case.oubwin') @@ -94,13 +81,4 @@ def _check(case): _check('CaOs2') -with tempfile.TemporaryDirectory() as tmp: - path = os.path.join(tmp, 'multi.indmftpr') - with open(path, 'w') as fh: - fh.write('1\n1\n2\ncomplex\n0 2 2\n0 1 1\n1\n1\n0\n-2 3\n') - assert oubwin._read_so_flag(path) == 0 - with open(path, 'a') as fh: - fh.write('-2 3 ! default energy-window mode\n') - assert oubwin._read_window(path) == (-2., 3., 0) - print('wien2k_oubwin_python: ok') diff --git a/test/python/wien2k/wien2k_outband_python.py b/test/python/wien2k/wien2k_outband_python.py new file mode 100644 index 0000000..823580b --- /dev/null +++ b/test/python/wien2k/wien2k_outband_python.py @@ -0,0 +1,89 @@ +################################################################################ +# TRIQS: a Toolbox for Research in Interacting Quantum Systems +# (GPL-3.0-or-later) +################################################################################ + +# Verify the pure-Python case.outband generator (triqs_dftkit.wien2k.outband) +# reproduces the dmftproj Fortran band-structure projectors to machine +# precision: regenerate case.outband from the band-mode almblm/struct/dmftsym, +# the k-path (klist_band) and the band indmftpr, and compare to the +# precision-fixed dmftproj -band reference. +# +# case.outband feeds convert_bands_input. It is the band analog of +# case.ctqmcout: the same correlated-shell projector construction (raw Alm/Clm +# projector -> rot_projectmat -> fromfile/cubic transmat -> Loewdin +# orthonormalization) plus the raw Theta projectors of the parproj path, written +# in the outband layout. The CaOs2_band fixture is SP+SO with the spin-mixing +# fromfile (|j, m_j>) Os d shell (jbasis_d.dat); the wide window (-2.0, 3.0) +# keeps 50 bands > 20 correlated spin-orbitals, so the Loewdin overlap is full +# rank and the projectors match to machine precision. +# +# Band-mode specifics (dmftproj.f:557-581): nkband, the number of k-points along +# the plotted path, is read from CaOs2_band.klist_band; the Fermi energy is the +# last line of CaOs2_band.indmftpr (the band almblm keeps a placeholder eferm +# record that the reader skips). + +import gzip +import os +import shutil +import tempfile +import numpy as np + +from triqs_dftkit.wien2k import outband + +HERE = os.path.dirname(os.path.abspath(__file__)) + + +def _gunzip(src, dst): + with gzip.open(src, 'rb') as fi, open(dst, 'wb') as fo: + shutil.copyfileobj(fi, fo) + + +def _compare(got_path, ref_lines): + got = open(got_path).read().split() + ref = ''.join(ref_lines).split() + assert len(got) == len(ref), (len(got), len(ref)) + floats = [] + for a, b in zip(got, ref): + if a.lstrip('-').isdigit() and b.lstrip('-').isdigit(): + assert int(a) == int(b), (a, b) + elif _isfloat(a) and _isfloat(b): + floats.append((float(a), float(b))) + else: + assert a == b, (a, b) # k-label tokens + a, b = np.array(floats).T + np.testing.assert_allclose(a, b, atol=1e-11, rtol=0, equal_nan=False) + + +def _isfloat(tok): + try: + float(tok) + return True + except ValueError: + return False + + +def _check(case): + tmp = tempfile.mkdtemp() + try: + for ext in ('indmftpr', 'klist_band'): + shutil.copy(os.path.join(HERE, f'{case}.{ext}'), + os.path.join(tmp, f'{case}.{ext}')) + shutil.copy(os.path.join(HERE, 'jbasis_d.dat'), + os.path.join(tmp, 'jbasis_d.dat')) + for ext in ('struct', 'dmftsym'): + shutil.copy(os.path.join(HERE, f'CaOs2.{ext}'), + os.path.join(tmp, f'{case}.{ext}')) + for ext in ('almblmup', 'almblmdn'): + _gunzip(os.path.join(HERE, f'{case}.{ext}.gz'), + os.path.join(tmp, f'{case}.{ext}')) + outband.write_outband(os.path.join(tmp, case)) + with gzip.open(os.path.join(HERE, f'{case}.outband.gz'), 'rt') as fh: + _compare(os.path.join(tmp, f'{case}.outband'), fh.readlines()) + finally: + shutil.rmtree(tmp) + + +_check('CaOs2_band') + +print('wien2k_outband_python: ok') diff --git a/test/python/wien2k/wien2k_parproj_python.py b/test/python/wien2k/wien2k_parproj_python.py index 94a1ba0..fc13bad 100644 --- a/test/python/wien2k/wien2k_parproj_python.py +++ b/test/python/wien2k/wien2k_parproj_python.py @@ -38,7 +38,7 @@ def _compare(got_path, ref_lines): else: floats.append((float(a), float(b))) a, b = np.array(floats).T - np.testing.assert_allclose(a, b, atol=1e-7, rtol=0, equal_nan=False) + np.testing.assert_allclose(a, b, atol=1e-11, rtol=0, equal_nan=False) def _check(case): @@ -46,6 +46,7 @@ def _check(case): try: shutil.copy(os.path.join(HERE, f'{case}.indmftpr'), os.path.join(tmp, f'{case}.indmftpr')) + shutil.copy(os.path.join(HERE, 'jbasis_d.dat'), os.path.join(tmp, 'jbasis_d.dat')) for ext in ('struct', 'dmftsym'): shutil.copy(os.path.join(HERE, f'CaOs2.{ext}'), os.path.join(tmp, f'{case}.{ext}')) @@ -71,16 +72,14 @@ def _check(case): np.testing.assert_allclose(actual, expected, atol=1e-14, rtol=0) _check('CaOs2_partial') - -with tempfile.TemporaryDirectory() as tmp: - path = os.path.join(tmp, 'P1.dmftsym') - with open(path, 'w') as fh: - fh.write('1\n1 2\nSym. op. 1\n0 0 0 1\n' - '1 0 0\n0 1 0\n0 0 1\nGlobal->local\n' - '1\n1 0 0\n0 1 0\n0 0 1\n0 0 0 1\n' - '2\n1 0 0\n0 1 0\n0 0 1\n90 0 0 1\n') - _, _, refs = parproj._read_dmftsym(path) - assert len(refs) == 2 - np.testing.assert_allclose(refs[1]['a'], np.pi / 2, atol=1e-14, rtol=0) +_check('CaOs2_jbasis_full') print('wien2k_parproj_python: ok') + +# Equivalent atoms must share the average after identity and swap operations. +raw_mixing = {1: np.diag([1., 3.]), 2: np.diag([5., 7.])} +actual = parproj._symmetrize_densmat_mixing( + [dict(atom=1), dict(atom=2)], [dict(perm=[1, 2]), dict(perm=[2, 1])], 2, + [(np.eye(2), False)] * 2, raw_mixing) +for matrix in actual.values(): + np.testing.assert_allclose(matrix, np.diag([3., 5.]), atol=1e-14, rtol=0) diff --git a/test/python/wien2k/wien2k_sympar_python.py b/test/python/wien2k/wien2k_sympar_python.py index 0316fd5..9431dd9 100644 --- a/test/python/wien2k/wien2k_sympar_python.py +++ b/test/python/wien2k/wien2k_sympar_python.py @@ -41,12 +41,12 @@ def _compare(got_path, ref_lines): reference = np.array(ref[header:], float).reshape(data.shape) matrices = data[:, :, 0] + 1j * data[:, :, 1] expected = reference[:, :, 0] + 1j * reference[:, :, 1] - np.testing.assert_allclose(matrices, expected, atol=1e-7, rtol=0, + np.testing.assert_allclose(matrices, expected, atol=1e-11, rtol=0, equal_nan=False) for operation in matrices: for matrix in operation: np.testing.assert_allclose(matrix @ matrix.conj().T, np.eye(10), - atol=1e-7, rtol=0) + atol=1e-11, rtol=0) def _check(case): @@ -70,19 +70,12 @@ def _check(case): # Inversion has proper part I but parity -1: odd-l matrices must be -I. inversion = dict(a=0., b=0., c=0., iprop=-1, krotm=np.eye(3)) for l in (1, 3): - shell = dict(l=l, P=np.eye(2 * l + 1, dtype=complex)) + shell = dict(l=l, mixing=False, P=np.eye(2 * l + 1, dtype=complex)) np.testing.assert_allclose(sympar._shell_matrix(inversion, shell, False), -np.eye(2 * (2 * l + 1)), atol=1e-14, rtol=0) -p = sympar._reptrans('cubic', 1) -np.testing.assert_allclose(p @ p.conj().T, np.eye(3), atol=1e-7, rtol=0) +p = sympar.reptrans('cubic', 1) +np.testing.assert_allclose(p @ p.conj().T, np.eye(3), atol=1e-11, rtol=0) _check('CaOs2_partial') -with tempfile.TemporaryDirectory() as tmp: - path = os.path.join(tmp, 'multi.indmftpr') - with open(path, 'w') as fh: - fh.write('1\n1\n2\ncomplex\n0 2 2\n0 1 1\n1\n1\n1\n-2 3\n') - shells, so = sympar._read_indmftpr(path) - assert so == 1 and [shell['l'] for shell in shells] == [1, 2] - print('wien2k_sympar_python: ok') diff --git a/test/python/wien2k/wien2k_symqmc_jbasis.ref.npy b/test/python/wien2k/wien2k_symqmc_jbasis.ref.npy index b7e2e0140b0500ec686a2cb6db5867dbdef4902b..4cce82ce5de8d649eac9e893f10c10214a039cae 100644 GIT binary patch literal 51328 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 F{|6L27^naM diff --git a/test/python/wien2k/wien2k_symqmc_l0.ref.npy b/test/python/wien2k/wien2k_symqmc_l0.ref.npy index 679d0e0df3a80d9c022fb04897600255c8f9f99f..ae517ee5dc22fc164d5f4781889abe9323949d66 100644 GIT binary patch literal 2176 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$7re->tItsN4WCJb+F!*2(q0vcP;&62h5Ed?VxWp0q-&xnE&0FwnKU@UL zfQhe$$YZzqoAIaUsO_*m=~X4l#&V(cT3DEP6dh= zXCxM+0{I$7re->tItsN4WCJb+h6Z~EI6!8D1se#-e`Yb=57Q1}12Nn@D4&o#vU+)3 diff --git a/test/python/wien2k/wien2k_symqmc_mixing.py b/test/python/wien2k/wien2k_symqmc_mixing.py index eb729a8..da6850e 100644 --- a/test/python/wien2k/wien2k_symqmc_mixing.py +++ b/test/python/wien2k/wien2k_symqmc_mixing.py @@ -65,7 +65,7 @@ def _check(indmftpr, ref_npy, extra=(), unit_tol=1e-7): data, shells, ops, so = _run(indmftpr, extra) ref = np.load(os.path.join(HERE, ref_npy)) assert data.shape == ref.shape, (data.shape, ref.shape) - assert np.max(np.abs(data - ref)) < 1e-6, np.max(np.abs(data - ref)) + assert np.max(np.abs(data - ref)) < 1e-11, np.max(np.abs(data - ref)) for op in ops: for sh in shells: mat = symqmc._shell_matrix(op, sh, _timeinv(op, so)) From a610c9885730fae8c6a84ee608776ddfe9081d50 Mon Sep 17 00:00:00 2001 From: Christopher Albert Date: Mon, 12 Oct 2026 19:29:52 +0200 Subject: [PATCH 02/12] Fix shared parser, spinor and projection-window edge cases --- python/triqs_dftkit/wien2k/_dmftproj.py | 35 ++++++++--- python/triqs_dftkit/wien2k/ctqmcout.py | 4 +- python/triqs_dftkit/wien2k/outband.py | 2 + python/triqs_dftkit/wien2k/parproj.py | 19 +++--- test/python/wien2k/CaOs2_band.klist_band | 3 - test/python/wien2k/CaOs2_band.outband.gz | Bin 65216 -> 60873 bytes test/python/wien2k/wien2k_ctqmcout_python.py | 8 +++ .../wien2k/wien2k_dmftproj_common_python.py | 56 ++++++++++++++++++ test/python/wien2k/wien2k_outband_python.py | 9 +++ test/python/wien2k/wien2k_parproj_python.py | 13 +++- 10 files changed, 127 insertions(+), 22 deletions(-) diff --git a/python/triqs_dftkit/wien2k/_dmftproj.py b/python/triqs_dftkit/wien2k/_dmftproj.py index 05980f2..ed90268 100644 --- a/python/triqs_dftkit/wien2k/_dmftproj.py +++ b/python/triqs_dftkit/wien2k/_dmftproj.py @@ -141,16 +141,20 @@ def read_fromfile(path, l): if not line.strip(): continue body = line[1:] - vals = [float(x) for x in body.split()][:2 * n] + vals = [to_float(x) for x in body.split()[:2 * n]] + if len(vals) != 2 * n: + raise ValueError(f'{path}: each basis row requires {2 * n} real coefficients') rows.append([vals[2 * k] + 1j * vals[2 * k + 1] for k in range(n)]) if len(rows) == n: break R = np.array(rows) # R[i, :] = |new_i> in old basis + if R.shape != (n, n) or not np.all(np.isfinite(R)): + raise ValueError(f'{path}: expected a finite {n} by {n} basis matrix') d = 2 * l + 1 up_up, up_dn = R[:d, :d], R[:d, d:] dn_up, dn_dn = R[d:, :d], R[d:, d:] - mixing = not (np.allclose(dn_dn, up_up) and - np.allclose(up_dn, 0) and np.allclose(dn_up, 0)) + mixing = not (np.array_equal(dn_dn, up_up) and + np.all(up_dn == 0) and np.all(dn_up == 0)) P = np.conj(R) if mixing else np.conj(up_up) # = conj() return P, mixing @@ -302,16 +306,28 @@ def read_indmftpr(indmftpr): i += 1 correlated_ls = [l for l in range(len(l_inc)) if l_inc[l] == 2] included_ls = [l for l in range(len(l_inc)) if l_inc[l] in (1, 2)] - if any(n > 0 for n in ireps): - i += 1 # skip the correps line + for l in correlated_ls: + if ireps[l] > 1: + raise NotImplementedError('selection of individual irreducible representations is not implemented') + if ireps[l] > 0: + if raw[i].strip() != '1': + raise NotImplementedError('selection of individual irreducible representations is not implemented') + i += 1 # each correlated l has its own correps line if correlated_ls: - so = int(raw[i].split()[0]) # SO flag follows a correlated sort + sort_so = int(raw[i].split()[0]) + if sort_so not in (0, 1): + raise ValueError('spin-orbit flags must be 0 or 1') + if any(s['correlated_ls'] for s in sorts) and sort_so != so: + raise NotImplementedError('different spin-orbit flags across correlated sorts are not implemented') + so = sort_so # SO flag follows a correlated sort i += 1 sorts.append(dict(basis=basis, sourcefile=sourcefile, correlated_ls=correlated_ls, included_ls=included_ls)) last = raw[-1].split() e_bot, e_top = to_float(last[0]), to_float(last[1]) proj_mode = int(last[2]) if len(last) >= 3 else 0 + if proj_mode not in (0, 1, 2) or not np.isfinite([e_bot, e_top]).all() or e_bot > e_top: + raise ValueError('projection window requires finite ordered bounds and mode 0, 1 or 2') return dict(nsort=nsort, mult=mult, lmax=lmax, sorts=sorts, so=so, e_bot=e_bot, e_top=e_top, proj_mode=proj_mode) @@ -343,7 +359,7 @@ def read_dmftsym(path, rotloc=False): gl = next(i for i, l in enumerate(lines) if 'Global->local' in l) rotloc_ref = [] j = gl + 1 - while len(rotloc_ref) < nsym and j < len(lines): + while j < len(lines): if lines[j].strip() == '' or not lines[j].split()[0].lstrip('-').isdigit(): j += 1 continue @@ -397,6 +413,8 @@ def read_almblm(path, info, projectors=False): for l in range(lmax + 1): u_dot_norm[(l, isrt)] = to_float(r.record()[0]) n = int(r.record()[0]) + if n > 1: + raise NotImplementedError('more than one local orbital per angular momentum is not implemented') nLO[(l, isrt)] = n for ilo in range(1, n + 1): toks = r.record() @@ -553,7 +571,8 @@ def validate_so_windows(spins, info, windows, below=None): if selected != windows[ik]: raise ValueError('spin-orbit run requires identical up/dn band windows') if below is not None: - lower = select_window(kp['nbmin'], kp['nbmax'], kp['eband'], -1e6, info['e_bot']) + lower = (select_window(kp['nbmin'], kp['nbmax'], kp['eband'], -1e6, info['e_bot']) + if bw is None else select_band_window(kp['nbmin'], kp['nbmax'], 1, bw[0] - 1)) if lower != below[ik]: raise ValueError('spin-orbit run requires identical up/dn below-window bands') if not all(incl and lo <= hi for incl, lo, hi in windows): diff --git a/python/triqs_dftkit/wien2k/ctqmcout.py b/python/triqs_dftkit/wien2k/ctqmcout.py index a1b55b9..44e7fb1 100644 --- a/python/triqs_dftkit/wien2k/ctqmcout.py +++ b/python/triqs_dftkit/wien2k/ctqmcout.py @@ -80,7 +80,7 @@ def _sqrt_inv(O): w, Z, info = zheev(O, compute_v=1, lower=0) # 'V', 'U' if info != 0: raise np.linalg.LinAlgError(f'Loewdin eigensolver failed (info={info})') - if w[0] <= np.finfo(float).eps * len(w) * max(abs(w[-1]), 1.): + if w[0] <= np.finfo(float).eps * len(w) * abs(w[-1]): raise ValueError('Loewdin overlap is rank deficient; widen the projection window') D1 = Z * (w.astype(complex) ** -0.5) # Z @ diag(w^{-1/2}) return zgemm(1.0, D1, np.conj(Z), trans_b=1) # ZGEMM('N','T'): D1 @ conj(Z)^T @@ -205,7 +205,7 @@ def write_ctqmcout(case): win_below.append(select_band_window( kp['nbmin'], kp['nbmax'], 1, bw[0] - 1)) - validate_so_windows(spins, info, windows) + validate_so_windows(spins, info, windows, win_below) # qbbot: point integration over bands below e_bot, is=1 only under SO qbbot = 0.0 diff --git a/python/triqs_dftkit/wien2k/outband.py b/python/triqs_dftkit/wien2k/outband.py index 53083ed..2dddae6 100644 --- a/python/triqs_dftkit/wien2k/outband.py +++ b/python/triqs_dftkit/wien2k/outband.py @@ -139,6 +139,8 @@ def write_outband(case): info['nk'] = nk nkband, labels = read_k_list(case + '.klist_band') + if nkband != nk: + raise ValueError('klist_band and almblm k-point counts differ') crorbs = _build_crorbs(info) orbs = _build_orbs(info) diff --git a/python/triqs_dftkit/wien2k/parproj.py b/python/triqs_dftkit/wien2k/parproj.py index 0cf2eee..fd97004 100644 --- a/python/triqs_dftkit/wien2k/parproj.py +++ b/python/triqs_dftkit/wien2k/parproj.py @@ -58,9 +58,9 @@ import os import numpy as np -from ._dmftproj import (require_identity_struct, validate_so_windows, dmat, mixing_rotrep, read_almblm, read_dmftsym, +from ._dmftproj import (require_identity_struct, validate_so_windows, band_index_window, dmat, mixing_rotrep, read_almblm, read_dmftsym, read_fromfile, read_indmftpr, reptrans, - rotloc_rotl_so, select_window, tmat, write_row) + rotloc_rotl_so, select_band_window, select_window, tmat, write_row) def _op_timeinv(op, ifSO): @@ -396,8 +396,6 @@ def write_parproj(case): if not info['so']: raise NotImplementedError('non-spin-orbit projectors are not implemented yet') require_identity_struct(case) - if info['proj_mode'] != 0: - raise NotImplementedError('this output currently supports projection mode 0') nsym, ops, rotloc_ref = read_dmftsym(case + '.dmftsym', rotloc=True) up, dn = case + '.almblmup', case + '.almblmdn' @@ -423,12 +421,17 @@ def write_parproj(case): # density call is correlated-only), so densmat in outputqmc is that one. windows = [] below_windows = [] + bw = band_index_window(info, spins) if info['proj_mode'] else None for ik in range(nk): kp = spins[0]['kp'][ik] - windows.append(select_window(kp['nbmin'], kp['nbmax'], kp['eband'], - info['e_bot'], info['e_top'])) - below_windows.append(select_window(kp['nbmin'], kp['nbmax'], - kp['eband'], -1e6, info['e_bot'])) + if bw is None: + windows.append(select_window(kp['nbmin'], kp['nbmax'], kp['eband'], + info['e_bot'], info['e_top'])) + below_windows.append(select_window(kp['nbmin'], kp['nbmax'], + kp['eband'], -1e6, info['e_bot'])) + else: + windows.append(select_band_window(kp['nbmin'], kp['nbmax'], *bw)) + below_windows.append(select_band_window(kp['nbmin'], kp['nbmax'], 1, bw[0] - 1)) validate_so_windows(spins, info, windows, below_windows) diff --git a/test/python/wien2k/CaOs2_band.klist_band b/test/python/wien2k/CaOs2_band.klist_band index 14790bc..366e653 100644 --- a/test/python/wien2k/CaOs2_band.klist_band +++ b/test/python/wien2k/CaOs2_band.klist_band @@ -1,5 +1,2 @@ GAMMA 0 0 0 8 2.0 - 1 0 0 8 2.0 - 2 0 0 8 2.0 -X 4 0 0 8 2.0 END diff --git a/test/python/wien2k/CaOs2_band.outband.gz b/test/python/wien2k/CaOs2_band.outband.gz index 606fec39e3d85086a1ac9d503f120c06d1650425..063276c2696fc6c4a9fb061c5f61e9170f60aefc 100644 GIT binary patch literal 60873 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