# SparseRecursionSelfEnergy¶

class SparseRecursionSelfEnergy(save_self_energies=None, tolerance=None, maximum_iteration=None, sparse_threshold=None, storage_strategy=None)

Self-energy calculator based on the Sparse Recursion method. This method is an iterative scheme for getting self energies, with convergence $$O(2^N)$$

Parameters: storage_strategy (SaveInMemory | StoreOnDisk | NoStorage) – The way self energies are stored between iterations. Default: SaveInMemory() tolerance (float > 0) – The tolerance of convergence of the self energies before termination of the recursion. Default: 1e-13 maximum_iteration (int > 0) – The maximum number of recursion steps allowed before termination. Default: 400 sparse_threshold (float > 0) – Self energies (in Hartree) smaller than this value treated as 0 when storing as sparse matrix. Default: 1e-12 save_self_energies – Deprecated since version 2017.0: Use storage_strategy instead.
maximumIteration()
Returns: The maximum number of recursion steps. int
saveSelfEnergies()

Deprecated since version 2017.0.

sparseThreshold()
Returns: Values treated as 0. float
storageStrategy()
Returns: The way self energies are stored between iterations. SaveInMemory | StoreOnDisk | NoStorage
tolerance()
Returns: The tolerance of convergence. float

## Usage Examples¶

Define that the self energies on the complex contour are calculated with the recursion method, and the self energies are not saved.

device_algorithm_parameters = DeviceAlgorithmParameters(
self_energy_calculator_complex=SparseRecursionSelfEnergy(storage_strategy=NoStorage()),
)


More examples on how to use the storage_strategy parameter can be found in the Usage Examples of RecursionSelfEnergy.

## Notes¶

The SparseRecursionSelfEnergy uses the iterative scheme by Lopez, Lopez and Rubio [dLSLSR85] for calculating the self energy matrix. The sparse recursion method is identical to the recursion method provided by RecursionSelfEnergy, but exploits inherent sparsity. This provides increased performance for all but the smallest systems.

## References¶

 [dLSLSR85] M. P. Lopez Sancho, J. M. Lopez Sancho, and J. Rubio. Highly convergent schemes for the calculation of bulk and surface Green functions. J. Phys. F: Metal Physics, 15(4):851, 1985. URL: http://stacks.iop.org/0305-4608/15/i=4/a=009.