This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.

Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- ACS Community
- :
- Science
- :
- Science Questions and Collaboration
- :
- Forum
- :
- Easiest method for solving eigenvalue problem

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

MitsuruYamada

New Contributor III

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

07-07-2014
08:17 AM

Easiest method for solving eigenvalue problem

Nowadays, the computer programming language is very convenient and at the same time powerful. It provides us one simple way to calculate the determinant of some large matrix. It can calculate the determinant of a square matrix of even one hundred order in a blink. When we address an eigenvalue problem and are allowed to discretize the space, then we may be let solve a secular equation. The secular equation is,

det(H-eI)=0 (1)

where H is the discretized Hamiltonian, e the unknown variable and I the identity matrix. A method which I would like to show you here is to exploit the power of the programming language and to draw the curve of the determinant as a function of e directly, and to search any points where the curve crosses or touches the e-axis. That is, we may be able to draw a curve of the following function.

y(e)=det(H-eI) (2)

Wherther this method works or not depends on the behavior of the curve. If it crosses or touches the e-axis unambiguously, then we may be able to regard the coordinate of such crossing points or touching points as the eigenvalue, i.e., the solution of the given eigenvalue problem. I have tested this method in order to know if and how it works. The trial system is one-dimensional well-known harmonic oscillator, and its Hamiltonian is given by,

H=(-1/2)d^2/dx^2+(1/2)x^2 (3)

And I let the matrix order be 101 and let the lattice constant be 0.02. As a result of this trial, it was found that the function takes either extremely huge positive or negative value (10^150~10^130) for an examined variable range 0<e<10. Seeing the graph, at the expected positions, the curve of eq(2) was observed to rise up or down to cross the e-axis almost perpendicularly. Yes. that's good, that's good. But the accuracy of the obtained eigenvalues are not so good and it worsens as it steps up higher the ladder of order of the eigenvalue.

Table (1)

Exact e's Obtained e's

0.500 0.499

1.500 1.494

2.500 2.484

3.500 3.469

... ...

9.500 9.268

As a conclusion, this method may be a rough computation, and may be helpful only as a guide for finding the rough positions of the lowest few eigenvalues.