# How do you plot eigenfunctions of perturbed HO?

Tags:
1. Apr 4, 2015

### asynja

1. The problem statement, all variables and given/known data
Find eigenvalues and eigenvectors of a perturbed harmonic oscillator (H=H0+lambda*q4 numerically using different numerical methods and plot perturbed eigenfunctions. I wrote a code in c++ which returns a row of eigenvalues of the perturbed matrix H and a matrix of corresponding eigenvectors. I know how to plot eigenfunctions of a non-perturbed oscillator in Mathematica. But here it ends. It's been a while since I had a course in classical mechanics and I can't remember (or find it on web, Wikipedia was also useless) how do you actually find eigenfunctions for eigenvalues and eigenvectors. Can please anyone explain to me how to do that?

Last edited: Apr 4, 2015
2. Apr 4, 2015

### Staff: Mentor

There a contradiction there. You say that you wrote a program that calculates eigenvalues and eigenfunctions. Isn't that what you need?

3. Apr 4, 2015

### asynja

Yes, but now I need to plot eigenfunctions for n=0, n=1, etc for the perturbed states and I have no idea how to get them. I'm sure it's something simple, I really can't remember how to do that.

4. Apr 4, 2015

### asynja

Sorry, my bad, typing error. I've found eigenVECTORS and eigenvalues, and I have to plot eigenfunctions from them...

5. Apr 4, 2015

### Staff: Mentor

In what basis is your Hamiltonian written when solving numerically? If you are using a grid of points, then these two are the same thing.

6. Apr 4, 2015

### asynja

I don't know what you mean, please explain. The task was to find the perturbed eigen-everything using 3 different methods for calculating the perturbation's matrix elements qij . Then I have to plot them, compare for different lambdas, etc. I wrote an algorithm using tqli and tred2 from Numerical Recipes, by which I obtained the eigenvalues and eigenvectors. Then I plotted everything that had to do with eigenvalues (compare methods and check what happens at different lambdas and different matrix dimensions, etc) - I didn't need any basis to do that. Now I have to plot eigenvalues and compare them graphically to the unperturbed Hamiltonian. And I have no idea how to build an (eigen)function from my vectors and eigenvalues.

7. Apr 4, 2015

### Staff: Mentor

To do these numerical calculations, you have to represent the Hamiltonian as a matrix. There is a multitude of ways to do that. Which one did you use? In other words, how do you calculate the elements that fill your Hamiltonian matrix?

8. Apr 4, 2015

### asynja

I filled a matrix nxn with E0n = n + 1/2 as diagonal elements, then, for one of the methods, I calculated q^4 matrix elements as qij =0.5* sqrt(i + j + 1)* δ|i−j|,1
edit: As for eigenfunctions of unperturbed eigenstates, they are given in theoretical introduction to the task as |n>=(2nn!sqrt(pi))1/2 e-q^2/2Hn(q)

Last edited: Apr 4, 2015
9. Apr 4, 2015

### Staff: Mentor

Ok, so you are using the unperturbed HO as your basis set. Then what you are getting in the eigenvectors are the coefficients that express your wave function in terms of the eigenfuctions of the unperturbed HO:
$$\psi(x) = \sum_i c_i \phi_i(x)$$
where $\psi(x)$ is the wave function (eigenfunction of the perturbed HO), $c_i$ the coefficients (the elements of the eigenvector), and $\phi_i(x)$ the eigenfunctions of the unperturbed HO. You thus need to calculate the $\phi_i(x)$ and sum them up with the proper coefficients you calculated to get the eigenfunctions you are looking for.

10. Apr 4, 2015

### asynja

Thanks a lot, that's what I was looking for.