This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
numexercises7_14 [2014/07/14 13:02] bogner |
numexercises7_14 [2014/07/14 13:13] bogner |
||
---|---|---|---|
Line 4: | Line 4: | ||
* 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$]. | * 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)$. To do this, you will want to use Gaussian quadrature to discretize the integrals. Gaussian quadrature is discussed a bit 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.) | + | * 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. |
- | * Construct the matrix elements of the Coulomb potential given by | + | * Construct the matrix elements of the Coulomb potential given by. |
+ | |||
\begin{equation} | \begin{equation} | ||
\langle nl|V|n'l\rangle = \int_0^{\infty}r^2dr R_{nl}(r}\frac{1}{r}R_{n'l}(r) | \langle nl|V|n'l\rangle = \int_0^{\infty}r^2dr R_{nl}(r}\frac{1}{r}R_{n'l}(r) | ||
\end{equation} | \end{equation} | ||
+ | |||
* 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 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$). |