# Generating wavepackets in MATLAB

53 views (last 30 days)
Sergio Manzetti on 25 Jan 2018
Edited: Sergio Manzetti on 31 Jan 2018
Hi, I am trying to generate wavepackets for a complex function using MATLAB, however, I am not sure on the approach. Does MATLAB Forum have a suggestion?
Thanks!

Youssef Khmou on 26 Jan 2018
Among the methods for generating wavepackets is linear superposition, considering the spatial dimension x, an elementary complex wavepacket can be generated as follows:
x=-20:0.005:20;
w=20;
dw=0.1;
y=exp(j*w*x)+exp(j*(w-dw)*x)+exp(j*(w+dw)*x);
plot(x,real(y));
the parameter dw is the frequency difference between the components, and has an impact on coherence length.

Sergio Manzetti on 30 Jan 2018
Thanks Youssef. One particular feature I was looking for was to find the wavepacket for the Schrödinger eqn. I have not found such an example on software tutorial etc.
Youssef Khmou on 31 Jan 2018
As an illustrative example, consider the 1D wavefunction of particle localized at x0=5 at t=0 with variables w and k:
x=0:0.01:10;
x0=5;
w=2;
k=2;
t=0;
the waveform can be generated by:
f=cos(k*(x-5)-w*t).*exp(-(k*(x-5)-w*t).^2);
for different values of t=1,2,..., you can compute the corresponding wavefunction.
Sergio Manzetti on 31 Jan 2018
Thanks for this Youssef, this was indeed clear. I will try it out!