aiida_yambo.workflows.utils.extend_QPDB#

Module Contents#

Functions#

build_ndbQP(db_path, DFT_pk[, Nb, Nk, verbose])

This just build a QP with KS results, then you can modify the script to change

FD_even(x, mu[, e_ref, T])

Apply_FD_scissored_correction(start, corrections, ...)

corrections should be a zeroes with shape of start,

update_FD_and_scissor(db_dft, db_gw, conduction, mu[, ...])

update with FD*realGW for the region of interest, then scissor(DFT) for the

FD_and_scissored_db(out_db_path, pw, Nb, Nk, v_max, ...)

aiida_yambo.workflows.utils.extend_QPDB.build_ndbQP(db_path, DFT_pk, Nb=[1, 1], Nk=1, verbose=False)[source]#

This just build a QP with KS results, then you can modify the script to change the values as you want. Or also just modify the output ds, which has already the right dimensions.

aiida_yambo.workflows.utils.extend_QPDB.FD_even(x, mu, e_ref=0, T=1e-06)[source]#
aiida_yambo.workflows.utils.extend_QPDB.Apply_FD_scissored_correction(start, corrections, scissor, mu, e_ref=0, T=1e-06, unit=units.Ha)[source]#

corrections should be a zeroes with shape of start, filled only for the corrections that we computed explicitely. provide the scissors in Hartree units…

aiida_yambo.workflows.utils.extend_QPDB.update_FD_and_scissor(db_dft, db_gw, conduction, mu, scissors=[[1, 0], [1, 0]], e_ref=0, T=1e-06, verbose=False, full_bands=True)[source]#

update with FD*realGW for the region of interest, then scissor(DFT) for the outside region. ds: the created ndb.QP db: the explicit GW corrections that we have. mu: window of energy needed in which we want the correction to be exact. except for the smearing of T>0.

aiida_yambo.workflows.utils.extend_QPDB.FD_and_scissored_db(out_db_path, pw, Nb, Nk, v_max, c_min, fit_v, fit_c, conduction, e_ref=None, mu=None, T=0.01)[source]#