Application Center - Maplesoft

App Preview:

The Hydrogen Atom Orbitals

You can switch back to the summary page by clicking here.

Learn about Maple
Download Application




The Hydrogen Atom Orbitals

Giulio Dujany

 

Introduction

 

Almost a century after their modeling in quantum mechanics as wave functions, hydrogen's orbitals have become a common subject in High school and even previous degree of education. In this worksheet is shown as Maple provides useful tools for studying and visualizing the hydrogen's orbitals. In particular interactive components can provide a useful didactic aid easily generating and visualizing the wave functions, and different probability plots (radial, orbital).

In the first part of this worksheet we show that it is easy to define the wave functions using Maples' already implemented special functions as spherical harmonics and Laguerre polynomials. We then produce plots for radial and angular probability and for the iso-probability surfaces combining the two information. We finally use interactive components to produce the mathematical expression, and the probability plots of the orbital from the three quantum numbers.

NULL

Spherical harmonics

 

Solutions of Schrodinger's equation for the Hydrogen atom can be factorize in a function of the distance of the electron from the nucleus (r) and a function of the direction (ϑ, ?), due to the spherical symmetry of the problem.

The function of the direction is a spherical harmonic, an eigenfunction of the square and of the third component of the orbital angular momentum operator (L  and Lz respectively). Yl m (ϑ,?) is labeled by two quantum numbers: l, related to the eigenvalue of L and m, related to the eigenvalue of  Lz . l and m can assume integer values:  0≤ l ≤ n-1 (where n is the first quantum number related to the eigenvalue of energy) and -l ≤ m ≤ l. ϑ is the colatitude and ? is the azimuth angle of the spherical coordinate system (0≤ϑ≤π, 0≤?<2π).

 

Maple already knows spherical harmonics so we use the already implemented functions requiring that they are written using elementary functions.

Y := proc (l, m, `&vartheta;`, `&varphi;`) options operator, arrow; simplify(convert(SphericalY(l, m, `&vartheta;`, `&varphi;`), elementary)) end proc

proc (l, m, `&vartheta;`, `&varphi;`) options operator, arrow; simplify(convert(SphericalY(l, m, `&vartheta;`, `&varphi;`), elementary)) end proc

(2.1)

For example:

 

Y(4, -1, `&vartheta;`, `&varphi;`)

-(3/8)*(cos(`&vartheta;`)-1)^(1/2)*cos(`&vartheta;`)*(-3-3*cos(`&vartheta;`)+7*cos(`&vartheta;`)^2+7*cos(`&vartheta;`)^3)*5^(1/2)*exp(-I*`&varphi;`)/(Pi^(1/2)*(cos(`&vartheta;`)+1)^(1/2))

(2.2)

NULL

We check that they are correctly normalized. This is necessary because of the probabilistic interpretation of quantum mechanics: the square of the wave function is the probability density to find the electron. Thus |Yl m(ϑ,?)| is the probability density to find the electron in the direction identified by ϑ and ?. This integral being 1 means that it is sure to find the electron in some direction.

 

int(abs(Y(2, 0, `&vartheta;`, `&varphi;`))^2*sin(`&vartheta;`), [`&vartheta;` = 0 .. Pi, `&varphi;` = 0 .. 2*Pi])

1

(2.3)

NULL

The plots of the squares of spherical harmonics are symmetric for rotation around z-axis (this is because spherical harmonics are eigenfunctions of Lz). In order to have also a dependence from ? we define OrbY making a change of basis in the linear space spanned by spherical harmonics. These functions are no longer eigenfunctions of  Lz  but their plots are more usually shown in books.

NULL

OrbY := proc (l, lambda, `&vartheta;`, `&varphi;`) options operator, arrow; simplify((Y(l, lambda, `&vartheta;`, `&varphi;`)+I*signum(0, lambda, 0)*Y(l, -lambda, `&vartheta;`, `&varphi;`))/`if`(lambda = 0, 1, sqrt(2))) end proc

proc (l, lambda, `&vartheta;`, `&varphi;`) options operator, arrow; simplify((Y(l, lambda, `&vartheta;`, `&varphi;`)+I*signum(0, lambda, 0)*Y(l, -lambda, `&vartheta;`, `&varphi;`))/`if`(lambda = 0, 1, sqrt(2))) end proc

(2.4)

Of course the probabilistic interpretation still stands.

 

int(abs(OrbY(3, 2, `&vartheta;`, `&varphi;`))^2*sin(`&vartheta;`), [`&vartheta;` = 0 .. Pi, `&varphi;` = 0 .. 2*Pi])

1

(2.5)

NULL

NULL

Radial functions

 

Radial functions make use of generalized Laguerre polynomials, r is the distance of the electron from the nucleus

and r 2 [0,+∞).

``

with(orthopoly)

[G, H, L, P, T, U]

