# Numerical analytic continuation for Green's function

Recently, I happened to hear about the possibility of doing analytic continuation numerically. That sounds attractive for the ubiquitous $\mathrm{i}\omega_n\rightarrow\omega+\mathrm{i}0^+$ procedure, via which we go from Matsubara Green's functions to retarded ones.

So my question is about any infomation on such numerical analytic continuation algorithms. How is it done? Or, at least, where can I find any detailed description of it? Thanks in advance!

To be more specific, in my problem, I can evaluate a Matsubara correlation function at a series of Bose Matsubara frequencies. I want to find a way to obtain the analytic continuation, i.e., correlation function in terms of real energy/frequency. Is there any widely accepted simple recipe for this?

• can you add a link or a reference for this, it sounds interesting? – Nikos M. Jun 3 '14 at 8:14
• Can you be more specific about what you actually want to treat? Otherwise you will get the same list of methods that you find in the publication i gave you: 'Pade approximations, singular value decomposition, stochastic regularization and sampling schemes.' I guess that nobody is going/able to elaborate on all of them. – Fitzgerald Creen Jun 4 '14 at 12:21
• @FitzgeraldCreen Thank you a lot for your answer! Is this version specific enough? – xiaohuamao Jun 4 '14 at 16:30
• When you have a numerical expression without statistical errors like from some perturbation scheme where you only have to do an integral or momentum sum numerically you should try Pade first (the widely accepted, simple and fallable recipe :). There exist implementations of this already e.g. in the TRIQS library. Installing TRIQS is a hassle but once you have done it you can easily use its Pade implementation. Check out the documentation: ipht.cea.fr/triqs/reference/python/green/block/… – Fitzgerald Creen Jun 4 '14 at 17:01

## 1 Answer

There exists a variety of options for this task but let me stress first that this is an extremely complicated and difficult issue that is still subject of current research because analytical continuation is an ill posed problem!

1) The 'analytical' analytical continuation can be performed when the function $f(\mathrm i\omega)$ under consideration is a rational function of $\mathrm i\omega$. So $$f(\mathrm i\omega)=\frac{1}{\mathrm i\omega}$$ can be continued to the complex plane $\mathrm i\omega \rightarrow z\in\mathbb C$ while $$f(\mathrm i\omega)=\frac{e^{\mathrm i\omega\beta}}{\mathrm i\omega}$$ is not a rational function of $\mathrm i\omega$ and making the replacement here is a mistake. Instead one needs to evaluate the exponential first and find $e^{\mathrm i\omega\beta}=\pm 1$ depending on the statistics.

2) Directly inferred from this replacement rule comes the expansion of a function in a finite Laurent series $$f(z)=\sum^{m_2}_{n=m_1} a_n z^n,\;\; m_1,m_2\in\mathbb Z$$ where the coefficients may be calculated from the numerical values known at $m_2-m_1$ Matsubara energies.

3) One of the oldest methods to do a numerical analytical continuation is the Pade approximation. The function in question is expanded in a continued fraction $$f(z)=b_0+\frac{a_1z}{1-\frac{a_2z}{1-\frac{a_3z}{1-...}}}.$$ The coefficients can be computed from a Pade table, see http://en.wikipedia.org/wiki/Pad%C3%A9_table

Method 1) is exact and other than for almost trivial calculations of little practical value. 2) and 3) suffer from cutoff effects due to the limited amount of available Matsubara points at which the function value might also have a numerical error as is the case for data from Quantum Monte Carlo calculations. But in fact analytical continuation is very volatile towards cutoff and noise effects. This is where physical considerations have to be accounted for.

To tackle the cutoff one can approximate the tail (large $\mathrm i\omega$ or respectively $z$ expansion) of the function with an analytical form that can often times be computed exactly from the many body problem or general physical necessities, e.g. the 1-Particle Green's function of a fermionic system always has the form $\frac{1}{z}+\frac{a_1}{z^2}+...$. The tail can be used to compute an arbitrary number of expansion coefficients but keep in mind that the interesting low energy spectrum of your system is strongly influenced by small Matsubara energies and less so by the tail so from computing a large number of coefficients from the tail one gains little to nothing. The treatment of statistical noise is even more delicate than the cutoff and the reason why a lot of people try to avoid calculating on the Matsubara axis altogether.

4) A prominent method for noisy data is the maximum entropy method about which you can read more here http://arxiv.org/pdf/1001.4351v1.pdf where you will also find references to alternative techniques.

• A condensed-matter reference of analytic continuation with Pade: H. Vidberg and J. Serene, J. Low Temp. Phys. 29, 179192 (1977). – Adam Jun 3 '14 at 22:44
• Thanks a lot for your nice answer! Is the input of these methods, say Pade or maximum entropy, the calculated data of $f(\tau)$ or $f(i\omega_n)$? $\tau$ is the imaginary time. – xiaohuamao Jul 15 '14 at 9:16
• All i have written here refers to frequencies. For Pade i think you have to stick to the frequency picture, about MaxEnt i am not sure. – Fitzgerald Creen Jul 25 '14 at 9:49