This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
numexercises7_14 [2014/07/14 08:03] bogner |
numexercises7_14 [2014/07/14 13:40] bogner |
||
---|---|---|---|
Line 1: | Line 1: | ||
===== Numerical Exercises for Monday July 14 ===== | ===== Numerical Exercises for Monday July 14 ===== | ||
- | - In your favorite programming language, make a program to construct a real $NxN$ matrix. Diagonalize it using the appropriate LAPACK or GSL routine, and write out some number of the lowest eigenvalues. | ||
- | - Use your simple program as an opportunity to play with Git. Try out some of the commands covered in Morten or Nicolas's lecture slides {{:computing.pdf|}} {{:talentdftguides.pdf|}} | + | * In the code {{:coulomboscrelme.f90.zip|}}, you will find a subroutine (laguerre_general) that calculates the generalized Laguerre polynomials that appear in the definition of the HO wf's, see {{:ho_spherical.pdf| here}}. Use this subroutine to create a function or subroutine that calculates the HO wf's $R_{nl}(r)$. Note that for large $n,l$ values, the factorial and double factorial functions that appear in $R_{nl}$ lead to overflow if you code them according to their naive expressions. How might you avoid this problem? [Hint: Recall that $Log{(AB\cdots)}=Log{A} + Log{B} + \cdots$]. |
+ | |||
+ | * Check numerically that the constructed HO wf's are orthonormal. I.e., evaluate $\int r^2dr R_{nl}(r)R_{n'l'}(r)$. You will want to use Gaussian quadrature to discretize the integrals. Gaussian quadrature is discussed some in {{:ho_spherical.pdf| }}. While Gauss-Laguerre quadrature is ideal for this problem, plain Gauss-Legendre quadrature, which is widely available in canned routines you can easily find via Google, is sufficient. | ||
+ | |||
+ | * Write a function/subroutine that calculates the matrix elements of the Coulomb potential between an electron and a proton, $\langle nl|V|n'l\rangle$. Use atomic units ($e=m_e=\hbar=1/4\pi\epsilon_0$). | ||
+ | |||
+ | * Modify your code in the previous step so that it calculates $\langle nl|V|n'l\rangle$ for any user-supplied potential $V(r)$. | ||
+ | |||
+ | * Using the analytical expressions for the kinetic energy matrix elements $\langle nl|T|n'l\rangle$,construct the hamilton matrix $\langle nl|H|n'l\rangle$ for the hydrogen atom for $l=0$. Keep HO basis states $n,n'<N_{max}$ and diagonalize $H$. For a given $N_{max}$ value, repeat the calculation at different HO frequencies and plot the ground state energy versus $\omega$ (or the oscillator length scale, defined as $b=\sqrt{\hbar/(m\omega)}$. Hopefully, you find that as $N_{max}$ increases, the ground state begins to approach the exact result of -$.5$ in natural units. | ||
+ | |||
+ |