-
Notifications
You must be signed in to change notification settings - Fork 72
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hilbert transform and normalization #19
Comments
OK, we could put an extra flag in the constructor: normalize_dos defaulted to True. This would keep backward compatibility. |
On 09/30/2013 11:54 AM, Michel Ferrero wrote:
is there a way for HT() to know about g.N1 and g.N2 ? |
One would have to change the way HilbertTransform works right now and make it a descriptor for the Green's functions. This would actually make some sense. It's easy to do but it won't be possible to do the assignment in 2 steps like above. One would have to write directly something like:
This breaks the API and older scripts won't work. We can do it when we move to TRIQS 1.1.0. @parcollet, @tayral Do we do it? |
Do we want to do this for v1.2? |
In principle there is an easy workaround (by normalizing the density and multiplying by the norm in the end. In any case the doc should be clear about the precondition on the density. I will take a look asap. |
How about this old issue? Has the Hilbert transform been rewritten in c++ yet? I still think it would be nice to have a general Hilbert transform without a requirement on the norm of the rho(\omega). |
Not yet... To be done. |
Hi,
The current Hilbert transform assumes that \rho(\epsilon) is a dos object, i.e. that it is normalized. One could want, however, to perform the Hilbert transform of other objects, e.g. objects that are not normalized (for instance to find the Kramers-Kronig conjugate of Re F(\omega) where F(\omega) is analytical...). Moreover, the mathematical definition of a Hilbert transform does not require normalization.
I would thus suggest switching off the __normalize() method in dos/hilbert_transform.py. I tried and it gives correct results.
I also think that \Sigma should be =0 by default.
Best
Thomas
The text was updated successfully, but these errors were encountered: