# How extract phase angle from reflectance using Kramers-Kronig

1. Aug 3, 2011

### shayu

I try to extract optical constants (complex refractive index) from the spetral reflectance data - R(omiga), the common method is using Kramers-Kronig relations to calculate the Phase information of the reflection - Psi(omiga), then according to the normal reflection coefficients, the complex refractive index can be extracted. But in the practice, I found the results didn't look appropriate, so i guess the phase angle-Phi(omiga) may be calculated uncorrectly, and can not find the mistake for a long time. So, indeed need your expert advice and help, if you have the right tool, can you calculate the results for me? thank you.
Reply for me also can mail to : shayu296@gmail.com , I will be appriciate for your advice.

the main calculate formation as listed below:

The reflectance data is from 200nm to 2500nm measured by spectrophotometer, as listed below.
View attachment Reflectance data.xls

Why the calculated phase angle have positive and negtive values both? that is also the reason why k have positve and negtive values both. I thought maybe the wavelength region is not wide enough, but from some refrences it should can be calculated. Is there something Wrong in my code? but i think it is right ... I am confused by the Kramers-Kronig calculation...

Matlab code:
Code (Text):
function[Phi temp]=refphase2(R)
% %2011-07-20
% Phase angle calculation using Kramers-Kronig relation.
% R - measured reflectance data, column 1 is wavelength, column 2 is reflectance
% Phi is the phase angle
% Ref:      Kramers-Kronig Transform and Applications.pdf
%           Stern, F. 1963. Elementary Optical Properties of Solids. Solid State Phys. vol15:327-340.
% google books: Frederick Seitz,Solid State Physics: Advances in Research and Applications, P337

tic;
wavlen0=length(R);  %length of wavelength
wav0=1e7./R(:,1);   %wavelength->wavenumber   nm -> cm-1
ref0=R(:,2);   %reflectance
%interplation
wav=[wav0(1):2*sign(wav0(end)-wav0(1)):wav0(end)]';  %new interval 0.25cm-1
ref=interp1(wav0,ref0,wav,'spline');  %reflectance interplation
wavlen=length(ref);

Phi=zeros(wavlen0,1);  %phase angle initialization
temp=[];
for i=1:wavlen0-1
% integration using discrete summing
intsum=0;
g=i
for j=1:wavlen-1
%%%%% if 'wav(j)=wav0(g)'  then 'wav(j+1)' replace 'wav(j)', to aviod 'log(0)=-inf'
if wav(j)==wav0(g)
temp(j,i)=(log(ref(j+1))-log(ref(j)))*log(abs((wav(j+1)-wav0(g))/(wav(j)+wav0(g))));
else
temp(j,i)=(log(ref(j+1))-log(ref(j)))*log(abs((wav(j)-wav0(g))/(wav(j)+wav0(g))));
end
intsum=intsum+temp(j,i);
end
Phi(i)=(1/2*pi)*intsum;
end
Phi(wavlen0)=Phi(wavlen0-1);
Phi(1)=2*Phi(2)-Phi(3);
toc
end

Last edited: Aug 3, 2011
2. Aug 3, 2011

### DrDu

I don't understand much of this, however, looking at your excel file, it appears to me as if n and k are interchanged as the graph of k has a dispersive shape and n an absorptive one. I suppose, there is somehow a factor of pi/2 missing in your phase angle.

3. Aug 3, 2011

### DrDu

Btw. Shouldn't there be a cos(phi) in the formula for n?

4. Aug 3, 2011

### shayu

the formula has no problem, it can be found in many reference...

5. Aug 3, 2011

### shayu

complex refractive index always in the form n^=n+i*k, for the real part n is the refractive index, imaginery part k is known as absorptive index (absoption coefficient alpha=4*pi*k/lambda).
how to say the calculated k has a dispersive shape and n an absorptive one? the measured material is Cr2O3, commonly its n should be greater than 1, and k is great than 0, attached picture is the n&k of some meterial (SubPc). why the calculated k is less than 0 and n is less than 1?

#### Attached Files:

• ###### SR092F3.jpg
File size:
14.9 KB
Views:
365
Last edited: Aug 3, 2011
6. Aug 9, 2011

### shayu

Recent days, i have found some references about the phase extraction as so far, some important steps may include:
(i) spectrum extrapolation (equivalent to delta_Phi approximation); (Ref. 1)
(ii) the phase 'Phi' should add with a ' phi(0) ', which has the value ' -pi+abs(delta) for abs(delta)<<1' ; (Ref.2)
(iii) phase retrieval problem - 'convergence' , should be removed by normalization and 'zeros' Blaschke factor; (Ref.3)
But i also doubt about the phase calculation problem, does the three different steps mentioned above have some consistency??

Any one to discuss these problems? Hope you to give me some advise....

Ref:
[1]
P. O. Nilsson and L. Munkby. Investigation of errors in the Kramers-Kronig analysis of reflectance data. ZEITSCHRIFT FÜR PHYSIK B CONDENSED MATTER. Volume 10, Number 3, pp.290-298.
[2]
Nash P.L.; Bell R.J.; Alexander R.. On the Kramers-Kronig relation for the phase spectrum. Journal of Modern Optics, Volume 42, Number 9, September 1995 , pp. 1837-1842(6).
[3]
P. Grosse and V. Offermann. Analysis of reflectance data using the Kramers-Kronig Relations. APPLIED PHYSICS A: MATERIALS SCIENCE & PROCESSING. Volume 52, Number 2, pp.138-144.

Last edited: Aug 9, 2011
7. Aug 9, 2011

### DrDu

When analyzing e.g. NMR spectra, the programs usually allow you to change the phase offset continuously so as to make k positive on the whole axis. (n is not bound to be >1, it can also be smaller 1 in some regions).

8. Aug 10, 2011

### shayu

many thanks for you, DuDu, your suggestion about ' adding a phi(0) ' does make sense, and it matched with one of the references, but that phi(0) is '-pi+abs(delta)', and the 'delta' is depending on the material which is measured, and it is unknow to me. So, if follow your suggestion, i should find a suitable physical assumption for add a phi(0)=+-pi/2, could you tell my why +-pi/2 but +-pi in detail?

9. Aug 11, 2011

### DrDu

It is just a guess given that your data to my eye seem to have more a dispersive lineshape in the case of k and an absorptive form in the case of n (and a factor of pi/2 would reverse this).
Now just a speculation: Wouldn't be that factor phi(0) be best which would maximize the integral of k over frequency (eventually weighed with some power of frequency)?