triqs_dft_tools.sumk_dft.SumkDFT

class triqs_dft_tools.sumk_dft.SumkDFT(hdf_file, h_field=0.0, mesh=None, beta=40, n_iw=1025, use_dft_blocks=False, dft_data='dft_input', symmcorr_data='dft_symmcorr_input', parproj_data='dft_parproj_input', symmpar_data='dft_symmpar_input', bands_data='dft_bands_input', transp_data='dft_transp_input', misc_data='dft_misc_input', bc_data='dft_bandchar_input', cont_data='dft_contours_input')[source]

This class provides a general SumK method for combining ab-initio code and triqs.

Attributes:
corr_to_inequiv
deg_shells
gf_struct_solver
gf_struct_solver_dict
gf_struct_solver_list
gf_struct_sumk
gf_struct_sumk_dict
gf_struct_sumk_list
inequiv_to_corr
solver_to_sumk
solver_to_sumk_block
sumk_to_solver

Methods

add_dc()

Subtracts the double counting term from the impurity self energy.

analyse_block_structure([threshold, ...])

Determines the block structure of local Green's functions by analysing the structure of the corresponding density matrices and the local Hamiltonian.

analyse_block_structure_from_gf(G[, ...])

Determines the block structure of local Green's functions by analysing the structure of the corresponding non-interacting Green's function.

analyse_deg_shells(G[, threshold, ...])

Determines the degenerate shells of local Green's functions by analysing the structure of the corresponding non-interacting Green's function.

calc_dc(dens_mat[, orb, U_interact, J_hund, ...])

Calculate and set the double counting corrections.

calc_density_correction([filename, dm_type, ...])

Calculates the charge density correction and stores it into a file.

calc_mu([precision, broadening, delta, ...])

Searches for the chemical potential that gives the DFT total charge.

calculate_diagonalization_matrix([...])

Calculates the diagonalisation matrix, and (optionally) stores it in the BlockStructure.

check_projectors()

Calculated the density matrix from projectors (DM = P Pdagger) to check that it is correct and specifically that it matches DFT.

density_matrix([method, mu, with_Sigma, ...])

Calculate density matrices in one of two ways.

density_matrix_using_point_integration()

Calculate density matrices using point integration: Only works for diagonal hopping matrix (true in wien2k).

downfold(ik, ish, bname, gf_to_downfold, gf_inp)

Downfolds a block of the Green's function for a given shell and k-point using the corresponding projector matrices.

eff_atomic_levels()

Calculates the effective local Hamiltonian required as an input for the Hubbard I Solver.

extract_G_loc([mu, with_Sigma, with_dc, ...])

Extracts the local downfolded Green function by the Brillouin-zone integration of the lattice Green's function.

init_dc()

Initializes the double counting terms.

lattice_gf(ik[, mu, broadening, mesh, ...])

Calculates the lattice Green function for a given k-point from the DFT Hamiltonian and the self energy.

load(things_to_load[, subgrp])

Loads user data from the HDF file.

number_of_atoms(shells)

Determine the number of inequivalent atoms.

put_Sigma(Sigma_imp[, transform_to_sumk_blocks])

Insert the impurity self-energies into the sumk_dft class.

read_input_from_hdf(subgrp, things_to_read)

Reads data from the HDF file.

rotloc(ish, gf_to_rotate, direction[, shells])

Rotates a block of the local Green's function from the local frame to the global frame and vice versa.

save(things_to_save[, subgrp])

Saves data from a list into the HDF file.

set_dc(dc_imp, dc_energ)

Sets double counting corrections to given values.

set_mu(mu)

Sets a new chemical potential.

sorts_of_atoms(shells)

Determine the number of inequivalent sorts.

symm_deg_gf(gf_to_symm[, ish])

Averages a GF or a dict of np.ndarrays over degenerate shells.

total_density([mu, with_Sigma, with_dc, ...])

Calculates the total charge within the energy window for a given chemical potential.

transform_to_solver_blocks(G_loc[, G_out, ...])

transform G_loc from sumk to solver space

transform_to_sumk_blocks(Sigma_imp[, Sigma_out])

transform Sigma from solver to sumk space

