Kramers–Kronig Relations
How much of the real response can a finite imaginary-response spectrum determine? Reconstruct a known Lorentz model, then change the spectral window and the supplied tails.
Causality, absorption and dispersion
A material cannot respond to a field before the field arrives. That sounds too obvious to be useful, but it has a sharp consequence: the real part of a response function, which sets refraction, and the imaginary part, which sets absorption, are not independent. Know one at every frequency and you can compute the other. This page does that for a Lorentz oscillator whose answer is known exactly, then shows what goes wrong when the spectrum is known only over a window. In practice it always is.
Why causality links the two parts
Here is the electric susceptibility: how strongly the material polarizes in response to a field, with . If a material responded instantly, would be one real constant, with no dispersion and no absorption. Real materials lag, so depends on frequency. The lag has a hard edge: the response to a kick is exactly zero before the kick. Split that response into a part that is even in time and a part that is odd. The even part gives and the odd part gives . For their sum to vanish at every earlier time, the two parts must cancel there, so each one fixes the other. The integral below is that bookkeeping written in frequency.
The polarization is built from the field at earlier times only:
The transform uses this site's convention. It starts at because the response to a kick cannot come before the kick. Because of that, is analytic (complex-differentiable, so it has no poles there) in the upper half of the complex frequency plane. Cauchy's theorem then ties its values on the real axis together, provided at high frequency (a constant background such as is subtracted first). A real response folds the integral onto positive frequencies; the derivation below gives the steps. The result is
marks the Cauchy principal value, explained below.
The reference is , with frequencies in : one resonance at with damping 0.3. Its absorption is positive and is 10 at resonance.
What the principal value does
The weight blows up at and changes sign there. Absorption just above the evaluation frequency pushes up; absorption just below pushes it down. The principal value takes both sides symmetrically, so the two divergent halves cancel. It also explains the shape of the reference curve. At the absorption line sits just above the evaluation frequency, where the weight is large and positive, so peaks at 5.26. At 3.15 the line sits just below, and drops to −4.76. Both extremes lie about half a linewidth from the centre.
The code does not trust quadrature with that cancellation. For an observed window from to it evaluates
The first integrand is smooth, so Simpson's rule handles it. The logarithm is the singular part, integrated exactly. Tails outside the window are added only if you supply them.
Why a finite window is a problem
The integral runs over all frequencies. A measurement does not, and the relation cannot tell that anything is missing. Setting makes this concrete:
An integral constraint like this over the whole spectrum is called a sum rule. The static value of the Lorentz model is exactly 1. Integrating its absorption up to 100 gives 0.999999. Absorption above 8 supplies 0.0013 of that; absorption above 4 supplies 0.023.
Missing absorption above the window removes a positive term, so the reconstruction comes out low. Well below the missing band, and the loss is nearly a constant offset, the kind of term usually absorbed into the constant when is fitted. The reference on this page has no such background. Closer to the upper edge the weight grows and the offset stops being constant. Missing absorption below the window pulls the other way. A smooth reconstructed curve does not show which of these happened.
Derivation from causality and linear response
Maxwell's equations need one material input, . For a linear, time-invariant, isotropic medium, is a convolution in time. With fields proportional to it becomes a product, so . The rest uses only linearity, causality and a real response, not the field equations.
1. Causality and analyticity. For , the factor has modulus . For an integrable response the integral converges for and can be differentiated for , so is analytic in the upper half-plane and continuous up to the real axis; the same integrability makes as . Physically, charges with mass cannot follow an arbitrarily fast field. An instantaneous part of the response would break this and leave a constant, which is subtracted first. Finally is real, because a real field produces a real polarization, and for real
2. Cauchy's integral. Fix a real and integrate around a closed path in the complex plane (a contour): along the real axis, over a small semicircle of radius that passes above , and back counterclockwise along a large semicircle of radius in the upper half-plane. No singularity is enclosed, so the total is zero. The large arc vanishes as because . The small arc is half a clockwise circle around a simple pole, where blows up like one over the distance, and contributes as . The two straight pieces become the principal value, the integral with a symmetric gap around the pole:
Setting the total to zero gives
Write and compare real and imaginary parts:
The signs belong to the convention; with they swap. They agree with the principal-value picture above: positive absorption just above raises .
3. Folding onto positive frequencies. In the negative-frequency half of the first integral, replace by and use that is odd. That half becomes , and gives the relation used on this page. The same step with even gives the inverse:
4. Removing the pole. Partial fractions give an antiderivative for the bare weight:
It is zero at and tends to zero as . The contributions from the two sides of the pole, and its negative, cancel, so . Subtracting times this zero from the numerator changes nothing, but the new numerator vanishes at , so the integrand is finite there. On a window containing the subtracted term no longer integrates to zero. Evaluating the antiderivative between and gives
which is the logarithm in the singularity-subtracted integral.
5. The sum rule. Setting in the folded relation removes the pole and leaves the static sum rule. This needs to be integrable at zero. A conductor's Drude response does not decay: after a kick the free charges keep drifting, and . That puts a pole on the contour at , so it is taken out before step 2. The Lorentz reference has its poles at , in the lower half-plane, and decays as .
Three things to try
The default window. The page opens with absorption known from 0.1 to 8 and zero outside. At 81 sampled frequencies across the central 72% of the window, the largest error is 0.0028, at , where the reconstruction gives −0.2358 against −0.2329. The absorption above 8 accounts for essentially all of it: its contribution is 0.0028 there and 0.0014 at the lower end of that range, 1.21. Doubling the quadrature intervals changes the result by about , so this is window error, not grid error. Now move the window end to 30. The reported error falls to , but the scored central range now starts at 4.3, so the resonance is no longer measured. Near the error is still about 0.002: the same 512 intervals are spread over a window almost four times wider and no longer resolve the line. At 1024 intervals it drops to about . A wider window fixes the tails and can quietly break the grid.
A window around the resonance. Set the window to 2–4. The peak is still inside, yet the largest error rises to 0.068, at . Choose Supply Lorentz-model tails and it drops to ; what remains is the absorption above 100, where the supplied tails stop. With a tail scale of 0.5 it is 0.034: the relation is linear in , so half the missing absorption leaves half the error. Supplying the correct tails is a reliable way to get the right answer, provided you already know it.
Too few intervals. Return to the default window and choose 64 intervals. The error jumps to 0.15 near the resonance, at , and doubling the intervals changes the result by a similar 0.15. The intervals are 0.12 wide, and Simpson's rule fits one parabola to every two of them. The absorption line is 0.3 wide at half its height, so one parabola spans most of it. Here the convergence check catches the problem. In the first example it could not, because a well-converged integral over the wrong window is still wrong.
Reconstruction settings
Known reference: , with frequencies expressed in . Reconstruct from ; the background is separate.
Reconstruction and error
Observed window: . Outside it, the response is assumed zero. This assumption is not a measurement.
Analytic reference Reconstructed
Sample values
| Angular frequency (10¹⁵ rad/s) | Analytic reference (χ₁) | Reconstructed (χ₁) |
|---|---|---|
| 0.49500 | 1.0277 | 1.0264 |
| 0.70830 | 1.0584 | 1.0570 |
| 0.92160 | 1.1029 | 1.1016 |
| 1.1349 | 1.1647 | 1.1634 |
| 1.3482 | 1.2491 | 1.2477 |
| 1.5615 | 1.3646 | 1.3633 |
| 1.7748 | 1.5258 | 1.5244 |
| 1.9881 | 1.7585 | 1.7571 |
| 2.2014 | 2.1133 | 2.1118 |
| 2.4147 | 2.6988 | 2.6974 |
| 2.6280 | 3.7649 | 3.7635 |
| 2.8413 | 5.2607 | 5.2593 |
| 3.0546 | -3.1350 | -3.1365 |
| 3.2679 | -3.9972 | -3.9987 |
| 3.4812 | -2.5948 | -2.5963 |
| 3.6945 | -1.8317 | -1.8332 |
| 3.9078 | -1.3867 | -1.3883 |
| 4.1211 | -1.1009 | -1.1025 |
| 4.3344 | -0.90363 | -0.90529 |
| 4.5477 | -0.76008 | -0.76177 |
| 4.7610 | -0.65140 | -0.65314 |
| 4.9743 | -0.56657 | -0.56836 |
| 5.1876 | -0.49871 | -0.50056 |
| 5.4009 | -0.44335 | -0.44527 |
| 5.6142 | -0.39744 | -0.39943 |
| 5.8275 | -0.35882 | -0.36090 |
| 6.0408 | -0.32596 | -0.32814 |
| 6.2541 | -0.29771 | -0.30001 |
| 6.4674 | -0.27321 | -0.27565 |
| 6.6807 | -0.25179 | -0.25440 |
| 6.8940 | -0.23293 | -0.23576 |
| 7.1073 | -0.21623 | -0.21934 |
| 7.3206 | -0.20135 | -0.20484 |
| 7.5339 | -0.18802 | -0.19210 |
Maximum absolute error over the central 72% of the input window: . Change on doubling the quadrature intervals: 9.8681e-12. The outer 5% on each side is not plotted; edge estimates are particularly sensitive to missing data. Grid convergence does not remove window error.
Integral and assumptions
The relation and the singularity-subtracted window integral are given in the introduction above. Composite Simpson quadrature handles the smooth remainder; the singular part is integrated analytically. In the code, and the logarithmic term is written , which is equivalent. The derivation assumes a linear, time-invariant medium with an integrable real response, at high frequency and no pole at .
Only the known bound Lorentz example is supported. This is not arbitrary experimental inversion. Zero-frequency Drude poles need additional treatment. Neither finite data nor a smooth reconstructed curve uniquely fixes the missing spectrum.
History of the method
Ralph Kronig published the first known dispersion relation in 1926, in a paper on the dispersion of X-rays. It gave the refractive index , not the susceptibility, in terms of the atomic absorption coefficient; the abstract calls it a general formula. Hendrik Kramers presented a related result at the 1927 physics congress in Como. According to Craig Bohren's historical review, Kramers obtained both members of the pair, for the real and imaginary parts of the atomic polarizability, whereas Kronig gave only one relation. Kramers then asked, without showing it, whether the same connection holds for the susceptibility of a denser medium.
Bohren also notes that neither paper mentioned causality or signal speed. Both started from specific models of an atomic gas, built on the Sellmeier oscillator formula, whose factor survives in the modern relation. He identifies a 1942 Dutch-language paper by Kronig as a model-independent derivation from a polarization response that vanishes for negative time, though even there causality is not named explicitly.
John Toll's 1956 paper in Physical Review is, in Bohren's words, a frequently cited paper on the foundations of causality and dispersion relations. Bohren disputes one of its historical statements: that Kramers had used the relation to show a signal cannot travel faster than light.
Method context and references
Causality connects dispersion and absorption, but using the relation requires information beyond a measured window. M. S. Dresselhaus, Optical Properties of Solids, MIT course notes, section 6.1 derives the principal-value relation, singularity subtraction and extrapolation requirements (printed pages 58–63; PDF pages 62–67). The finite-window form with the logarithm, the analytic example and the numerical experiment were derived and implemented for this page.
R. de L. Kronig, On the theory of dispersion of X-rays, Journal of the Optical Society of America 12(6), 547–557 (1926). Only the publisher's abstract was read; the full text is behind a paywall.
H. A. Kramers, La diffusion de la lumière par les atomes, Atti del Congresso Internazionale dei Fisici, Como–Pavia–Roma, vol. 2, 545–557 (Zanichelli, Bologna, 1927). Not consulted; citation details and the description above follow Bohren, who also notes an English translation in D. ter Haar, Master of Modern Physics: The Scientific Contributions of H. A. Kramers (Princeton University Press, 1998), Appendix D.
Craig F. Bohren, What did Kramers and Kronig do and how did they do it?, European Journal of Physics 31(3), 573–577 (2010). A historical review, read in full; the history section follows it. It also gives the static sum rule used in the introduction.
John S. Toll, Causality and the dispersion relation: logical foundations, Physical Review 104(6), 1760–1770 (1956). Metadata only; the paper was not read, and its content is described here as reported by Bohren.
Calculation source code · Implementation and validation notes