gem.solvers.simple_ed.SimpleED.build_Hemb

SimpleED.build_Hemb(D, eloc, Lambdac, V2E, mu=0.0, debug=False, verbose=0, spin_pen=None, sz_pen=None, sx_pen=None, sy_pen=None)[source]

Build the embedding Hamiltonian in every sector owned by this rank.

In matrix-free mode nothing is built: the one-body and two-body coefficients are flattened into term lists and each sector gets an EmbeddingHamiltonian that applies them on the fly. With debug=True the returned Ham_list then holds those operators rather than sparse matrices.

Collective: must be called by every rank.

Parameters:
  • D – array. D matrix of the embedded Hamiltonian.

  • eloc – array. Local part of the Hamiltonian.

  • Lambdac – array. Lambda_c matrix of the embedded Hamiltonian.

  • V2E – array. Two-particle interaction on the impurity degrees of freedom.

  • mu – float. Chemical potential (default 0).

  • debug – bool. Flag for debugging (default False). If True, returns the list of one-body terms.

  • verbose – int. Level of verbosity (default 0).

  • spin_pen – float. Penalty for states with non-zero <S^2> (default 0).

  • sz_pen – float. Penalty for states with non-zero <S_z^2> (default 0).

  • sx_pen – float. Penalty for states with non-zero <S_x^2> (default 0).

  • sy_pen – float. Penalty for states with non-zero <S_y^2> (default 0).