upfold(ik, ish, bname, gf_to_upfold, gf_inp)

Upfolds a block of the Green's function for a given shell and k-point using the corresponding projector matrices.

calculate_min_max_band_energies

set_Sigma

Methods

__init__(hdf_file[, h_field, mesh, beta, ...])

Initialises the class from data previously stored into an hdf5 archive.

add_dc()

Subtracts the double counting term from the impurity self energy.

analyse_block_structure([threshold, ...])

Determines the block structure of local Green's functions by analysing the structure of the corresponding density matrices and the local Hamiltonian.

analyse_block_structure_from_gf(G[, ...])

Determines the block structure of local Green's functions by analysing the structure of the corresponding non-interacting Green's function.

analyse_deg_shells(G[, threshold, ...])

Determines the degenerate shells of local Green's functions by analysing the structure of the corresponding non-interacting Green's function.

calc_dc(dens_mat[, orb, U_interact, J_hund, ...])

Calculate and set the double counting corrections.

calc_density_correction([filename, dm_type, ...])

Calculates the charge density correction and stores it into a file.

calc_mu([precision, broadening, delta, ...])

Searches for the chemical potential that gives the DFT total charge.

calculate_diagonalization_matrix([...])

Calculates the diagonalisation matrix, and (optionally) stores it in the BlockStructure.

calculate_min_max_band_energies()

check_projectors()

Calculated the density matrix from projectors (DM = P Pdagger) to check that it is correct and specifically that it matches DFT.

density_matrix([method, mu, with_Sigma, ...])

Calculate density matrices in one of two ways.

density_matrix_using_point_integration()

Calculate density matrices using point integration: Only works for diagonal hopping matrix (true in wien2k).

downfold(ik, ish, bname, gf_to_downfold, gf_inp)

Downfolds a block of the Green's function for a given shell and k-point using the corresponding projector matrices.

eff_atomic_levels()

Calculates the effective local Hamiltonian required as an input for the Hubbard I Solver.

extract_G_loc([mu, with_Sigma, with_dc, ...])

Extracts the local downfolded Green function by the Brillouin-zone integration of the lattice Green's function.

init_dc()

Initializes the double counting terms.

lattice_gf(ik[, mu, broadening, mesh, ...])

Calculates the lattice Green function for a given k-point from the DFT Hamiltonian and the self energy.

load(things_to_load[, subgrp])

Loads user data from the HDF file.

number_of_atoms(shells)

Determine the number of inequivalent atoms.

put_Sigma(Sigma_imp[, transform_to_sumk_blocks])

Insert the impurity self-energies into the sumk_dft class.

read_input_from_hdf(subgrp, things_to_read)

Reads data from the HDF file.

rotloc(ish, gf_to_rotate, direction[, shells])

Rotates a block of the local Green's function from the local frame to the global frame and vice versa.

save(things_to_save[, subgrp])

Saves data from a list into the HDF file.

set_Sigma(Sigma_imp[, transform_to_sumk_blocks])

set_dc(dc_imp, dc_energ)

Sets double counting corrections to given values.

set_mu(mu)

Sets a new chemical potential.

sorts_of_atoms(shells)

Determine the number of inequivalent sorts.

symm_deg_gf(gf_to_symm[, ish])

Averages a GF or a dict of np.ndarrays over degenerate shells.

total_density([mu, with_Sigma, with_dc, ...])

Calculates the total charge within the energy window for a given chemical potential.

transform_to_solver_blocks(G_loc[, G_out, ...])

transform G_loc from sumk to solver space

transform_to_sumk_blocks(Sigma_imp[, Sigma_out])

transform Sigma from solver to sumk space

upfold(ik, ish, bname, gf_to_upfold, gf_inp)

Upfolds a block of the Green's function for a given shell and k-point using the corresponding projector matrices.

Attributes

corr_to_inequiv

deg_shells

gf_struct_solver

gf_struct_solver_dict

gf_struct_solver_list

gf_struct_sumk

gf_struct_sumk_dict

gf_struct_sumk_list

inequiv_to_corr

solver_to_sumk

solver_to_sumk_block

sumk_to_solver