PDA

View Full Version : Quantum Spin Chains - setting up a Hamiltonian matrix from a complete set of states


lamikins
Oct17-08, 05:12 AM
Hallo!
My question relates to the use of basis states to form operator matrices...

In the context of quantum spin chains, where the Hamiltonian on a chain of N sites is defined periodically as:


H = sumk=0N-1[ S(k) dot S(k+1) ] (apologies for the notation)

so there is a sum over k=0 to N-1
S(k) is the spin operator vector acting on the spin at site k


Analytically, I've shown that we can express this as:

H = sumk=0N-1[ Hz + Hf ]

with

Hz = Sz(k)Sz(k+1)
Hf = 1/2[S+(k)S-(k+1) + S-(k)S+(k+1)]



I've been trying to construct a Hamiltonian matrix H from the complete set of states formed by the Sz basis.

For N=3, say, said basis comes out as

Basis States for N = 3

-------------------
1 1 1this represents the case where spin at each site is up
-------------------
1 1 -1
-------------------
1 -1 1
-------------------
1 -1 -1
-------------------
-1 1 1
-------------------
-1 1 -1
-------------------
-1 -1 1
-------------------
-1 -1 -1
-------------------

Conceptually, then, how are these basis states be used to calculate the Hamiltonian matrix?

How should start to go about inserting a complete set of states and so on... I'm a bit stumped as I haven't done a formal course on Hilbert Space in a while :(

I hope I have delineated the issue clearly, though I rather suspect that I have not!

lamikins
Oct17-08, 09:02 AM
Still stuck!

I know it should be an 8x8 matrix, since there are 8 basis states and I need to find how the Hamiltonian acts on each individual configuration of spins.

Still I am jammed up on how to form this 8x8 matrix...

Tiger99
Oct20-08, 11:11 PM
They do this in the first article on this page:
http://www.phys.uri.edu/~gerhard/introbethe.html

They don't actually write the matrix out - is that the only bit you're having trouble with?

First you need to know how the S^z, S^+ and S^- act on the up and down spins.

I guess you could represent them as matrices acting on a 2-dimensional vector space,
and S^z = (1/2, 0 \\ 0, -1/2), S^+ = (0, 1\\0,0), S^- = (0,0\\1,0)
with the up-spin as (1,0)^T, the down-spin as (0,1)^T,
though there may be some convention I don't know.
Though you don't really need to if you already know the action.

Then you just go ahead and calculate it for each of the eight basis vectors individually.

The operators S^+(k), etc. act only on the k^th site. So when you calculate the action of
S^+(1)S^-(2) for example you only need to look at the 1st and 2nd positions.

S^+(1)S^-(2) |down ,up ,down> = |S^+.down, S^-.up, down> = |up down down>
etc...

(Apologies for my notation too.) Once you've finished you just write this information up as a matrix with respect to whatever ordering of the basis you like. It should be a fairly long but tedious calculation.

I hope this helps.

Alternatively, I guess you could just take the tensor (Kronecker) product of the matrices and sum this up. But I think it's easier just to calculate the action on basis vectors.

Tiger99
Oct20-08, 11:21 PM
PS: They show you much better ways of doing it in the article, where you choose the basis vectors really carefully so that the number of calculations are reduced.