User Tools

Site Tools


numexercises7_14

This is an old revision of the document!


Numerical Exercises for Monday July 14

  • 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 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 . 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 it. 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)}$.
  • Construct the hamilton matrix $\langle nl|H|n'l\rangle$ keeping all HO basis states $n,n'<N_{max}$. Diagonalize the matrix for increasing $N_{max}$ values for different values of the oscillator length parameter $b$ (“oscl” in the code.) $b$ and $\hbar\omega$ are related by $b = \sqrt{(\hbar/(m\omega)}$. Plot your lowest eigenvalue for each $N_{max}$ as a function of $b$ (or $\hbar\omega$).
  • Construct a subroutine that returns relative HO matrix elements of the Minnesota NN potential. The definition of the Minnesota potential and a sketch of how to proceed will be given on the black board.

Here are

numexercises7_14.1405359359.txt.gz · Last modified: 2014/07/14 13:35 by bogner