(3.1)

NULL

CHI := proc (n, l, r) options operator, arrow; convert(2*sqrt(factorial(n-l-1)/factorial(n+l))*exp(-r/(n*a[0]))*(2*r/(n*a[0]))^l*L(n-l-1, 2*l+1, 2*r/(n*a[0]))/(a[0]^(3/2)*n^2), elementary) end proc

proc (n, l, r) options operator, arrow; convert(2*sqrt(factorial(n-l-1)/factorial(n+l))*exp(-r/(n*a[0]))*(2*r/(n*a[0]))^l*L(n-l-1, 2*l+1, 2*r/(n*a[0]))/(a[0]^(3/2)*n^2), elementary) end proc

(3.2)

For example:

 

CHI(1, 0, r)

2*exp(-r/a[0])/a[0]^(3/2)

(3.3)

a0 is the Bohr radius and Maple already knows its definition and value:

``

with(ScientificConstants):

NULL

GetConstant(a[0])

Bohr_radius, symbol = a[0], derive = (1/4)*alpha/(Pi*R[infinity])

(3.4)

``

``

 

Constant(a[0])

ScientificConstants:-Constant([Bohr_radius])

(3.5)

 

NULL

A[0] := GetValue(%)

0.5291772081e-10

(3.6)

 

(3.7)

NULL

NULL

Wave functions

 

psi := proc (n, l, m, r, `&vartheta;`, `&varphi;`) options operator, arrow; CHI(n, l, r)*Y(l, m, `&vartheta;`, `&varphi;`) end proc

proc (n, l, m, r, `&vartheta;`, `&varphi;`) options operator, arrow; CHI(n, l, r)*Y(l, m, `&vartheta;`, `&varphi;`) end proc

(4.1)

``

NULL

NULL

For example:

 

psi(2, 1, 1, r, `&vartheta;`, `&varphi;`)

-(1/8)*exp(-(1/2)*r/a[0])*r*(cos(`&vartheta;`)-1)^(1/2)*(cos(`&vartheta;`)+1)^(1/2)*exp(I*`&varphi;`)/(a[0]^(5/2)*Pi^(1/2))

(4.2)

``

We check that they are normalized. As we work in spherical coordinates the integrand is |ψn l m(r,ϑ,?)| r sin(ϑ).

 

int(eval(abs(psi(2, 1, 1, r, `&vartheta;`, `&varphi;`))^2*r^2*sin(`&vartheta;`), a[0] = A[0]), [`&vartheta;` = 0 .. Pi, `&varphi;` = 0 .. 2*Pi, r = 0 .. infinity])

.9999999995

(4.3)

NULL

We also define wave functions using OrbY instead of Y to have the dependence from ? also in their square.

 

  Orb := proc (n, l, m, r, `&vartheta;`, `&varphi;`) options operator, arrow; CHI(n, l, r)*OrbY(l, m, `&vartheta;`, `&varphi;`) end proc

proc (n, l, m, r, `&vartheta;`, `&varphi;`) options operator, arrow; CHI(n, l, r)*OrbY(l, m, `&vartheta;`, `&varphi;`) end proc

(4.4)

For example:

 

Orb(2, 1, 1, r, `&vartheta;`, `&varphi;`)

-(1/48)*6^(1/2)*exp(-(1/2)*r/a[0])*r*(cos(`&vartheta;`)-1)^(1/2)*(cos(`&vartheta;`)+1)^(1/2)*3^(1/2)*(exp(I*`&varphi;`)+I*exp(-I*`&varphi;`))/(a[0]^(5/2)*Pi^(1/2))

(4.5)

We verify normalization:

NULL

NULLint(eval(abs(Orb(2, 1, 1, r, `&vartheta;`, `&varphi;`))^2*r^2*sin(`&vartheta;`), a[0] = A[0]), [`&vartheta;` = 0 .. Pi, `&varphi;` = 0 .. 2*Pi, r = 0 .. infinity])

.9999999989

(4.6)

 

Radial probability

 

Integrating in spherical coordinates we must add the Jacobian determinant of the change of variables. Thus the probability density to find the electron at a given distance from the nucleus is not |Χn l(r)| but |Χn l(r)| r. We define Rn l(r) = r Χn l(r) whose square is the correct radial probability density.

NULL

R := proc (n, l, r) options operator, arrow; CHI(n, l, r)*r end proc

proc (n, l, r) options operator, arrow; CHI(n, l, r)*r end proc

(5.1)

For example:

 

R(1, 0, r)

2*exp(-r/a[0])*r/a[0]^(3/2)

(5.2)

``

We verify normalization:

 

int(eval(abs(R(1, 0, r))^2, a[0] = A[0]), r = 0 .. infinity)

.9999999999

(5.3)

(5.4)

NULL

Radial plots

 

