risb.embedding.embedding_atom_diag module

Embedding solver using TRIQS AtomDiag.

class risb.embedding.embedding_atom_diag.EmbeddingAtomDiag(h_int, gf_struct)[source]

Bases: object

Impurity solver of embedding space using triqs.atom_diag.AtomDiag from TRIQS.

Parameters:
  • h_int (triqs.operators.Operator) – Interaction Hamiltonian in the embedding space.

  • gf_struct (list of pairs [ (str,int), ...]) – Structure of the matrices. It must be a list of pairs, each containing the name of the matrix block as a string and the size of that block. For example: [ ('up', 3), ('down', 3) ].

ad

The TRIQS AtomDiag instance. See triqs.atom_diag.AtomDiag in the TRIQS manual.

get_rho_c(bl)[source]

Return c-electron density matrix.

Parameters:

bl (str) – Which block in gf_struct to return.

Returns:

The c-electron density matrix rho_c from impurity.

Return type:

numpy.ndarray

get_rho_cf(bl)[source]

Return the cf hybridization (off-diagonal) density matrix.

Parameters:

bl (str) – Which block in gf_struct to return.

Returns:

The c,f-electron hybridization density matrix rho_cf from impurity.

Return type:

numpy.ndarray

get_rho_f(bl)[source]

Return f-electron densitym atrix.

Parameters:

bl (str) – Which block in gf_struct to return.

Returns:

The f-electron density matrix rho_f from impurity.

Return type:

numpy.ndarray

gf_struct

Block matrix structure of c-electrons.

Type:

dict[tuple[str,int]]

gf_struct_bath

Block matrix structure of f-electrons.

Type:

dict[tuple[str,int]]

gf_struct_emb

Block matrix structure entire embedding space.

Type:

dict[tuple[str,int]]

property gs_energy

Return ground state energy of impurity problem.

gs_vector

Ground state of the embedding problem.

Type:

triqs.atom_diag.AtomDiag vacuum

h0_loc

Single-particle quadratic couplings of c-electron terms in :h_emb.

Type:

triqs.operators.Operator

h_bath

Bath terms in h_emb.

Type:

triqs.operators.Operator

h_emb

Embedding Hamiltonian. It is the sum of h0_loc, h_int, h_hybr, and h_bath.

Type:

triqs.operators.Operator

h_hybr

Hybridization terms in h_emb.

Type:

triqs.operators.Operator

h_int

Interaction Hamiltonian.

Type:

triqs.operators.Operator

overlap(Op, force_real=True)[source]

Calculate the expectation value of an operator against the ground state of the embedding problem.

Parameters:
  • Op (triqs.operators.Operator) – Operator to take expectation of.

  • force_real (bool, optional) – Whether the result should be real or complex.

Returns:

Expectation value.

Return type:

triqs.operators.Operator

rho_c

c-electron density matrix.

Type:

dict[numpy.ndarray]

rho_cf

Density matrix of hybridization terms (c- and f-electrons).

Type:

dict[numpy.ndarray]

rho_f

f-electron density matrix.

Type:

dict[numpy.ndarray]

set_h0_loc(h0_loc_matrix)[source]

Set the single-particle quadratic couplings of the c-electrons in the embedding Hamiltonian.

Parameters:

h0_loc_matrix (dict of ndarray, optional) – Quadratic terms as a matrix. Each key in dictionary must follow gf_struct.

set_h_bath(Lambda_c)[source]

Set the bath terms in the impurity Hamiltonian.

Parameters:

Lambda_c (dict of ndarray, optional) – Bath coupling. Each key in dictionary must follow gf_struct.

set_h_emb(Lambda_c, D, h0_loc_matrix=None, mu=None)[source]

Set the terms in the impurity Hamiltonian to solve the embedding problem.

Parameters:
set_h_hybr(D)[source]

Set the hybridization terms in the impurity Hamiltonian.

Parameters:

D (dict[numpy.ndarray]) – Hybridization coupling. Each key in dictionary must follow gf_struct.

set_h_int(h_int)[source]

Set the interaction terms of the c-electrons in the embedding Hamiltonian.

Parameters:

h_int (triqs.operators.Operator) – Interaction Hamiltonian in the embedding space.

solve()[source]

Solve for the groundstate in the half-filled number sector of the embedding problem.