Download Numerical Methods Project: Feynman path integrals in quantum

yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts

Quantum computing wikipedia, lookup

Quantum decoherence wikipedia, lookup

Aharonov–Bohm effect wikipedia, lookup

Orchestrated objective reduction wikipedia, lookup

Tight binding wikipedia, lookup

Quantum entanglement wikipedia, lookup

Quantum machine learning wikipedia, lookup

Perturbation theory (quantum mechanics) wikipedia, lookup

Quantum field theory wikipedia, lookup

Bohr–Einstein debates wikipedia, lookup

Richard Feynman wikipedia, lookup

Density matrix wikipedia, lookup

Casimir effect wikipedia, lookup

Measurement in quantum mechanics wikipedia, lookup

Quantum key distribution wikipedia, lookup

Quantum teleportation wikipedia, lookup

Many-worlds interpretation wikipedia, lookup

Matter wave wikipedia, lookup

Probability amplitude wikipedia, lookup

Copenhagen interpretation wikipedia, lookup

Hydrogen atom wikipedia, lookup

Max Born wikipedia, lookup

EPR paradox wikipedia, lookup

Instanton wikipedia, lookup

Coherent states wikipedia, lookup

Double-slit experiment wikipedia, lookup

Relativistic quantum mechanics wikipedia, lookup

Theoretical and experimental justification for the Schrödinger equation wikipedia, lookup

Wave–particle duality wikipedia, lookup

Interpretations of quantum mechanics wikipedia, lookup

Quantum state wikipedia, lookup

History of quantum field theory wikipedia, lookup

Yang–Mills theory wikipedia, lookup

Quantum group wikipedia, lookup

Renormalization group wikipedia, lookup

Particle in a box wikipedia, lookup

Hidden variable theory wikipedia, lookup

Symmetry in quantum mechanics wikipedia, lookup

Quantum electrodynamics wikipedia, lookup

T-symmetry wikipedia, lookup

Canonical quantization wikipedia, lookup

Renormalization wikipedia, lookup

Scalar field theory wikipedia, lookup

Feynman diagram wikipedia, lookup

Path integral formulation wikipedia, lookup

Propagator wikipedia, lookup

