TRIQS/TRIQS — Issue #32: Tail is not set properly, when GF is multiplied with C number  [from Aichhorn]
Author: parcollet
Created: 2012-02-15 19:40:26+00:00
State: open

With a hybridisation called De, having the tail,
De['up0']._tail =
(1.26244,0) /Om^1 + (2.33916,0) /Om^2 + (15.3252,0) /Om^3 + (66.9588,0) /Om^4 + (584.694,0) /Om^5 + (2131.61,0) /Om^6 + (20329.8,0) /Om^7 + (-4.99864e+12,0) /Om^8
the following happens:
(0.0*De)['up0']._tail = (-4.99864e+12,0) /Om^8
or similar:
(0.5*De)['up0']._tail =
(0.631222,0) /Om^1 + (1.16958,0) /Om^2 + (7.66262,0) /Om^3 + (33.4794,0) /Om^4 + (292.347,0) /Om^5 + (1065.8,0) /Om^6 + (10164.9,0) /Om^7 + (-4.99864e+12,0) /Om^8

The tail Om^8 is not set properly. It is minimal in this example, but a bug.
Really problematic is the following: Let G be now the *inverse* of a Greens function:
(0.0*G)['up0']._tail =
(1,0) Om^1 + (0,-0) + (0,-0) /Om^1 + (0,-0) /Om^2 + (0,-0) /Om^3 + (0,0) /Om^4 + (0,-0) /Om^5 + (0,0) /Om^6 + (0,0) /Om^7 + (4.99883e+12,-0) /Om^8
Not only the highest power is not set, but also the linear term is not set to zero!!!
We have to treat the boundaries for lowest/highest orders in the tail expansion correctly!