You are on page 1of 9

UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE 240: INTRODUCTION TO LINEAR DYNAMICAL SYSTEMS

Gabriel Hugh Elkaim Fall 2005

Quantum Mechanics Example


wave function and Schrodinger equation discretization preservation of probability eigenvalues & eigenstates example

Quantum mechanics
single particle in interval [0, 1], mass m potential V : [0, 1] R : [0, 1] R+ C is (complex-valued) wave function interpretation: |(x, t)|2 is probability density of particle at position x, time t (so
1 0

|(x, t)|2 dx = 1 for all t)

evolution of governed by Schrodinger equation: 2 2 = V h ih = H 2m x where H is Hamiltonian operator, i = 1 1

Discretization

lets discretize position x into N discrete points, k/N , k = 1, . . . , N wave function is approximated as vector (t) CN 2 x operator is approximated as matrix 2 1 1 2 1 2 2 1 2 1 =N .. .. .. . . . 1 2 so w = 2 v means wk =

(vk+1 vk )/(1/N ) (vk vk1 )(1/N ) 1/N

(which approximates w = 2 v/x2 ) discretized Schrodinger equation is (complex) linear dynamical system = (i/h )(V ( h/2m)2 ) = (i/h )H where V is a diagonal matrix with Vkk = V (k/N ) hence we analyze using linear dynamical system theory (with complex vectors & matrices): = (i/h )H
)tH solution of Shrodinger equation: (t) = e(i/h (0) (i/h )tH matrix e propogates wave function forward in time t seconds (backward if t < 0)

Preservation of probability
d dt
2

= = = = =

d dt + ((i/h )H ) + ((i/h )H ) (i/h ) H + (i/h ) H 0

(using H = H T RN N ) hence, (t) 2 is constant; our discretization preserves probability exactly )tH U = e(i/h is unitary, meaning U U = I unitary is extension of orthogonal for complex matrix: if U CN N is unitary and z CN , then U z 2 = (U z ) (U z ) = z U U z = z z = z 2 2

Eigenvalues & eigenstates


its eigenvalues 1 , . . . , N are real (1 N ) its eigenvectors v1 , . . . , vN can be chosen to be orthogonal (and real) from Hv = v (i/h )Hv = (i/h )v we see: eigenvectors of (i/h )H are same as eigenvectors of H , i.e., v1 , . . . , vN eigenvalues of (i/h )H are (i/h )1 , . . . , (i/h )N (which are pure imaginary) eigenvectors vk are called eigenstates of system eigenvalue k is energy of eigenstate vk
)k t for mode (t) = e(i/h vk , probability density )k t |m (t)|2 = e(i/h vk 2

H is symmetric, so

= |vmk |2

doesnt change with time (vmk is mth entry of vk )

Example
Potential Function V (x)
1000 900 800 700 600

V PSfrag replacements

500 400 300 200 100 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

x potential bump in middle of innite potential well (for this example, we set h = 1, m = 1 . . . )

lowest energy eigenfunctions


0.2 0 0.2 0 0.2 0 0.2 0 0.2 0 0.2 0 0.2 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

PSfrag replacements

0 0.2 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

x potential V shown as dotted line (scaled to t plot) four eigenstates with lowest energy shown (i.e., v1 , v2 , v3 , v4 ) now lets look at a trajectory of , with initial wave function (0) particle near x = 0.2 with momentum to right (cant see in plot of ||2 ) (expected) kinetic energy half potential bump height

0.08 0.06 0.04 0.02 0 0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

0.15

PSfrag replacements

0.1

0.05

0 0

10

20

30

40

50

60

70

80

90

100

eigenstate top plot shows initial probability density |(0)|2 bottom plot shows |vk (0)|2 , i.e., resolution of (0) into eigenstates time evolution, for t = 0, 40, 80, . . . , 320: |(t)|2

PSfrag replacements x cf. classical solution: 5

particle rolls half way up potential bump, stops, then rolls back down reverses velocity when it hits the wall at left (perfectly elastic collision) then repeats
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2

PSfrag replacements

0.1 0 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 x 10 2


4

t
N/2

plot shows probability that particle is in left half of well, i.e.,


k =1

|k (t)|2 , versus time t

MATLAB code

% quantum mechanics example for cmpe240 % ----------------------------------% % Symmetric Potential

% define matrix that is discretized % version of Laplacian, ie, del squared operator % ---------------------------------------------n=100; deltax=1/n; x=0:deltax:1; delsq = toeplitz([-2 1 zeros(1,n-1)]); %not including 1/deltax^2 term

% define potential function % ------------------------Vmax=.1; v1=0*ones(1,40); v2=Vmax*sin((0:20)/20*pi).^2; v3=0*ones(1,40); v=[v1,v2,v3]; do=1; if do % hamiltonian operator % -------------------hbar=1; m=1; H = -hbar^2/(2*m)*delsq + diag(v); A = 1/(i*hbar)*H; % finding energies of eigenstates [V,D]=eig(H); [E,index]=sort(diag(D)); %sort energies V=V(:,index); %sort eigenfunctions for m=1:(n+1); %normalizing eigenfunctions V(:,m)=V(:,m)/norm(V(:,m)); end; % % % % % initial wave fct ---------------stationary wave packet; Psi0 = exp(-(x-0.2).^2/0.1^2); moving wave packet; k=2*pi/0.2; Psi0=exp(-(x-0.2).^2/0.1^2).*exp(i*k*x); Psi0=conj(Psi0);

Psi0 = Psi0/norm(Psi0); meanE=Psi0*H*Psi0; Alpha=V*Psi0; absAlpha=abs(Alpha).^2; fprintf(Mean energy is %f\n, meanE); fprintf(Vmax is %f \n\n, Vmax); % time evolution % -------------deltat=40; M=expm(deltat*A); PsiMat=Psi0; Psi=Psi0; nsteps=500; for z=1:nsteps; Psi=M*Psi; PsiMat=[PsiMat Psi]; end; PDense=abs(PsiMat).^2; % Probability Density. PDensel=PDense(1:50,:); Pl=sum(PDensel);

%deltat=200; M=expm(deltat*A); 7

%PsiMat=Psi0; Psi=Psi0; %nsteps=10; %for z=1:nsteps; Psi=M*Psi; PsiMat=[PsiMat Psi]; end; %PDense2=abs(PsiMat).^2; % Probability Density. end;

% some plots % ---------close all; figure(1); plot(x,v); xlabel(x); ylabel(V); title(potential function); grid on; if do figure(2); m=4; for l=1:m subplot(m,1,l); plot(x, real(V(:,l)),x,v/Vmax*.3,:); axis([0 1 -.3 .3]); end; subplot(m,1,1); title( Low energy eigenfunctions); subplot(m,1,m); xlabel(x);

figure(3); subplot(2,1,1); plot(x,PDense(:,1)); grid on; xlabel(x); ylabel(|Psi0|^2); title(Wavefunction at t=0); subplot(2,1,2); plot(0:100,absAlpha,o,0:100,absAlpha); grid on; xlabel(n); ylabel(|Alphasubn|^2); title(|Alphasubn|^2 vs. n); figure(4); m=8; for l=1:m; subplot(m,1,l); plot(x,PDense(:,l),x,v,:); 8

axis off; end; subplot(m,1,1); title(Psi at intervals of 40 t.u.); subplot(m,1,m); xlabel(x);

figure(5); m=8; for l=1:m; subplot(m,1,l); plot(x,PDense(:,l+8),x,v,:); axis off; end; subplot(m,1,1); title(Psi at intervals of 40 t.u.); subplot(m,1,m); xlabel(x); figure(6); plot(0:nsteps,Pl) grid on; zoom on; axis([0 nsteps 0 1]); xlabel(time); ylabel(Pleft); title(Pleft vs. t);

% momentum operator % ----------------%P= hbar/(2*deltax)*toeplitz([0, i,zeros(1,n-1)]); end;

courtesy of Stephen Boyd @ Stanford University 9