postprocessing.maxent_gf_latt

Analytic continuation of the lattice Green’s function to the lattice spectral function using maxent.

Reads G_latt(i omega) from the h5 archive and writes A_latt(omega) back. See the docstring of main() for more information.

mpi parallelized for the generation of the imaginary-frequency lattice GF over k points.

Author: Maximilian Merkel, Materials Theory Group, ETH Zurich, 2020 - 2022

postprocessing.maxent_gf_latt.main(external_path, iteration=None, sum_spins=False, maxent_error=0.02, n_points_maxent=200, n_points_alpha=50, omega_min=None, omega_max=None)[source]

Main function that reads the lattice Green’s function (GF) from h5, analytically continues it, writes the result back to the h5 archive and also returns the results. Only the trace can be used because the Kohn-Sham energies (“hopping”) are not sorted by “orbital” but by energy, leading to crossovers.

Parameters:
external_path: string

Path to the h5 archive to read from and write to.

iteration: int/string

Iteration to read from and write to. Defaults to last_iter.

sum_spins: bool

Whether to sum over the spins or continue the lattice GF for the up and down spin separately, for example for magnetized results.

maxent_errorfloat

The error that is used for the analyzers.

n_points_maxentint

Number of omega points on the hyperbolic mesh used in the continuation.

n_points_alphaint

Number of points that the MaxEnt alpha parameter is varied on logarithmically.

omega_minfloat

Lower end of range where the GF is being continued. Range has to comprise all features of the lattice GF for correct normalization. If omega_min and omega_max are None, they are chosen automatically based on the diagonal entries in the hopping matrix but at least to -20…20 eV.

omega_maxfloat

Upper end of range where the GF is being continued. See omega_min.

Returns:
unpacked_resultsdict

The omega mesh and lattice spectral function from two different analyzers