Radial functions are define for r = 0..∞ but, after a given value of r, functions go asymptotically to zero. For this reason in our plots the range of r will go from 0 to the value of r for which the surface under the graph of  |Rn l(r)| reaches 0.999.

For |Rn l(r)| this means to plot the 99.9% of probability to find the electron. For |Χn l(r)|  instead there is not such probabilistic interpretation but it is only a trick to cut off the tail from the plot.

   

rmaxR := fsolve(int(abs(eval(R(3, 1, r), a[0] = A[0]))^2, r = 0 .. r1) = .999, r1)NULL

0.1567806621e-8

(6.1)

plot(abs(eval(R(3, 1, r), a[0] = A[0]))^2, r = 0 .. rmaxR)

 

NULLNULL

plot(abs(eval(CHI(3, 1, r), a[0] = A[0]))^2, r = 0 .. rmaxR)

 

 

NULL

Angular Plots

 

with(plots):NULL

NULL

Plotting |Yl m(ϑ,?)| we can see that it is symmetric under rotation around the z-axis.

 

orb := plot3d(abs(Y(5, 2, `&vartheta;`, `&varphi;`))^2, `&varphi;` = 0 .. 2*Pi, `&vartheta;` = 0 .. Pi, coords = spherical, style = patchnogrid, scaling = constrained, grid = [50, 50]):

 

The plot of  |OrbYl m(ϑ,?)| instead has a dependence also from ?.

 

orb := plot3d(abs(OrbY(5, 2, `&vartheta;`, `&varphi;`))^2, `&varphi;` = 0 .. 2*Pi, `&vartheta;` = 0 .. Pi, coords = spherical, style = patchnogrid, scaling = constrained, grid = [50, 50]):

 

 

NULL

Iso-probability surfaces

 

We want to plot the surface containing 90% of probability to find the electron.

We therefore evaluate, using radial probability, the value rmax of r for which the cumulative probability reaches 0.9

``

NULL

rmax := fsolve(int(abs(eval(R(7, 5, r), a[0] = A[0]))^2, r = 0 .. r1) = .9, r1)

0.4304299417e-8

(8.1)

``

``

Using an implicit plot we obtain the surface of all the points whose probability is the cube of the radial probability at rmax.

 

implicitplot3d(abs(eval(psi(7, 5, 2, r, `&vartheta;`, `&varphi;`), a[0] = A[0]))^2 = abs(eval(R(7, 5, rmax), a[0] = A[0]))^6, r = 0 .. 1.*rmax, `&varphi;` = 0 .. 2*Pi, `&vartheta;` = 0 .. Pi, coords = spherical, style = patchnogrid, scaling = constrained, grid = [30, 30, 30], orientation = [0, -100], lightmodel = light1);

 

We can use Orb instead of ψ to have the dependence from ?.

 

implicitplot3d(abs(eval(Orb(7, 5, 2, r, `&vartheta;`, `&varphi;`), a[0] = A[0]))^2 = abs(eval(R(7, 5, rmax), a[0] = A[0]))^6, r = 0 .. 1.*rmax, `&varphi;` = 0 .. 2*Pi, `&vartheta;` = 0 .. Pi, coords = spherical, style = patchnogrid, scaling = constrained, grid = [30, 30, 30], orientation = [0, -100], lightmodel = light1)

 

 

NULL

Interactive components

 

In this section the content of previous paragraphs is automated building interactive components.

In the first combo box it is possible to choose between showing an eigenvalue of Lz or a function whose square depends also by ? as defined in the previous paragraphs (Orbital).

We can then select the three quantum numbers (automatically the values of l and m are only the possible ones according to the choice of n). m is the third quantum number  related to the eigenvalue of Lz only selecting the option "Eigenvalue Lz", conversely in "Orbital" it is has a different meaning but it is only a label. The upper limit of n has no physical constraints and can be changed adding values in the corresponding combo box.

 

 

NULL````

``

````

  n =    l =   m =       

NULL

``

Equation:  ψ= ``

``

``

                                  |Χn l(r)|                              |Rn l(r)| = r |Χn l(r)|

Radial Plots:  

````

                                                    |Yl m(ϑ,?)| 

       Angular Plot:            ``

``

                                                 |ψn l m(r,ϑ,?)|

Iso-probability surface:  

NULL

10 

References

 
• 

Harrington D. A., Orbitals Package Examples, Maplesoft Application Center, 2007.

• 

Hercules D., Density of Probability of an Electron near the Nucleus, Maplesoft Application Center, 2010.

• 

Rossetti C., Rudimenti di meccanica quantistica, Levrotto & Bella, Torino, 2008.

• 

Shankar R., Principles of Quantum Mechanics, Plenum Press, New York,  1980.

• 

Watson G. N., Whittaker E. T., A Course of Modern Analysis, Cambridge University Press,  1927.

``

NULL