# Expansion of a plane wave in spherical waves

1. Aug 1, 2008

### clive

I have to expand a plane wave in spherical waves by using

$$e^{i\vec{k}\cdot\vec{r}}=\sum_{n=0}^{\infty}i^n (2n+1)P_n(cos \theta) j_n(kr)$$

I wrote a matlab code (pasted below) in order to check this by plotting the two sides of the eq above. The graphs are similar but different. I do not know what is wrong with this .... I suppose there are some missing coefficients somewhere....????

clear all;
close all;
clc;

kr=0.1*i+6;

x=linspace(-1, 1, 100);

for(ii=1:100)
F_plane(ii)=exp(i*abs(kr)*x(ii));
end

for(ii=1:100)
F_approx(ii)=0;
for(order=0:150)
ASSOCLEG=legendre(order, x(ii));
F_approx(ii)=F_approx(ii)+i^order*(2*order+1)*besselj(order, abs(kr))*ASSOCLEG(1);
end
end

plot(x, real(F_plane), 'or', x, imag(F_plane), 'ob', x, real(F_approx), '-r', x, imag(F_approx), '-b')

Last edited: Aug 1, 2008
2. Aug 21, 2008

### AnilK

I have the same problem, does anyone what is missing here?

3. Aug 21, 2008

### Staff: Mentor

Is this for school or for work? I can move the thread to the Homework Help forums if its homework/coursework.

4. Aug 21, 2008

### AnilK

This is for school

Last edited: Aug 21, 2008
5. Aug 22, 2008

### AnilK

I figured out that the problem is that in your code you are using besselj in matlab which is ordinary bessel function of first kind (J_n). You should have used spherical bessel functions j_n instead in this expansion.

The spherical Bessel functions j_n are given in terms of ordinary Bessel functions J_n by:

j_n(x) = sqrt(pi/(2*x)) J_{n+1/2}(x)

This would solve it