triqs_dft_tools.block_structure.BlockStructure.pick_gf_struct_solver

BlockStructure.pick_gf_struct_solver(new_gf_struct)[source]

Pick selected orbitals within blocks.

This throws away parts of the Green’s function that (for some reason - be sure that you know what you’re doing) shouldn’t be included in the calculation.

To drop an entire block, just don’t include it. To drop a certain index within a block, just don’t include it.

If it was before:

[{‘up’:[0,1],’down’:[0,1],’left’:[0,1]}]

to choose the 0th index of the up block and the 1st index of the down block and drop the left block, the new_gf_struct would have to be

[{‘up’:[0],’down’:[1]}]

Note that as of version 3.1.x, the new structure itself will actually be stored as [{‘up’:1,’down’:1}].

For dropped indices, sumk_to_solver will map to (None,None).

Parameters:
new_gf_structlist of dict

new_gf_struct[ish][block]=list of indices in that block.