Numerical Methods Project: Feynman path integrals in quantum mechanics
Nis Dam Madsen∗
(Dato: 25. juni 2009)
This project revolve around the implementation of the Feyman path integral method in C++. In
the present paper the theory behind and the considerations that went into the project is discussed.
The program has been tested on the harmonic oscillator potential, computing energy levels and
eigenfunctions, wavefunction propagation and expectation values. The results from this computation
is given at the end of the paper and comparred to the corrosponding analytical results for an
estimation of accuracy.
A new approuch to quantum theory was developed by
Richard Feynman during the early 1940’s, the theory
Richard Feynman presented was based on the conjecture
that the transition amplitude going from one space time
point |x, ti to another |x0 , t + ∆ti corrosponds to[1]
hx , t + ∆t|x, ti = w exp
L(x, ẋ)dt
where L is the langragian, ∆t is assumed to be infinitesimally small and the weight factor w is assumed to be
independent of the potential. The expression above is also know as the short time propagator. Richard Feynman
is said to have been led to this idea by Paul Dirac who
made a similar comment about the connection between
the classical Lagrangian and transtion amplitude.
In quantum mechanics we can write the operator that
evolves an initial state |x0 i into a final state |x00 i as
K(x00 , t00 ; x0 , t0 ) = hx00 , t00 |x0 , t0 i
= hx00 |Ut0 →t00 |x0 i
K is known as the propagator and U is it’s matrix representation in the position basis. The propagator matrix
can be thought of as the unitary change of basis operation that evole the basis set into the base set time
(t00 − t0 ) later. The entries in the U metrix is simply the
inner products hx00 |Ut0 →t00 |x0 i. The progator is independent of the initial state wavefunction, this means that
we can evolve any given state once we know the propagator. In Schrödinger’s wave-mechanics we can compute the propagetor once we know the energy eigenvalues
and eigenfunctions. This is shown in many textbooks on
quantum dynamics and a brief example is given in the
note for this project[3]. The result is;
K(x , t ; x , t ) =
∗ Institut
where |ai are the eigenkets. From this expression it is
readily seen that a fourie transform of this time series’s
trace would yield peaks at the energilevels divided by 2π.
Since the trace is independent of basis we use this observation to find the energies from the Feynman propagator.
To construct to the propagator using the method of Feynman we need to utilize the infinite propagator given in
( 1). To that end we will use the composition proporty
of the propagator to construct the finite time propagator
from infinite steps. The composition proporty is;
hx |aiha|x i exp
iEa (t00 − t0 )
for Fysik og Astronomi, Aarhus Universitet, Danmark
hx00 , t00 |x0 , t0 i =
∆xhx0 , t0 |x000 , t000 ihx000 , t000 |x0 , t0 i(5)
= ∆xhx0 , t0 |Ut00 →t000 Ut0 →t00 |x0 , t0 i
This rely on fact that
∆x|x000 , t000 ihx000 , t000 | = 1, which
means that the position space constitutes a full basis. In
the second line the matrix representation is introduced,
this is the form that is useful in a numerical solution
of the problem. The composition proporty can be used
recursively of course, such that each division is made infinitesimal small and thus making way for the infinitesimal propagator 1. The price paid to obtain this form is
that we are left with an infinit amount sums corrosponding to the sum of all possible paths going from an initial
state to a final state. If the sums is substituted for integrals we are left with is what is known as Feynman’s
path integral, which in its formal form is,
hx , t |x , t i =
D[x(t)] exp
L(x, ẋ)dt (7)
using the same notation as Sakurai[1], the weight factor
from ( 1) is included in the D symbol and is determined
by comparing the analytacal solution for a free particle
(V=0) with the corrosponding result in the Schördinger
formulation. This gives the weight factor w as:
the unit of the weight factor is 1/lenght, which we expect
due to the normalization requirement (15).
Dicrete formulation
The key idea in the Feynman’s path integral formulation was the use of infinite time steps to compute finite
time propagators, in a discrete formulation we will let the
elapsed time be divided into N steps, which means that
the infinite number of integrals in ( 7) will be reduced to
a finite number. Furthermore we will decretize the space
axis into M equidistant points. This yields the following
definitions for dt and dx:
It is also possible to use this formalism to produce the
partion function for a quantum system. By propagating
the system in complex time τ = i~t and replacing the
action with the hamiltonian for the system we get the
heat kernel for the system. Probagation in complex time
is the same as lowering the temperature of the system,
meaning that a random state |ψ0 i would be driven into
the groundstate??.
M −1
t2 − t1
dt =
N −1
dx =
If we write the propagator operator in it’s metrix representation for a small time step say ∆t then we can write
the propagator in its position matrix representation as:
(∆t) = hxi |Utn →tn +∆t |xj i
xj + xi xj − xi
Here we have approximated the action using the midpoint rule assuming that the short time propagator moves
along straight lines. This means that we are approximating the paths by a polygon. Now using the composition
rule 5 we can write a matrix equation that yield the
finite time propagator.
These equations can be readily implementet in a computer. One concern implementing this system in a computer
is the convergence of high powers of the matrix U which
might diverge due to small diviations in the eigenvalues
from ∆x
, in order to counter this divergens a renormalization can be done, when appropriate. The normalization
requirement reflects the fact that a quantum particle at
a given initial point have to have probabillity 1 to be
found somewhere at a later time. We this can formally
be written as:
(∆x)2 hxi |Uji (t)∗ Ujk (t)|xj i = 1
This mean that we can construct the eigenfunctions for
the system by starting with an initial random state and
propagating it to ground state, orthogonalize the initial
state to this state and then probagate this state toward
the ground state, but since there is no component of the
groundstate in this new it will most like propagate to
the first excited state. This is completely equivalent to
finding eigenvectors to a matrix using the power method.
The harmonic oscillator
Sij ≈ ∆t · L(
this is what we refer to as the small time propagator. Sij
is called the short time action and is give by:
U (t2 − t1 ) = (∆x)N −1 U (∆t)N
τ →∞
exp (−τ H)|ψ0 i → |0i
This must hold for all initial points k = 1, 2...M in principle, but due to our finite position space, there will be
some discrepancies around the ends of the interval, this
is shown in the results section.
To test the program, the harmonic potential was chosen.
It has good proporties such as being smooth and well
confined, which means that the discrepancies around the
endpoints become unimportant. Also the analytical solution for this problem is well known, which means that
error estimating will be straight forward. The main characteristic is the energilevels, which are given by En =
~ω( 12 + n) these are the main objective to reproduce using the methods described above. Additionally since the
propagator for the system is produced, so it seems obvious to look at the dynamics of the system and it’s expectancy values for position and potential as a function of
time, these should according to the Ehrenfest’s theorem
behave like the classical result for the harmonic oscillator. To produce produce the propator we need the action
for the harmonic oscillator, which is given by;
= ~∆t(mẋ2 − ~mω 2 x2 )
if we choose characteristic
q lenght and time scales given
by t0 = ω −1 and x0 =
ωm , where ω is the classical
angular frequency, then the action reduce to
1 2 1
= ẋ0 − x02
This achieves that the coefficients are of unity making the
problem ready for a numerical solution, since high precision is usually achived by using units that gives numbers of same order of magnitude. In the program the
time measure has been choosen to be the classical period
Tclassic = 2πω −1 instead, this is done because the FFT
used to get the frequency spectre then will be in units of
ω/2π, which means that we expect the energy poles at
half integer values instead of half integer values divided
by two π.
As mentioned in the introduction all we have to do is to
use fourie transform to extract the energies, but since the
problem has been discretized we’ll use a FFT routine.
Such a routine has also been produced and it will be
used to compute the energies. Of course we can’t get
infinitely many energy levels due to the discretization. If
we had discretized 4 then in theory we should get the
energy levels until the we reach the Nyquist frequency
associated with the selected parameters, meaning that
highst frequency we should be able to measure would be
ωmax = 2T
to later times. Ideally the real part (top) would be constant at 1 and the imaginary part (bottom) would be
Figur 1: probabillity
The solution was implemented in C++, within the framework of a class called CMatrix, which is used for other
proposes too. The program consist of a main program
and three header files where the routions are defined
called Feynman.h, CIOstream.h and CMatrix.h . There
is two primary functions in the program, one is called
pathintrace, which generates the trace as a function of
time, the other is the fft function simply called FFT. All
plots and evaluation of the results was done using MatLab’s plotting utillies, the data was transfered as CSV
data using a function written for this purpose.
The program has been runned with the following input
The first result is the frequency spectra in figure[ ]
corrsponding to the energies given in units of ~ω, here
we see that the peaks are nicely located around the expected values of 0.5, 1.5 ... 9.5 T0−1 at 10.5 the peak is
less significant and the next peak we see at 11.75 diviates
from the analytical result.
Tabel I: Input parameters for pathintrace(a,b,M,T,N), [a,b] is
the space interval of intrest, M is the number of subdivisions
of the space, T is number of periods considered and is number
of time steps.
In the simulation, the normalization requirement ( 15)
has been used between each propagation to ensure the
stabillity of the solution, however the program does run
fine without for shorter times, for example does the
avarage result for the norm 15 yield 0.982 at iteration
start using the parameters above and after one periode it
has dropped to 0.845 without renormalization, otherwise
it is stable around 0.996. Of cause the speed would increase by a constant factor since renormalization process
is a O(3) oparation just like the matrix multiplication.
In figure [ 1] the result of ( 15) is shown as function of
starting position. The important thing here is that the
probabillity is conserved around the middel of the interval, which is used for propagating intitial wavefunctions
In figure [ ] the trace, that were used to produce the
frequency spektrum, is shown. Both the real part (green)
and the imaginary part (red) has been plottet, because
they show that there is some behavior with a period of
2T0 which is reminiscent from the ground level frequency.
The propagator at each time step has also been used
to propagate a gaussian wavepacket with width one in
the characteristic units and a displacement of one from
the center of the potential. This quantum particle was
likewise propagated through four classical periods. The
wavefunction was used after each step to compute expectation values for both position and potential energy. Due
the probability loss at each time step, the wavefunction
was renormalized, before use to avoid amplitude drifting
reproduce the classical behavior as it must according to
Ehrenfest’s theorem. This is an indication that the program can be used for simulation of similar potentials.
of the expectation values. In figure [ ] the wavefunction is
shown at 8 successiv time steps seperated by T0 /8 making
up haft a period.
Figur 2: Propagation of gausssian wavepacket through half a
classical period.
In figure [ ] the motion of the classical particle (position
expectation value) is shown, the period was determind to
0.9998 T0 using MatLab’s cftool.
fittedmodel1 =
The eigenfunctions for the system can be found as described above, this method is implemented in the header file Pathintracecplx(a,b,M,T,N). The routine uses
the QR-decomposition to orthogonalize the vectors mutually, to get a new vector to propagate. I have used
ψ0 = 21 exp(−|x − 0.3|) as initial function. The input parameters was;
General model Fourier1:
fittedmodel1(x) = a0 + a1*cos(x*w) + b1*sin(x*w)
Coefficients (with 95% confidence bounds):
a0 = -3.737e-008 (-3.712e-007, 2.964e-007)
a1 =
0.9952 (0.9952, 0.9952)
b1 =
-0.09819 (-0.09819, -0.09819)
In figure [ ] a plot of the first four eigenfunctions is shown.
w =
6.282 (6.282, 6.282)
The match with the the hermitian functions is so good
that I have shifted the analytical wavefunction down 0.1
This gives us a deviation of 0.02% from the theoretical
in energy to make the comparison easier. In figure [ ]
result, which is satisfying for this project. For the potenthe difference between the analytical and the calculated
tial energy, the deviation form a frequency of 2 is at most
wavefunction is shown. The difference is of order 10−7
0.05%. This shows that our simulation has succeeded to
which is very minute.
In this numerical project we succeeded in using Feynman’s path integral formulation of quantum mechanics
to simulate the harmonic oscillator potential. The accuracy the program is estimated by comparison with the
analytical results for expectation values, from which it
atmost deviates 0.05%. Furthermore the energy levels of
the harmonic oscillator was recovered uptil n = 10, the
first nine being very significant. And lastly the eigenfunctions was computed in excellent agreement with the
analytical result.
[1] Modern Quantum Mechanics, J.J. Sakurai.
[2] Feynman’s Path integrals in quantum mechanics, Dmitri
[3] Simple Quantum Mechanical Phenomena and the Feynman Real Time Path Integral, A. Dullweber et al.
[4] Numerical Recipies C++, Willam H. Press et al.