triqs_modest.embedding.Embedding

class triqs_modest.embedding.Embedding

The embedding class.

The embedding class encodes the mapping between impurities and the correlated space \(\mathcal{C}\) (cf. ModEST implementation notes). In particular, it maps the individual “blocks” within an impurity self-energy to a block and spin of the embedded self-energy function, which can then be upfolded (downfolded) to obtain the lattice self-energy and the local Green’s function.


Dispatched C++ constructor(s).

[1] (sigma_embed_decomposition: [int],
     imp_decompositions: [[int]],
     psi: ndarray[ImpBlockT, 2],
     sigma_names: [str])

[2] ()

[1] Construct an embedding object.


[2] Default constructor for reading from HDF5.


Parameters:
sigma_embed_decomposition[int]

Decomposition (list of block sizes) for \(\Sigma_{\text{embed}}\): \([ \alpha ] =\) block size. Note that the decompositions are given for \(\alpha\), \(\gamma\) index, and are independent of \(\sigma\).

imp_decompositions[[int]]

List of decomposition of solvers: [n_imp][\(\gamma\)] = block size.

psindarray[ImpBlockT, 2]

The mapping \(\psi[\alpha,\sigma]\) -> n_imp, \(\gamma\), \(\tau\).

sigma_names[str]

Names for the values of the \(\sigma\) index (e.g., “up”, “down”).

Attributes

imp_block_structure

Block structure (names and dimensions) for each impurity solver.

merge_embed_block_by_imp

Merge consecutive \(\alpha\) blocks belonging to the same impurity into a single block.

n_alpha

Number of blocks in \(\alpha\) for the \(\Sigma_{\text{embed}}\).

n_impurities

Number of impurities.

n_sigma

Number of blocks in \(\sigma\) for the \(\Sigma_{\text{embed}}\).

psi_map

The mapping table \(\psi\).

sigma_names

The names of the sigma indices.

slice_sigma

Slice the embedding to a single \(\sigma\) channel ("ud").

Methods

description

Summarize the embedding object.

drop_imp

Remove an impurity from the embedding table \(\psi\).

embed

Embed impurity data into the full correlated space.

extract

Extract impurity data from embedded arrays.

imp_decomposition

The impurity decomposition.

make_zero_imp_self_energies

Create zero-initialized impurity self-energies.

n_gamma

Number of blocks in \(\gamma\) for the \(\Sigma_{\text{imp}}\) [imp_idx].

replace_imp

Redirect all \(\psi\) entries from one impurity to another.

split_imp

Split impurity imp_idx using a predicate.

split_imp_block

Split a single \(\gamma\) block of an impurity into multiple blocks.

swap_sigma

Swap the \(\sigma\) (spin) assignment for \(\alpha\) block alpha.