VibrationalSpectroscopy-PES - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Toolboxes : Quantum Chemistry : Courses : Lessons : VibrationalSpectroscopy-PES

Vibrational Spectroscopy: Calculating the Rovibrational Spectrum of a Diatomic Molecule

Copyright (c) RDMCHEM LLC 2019

 

Overview

Initialize

Input Parameters

Normal Mode Analysis

Construct Potential Energy Surface

Calculate Vibrational Energy Levels

Results

Appendix

Overview

 

In this exercise, you will calculate the rovibrational spectrum of a diatomic molecule of interest (e.g.HCl) using different levels of theory: a normal mode analysis and ab initio methods.  

 

Normal Mode Analysis:  

 

As a first approximation, you will use the harmonic oscillator / rigid rotor approximation to calculate the fundamental vibrational frequency, v0, and rotational energies. In this approximation,  the total rovibrational energy is given by Eq. (1):

 

En,l = hv0n+12+ll+122 μ R02       (1)  

 

where n = 0, 1, 2, ... is the vibrational quantum number, l = 0, 1, 2, ... is the rotational quantum number, R0is the equilibrium bond distance, and μ is the reduced mass of the diatomic.  

Using the Bohr correspondence principle, one can calculate a given transition between any two rovibrational states.  However, selection rules for a rotating/vibrating heteronuclear diatomic are Δl = ±1 and Δn = ±1.  Therefore, the (0,0) --> (1,0) fundamental transition would not be observed. What would be observed are the P-branch (corresponding to all transitions with Δl = -1) and the R-branch (all transitions corresponding to Δl = +1):

 

P-branch:   ΔE= E1, l1  E0,l  = hcλ         (2)

R-branch:   ΔE= E1, l+1  E0,l  = hcλ         (3)

Transition energies are typically expressed in wavenumbers (cm1):

 

ΔEhc=1λcm= v~.        (4)

  

You will use the GeometryOptimization function to calculate R0 for the diatomic of interest and then use the VibrationalModes function to calculate the fundamental frequency, v~0. You will then calculate the rotational energies given by the second term in Eq. (1) for l = 0, 1, ..., lmax.  You will then calculate P- and R-branches according to Eqs. (2) and (3) and compare to experimental values.    

 

Ab Initio Calculations

 

While the above approximation is simple, more sophisticated methods can be used to capture the inherent anharmonicity in the system. In the second portion of this activity, you will calculate the potential energy surface (PES) for the diatomic molecule of interest using different levels of electronic structure theory. To assess the accuracy of each PES, you will calculate the corresponding rovibrational motion and compare with experimental observations.  In doing so, you will make use of the Born Oppenheimer approximation to separate the electronic and rovibrational degrees of freedom.  To this end, you will first calculate electronic energies by solving the electronic Schrodinger equation for a range of nuclear separations (R) to construct a 'potential energy surface' (PES), V(R).   You will explore different levels of theory, including Hartree-Fock (HF), many-body perturbation theory (MP2), coupled cluster (CC), and density functional theory (DFT) as well as different atomic basis sets, including STO-3G, 6-31G, cc-pVDZ, and cc-pVTZ.  

 

Once V(R) has been constructed, the nuclear Schrodinger equation is given by

 

H Ψn,l (R) = En,l  Ψn,l (R).           (5)

 

where Ψn,l   is the corresponding rovibrational wavefunction, and the Hamiltonian, H, is given by

H = -ℏ22 μ1Rⅆⅆ R+VR+ll+122 μ R2,          (6)

 

While the details of how one solves Eq. (5) are beyond the scope of this exercise, the variational principle is used:  represent Eq. (5) in an underlying basis representation for Ψ and diagonalize the resulting matrix to get energy eigenvalues, En,l .  (For more on matrix representations and the variational principle, see Variational Theorem exercise).  Once En,l values have been calculated, the transition frequencies can again be calculated using the appropriate selection rules and Eqs. (2) and (3), and the results can be compared to experiment.

 

Initialize

withLinearAlgebra:withScientificConstants: withplots:withQuantumChemistry:Digits15:

Input Parameters

 

We begin by specifying the atoms in our diatomic.  Note that the energy levels and spacings will depend on the isotopes we specify!  The variables elementA and elementB are the element symbols for the atoms in our diatomic, and MassNumberA and MassNumberB are their respective mass numbers (integers).    The variables Rmin and Rmax define the range over which the PES is computed and determine the level of accuracy of the vibrational calculation. The smaller the range, the quicker the calculation but the less accurate the results.  Start with a reasonable guess and proceed through each step to calculate the fundamental frequency.  Vary Rmin and Rmax until some acceptable level of convergence has been reached.  Once this has been done, Rmin and Rmax remain fixed for the different electronic structure methods and basis sets.

 

Finally, we specify the electronic structure method and basis set here.  Begin with ESmethod = HartreeFock and AObasis = "sto-3g" and proceed.  Once the fundamental has been calculated, repeat each step with a new basis and/or method.

 

elementAH:MassNumberA1:

elementBCl:MassNumberB35:

wavenum_observed2885.8:

Rmin0.8:     # in Angstroms

Rmax3.0:    # in Angstroms

ESmethodParametric2RDM:       # choose between HartreeFock, DensityFunctional, MP2, CoupledCluster, or Parametric2RDM ???

AObasiscc-pvdz :   # choose between "sto−3 g", "6-31g", "cc-pvdz", or "cc-pvtz". (Add more?)

Normal Mode Analysis

In this section, calculate the fundamental mode of the diatomic using a normal mode analysis, which approximates the vibration of the diatomic as a harmonic oscillator.  First define the molecule with a bond length of 1 Angstrom and then use the GeometryOptimization function to redefine the molecule with the optimum bond length for the desired method and basis. Then use the VibrationalModes function to determine the energy (in wavenumbers) of the fundamental.  Calculate the percent error.

 

molecconvertelementA,string,0,0,0,convertelementB,string,0,0,1.2;

molecH,0,0,0,Cl,0,0,1.20000000

(4.1)

molec,dataGeometryOptimizationmolec,ESmethod,basis=AObasis;

emodes,vmodesVibrationalModesmolec,ESmethod,basis=AObasis;

emodes,vmodes1858.31771126,−0.141156960.16595895−0.79310771−0.015503020.113757570.55707394

(4.2)

PercentErroremodes1wavenum_observedwavenum_observed100;

PercentError−35.60476432

(4.3)

 

 

Now, consider the rovibrational transitions allowed for a heteronuclear diatomic AB.   The vibrational selection rules are Δv = Δ±1,  Δl = ±1. Therefore, for transitions between v = 0 --> v = 1, there is a manifold of Δl = ±1 lines.

 

mAevalfElementelementAMassNumberA,atomicmass,system=SI;mBevalfElementelementBMassNumberB,atomicmass,system=SI;

mA1.6735339810−27

mB5.8067185710−26

(4.4)

lmax5;

lmax5

(4.5)

R01.32081083413467ⅇ−10;    # Value from GeometryOptimization calculation above

R01.3208108310−10

(4.6)

reduced_massmAmBmA+mB;

reduced_mass1.6266527910−27

(4.7)

moment_inertiareduced_massR02;

moment_inertia2.8377629110−47

(4.8)

for l from 0 by 1 to lmax do      Erotlll+1evalfConstanthbar22moment_inertia1evalfConstanthevalfConstantc100.0; end do

Erot00.

Erot119.72874569

Erot259.18623706

Erot3118.37247413

Erot4197.28745688

Erot5295.93118532

(4.9)

# Calculate P- and R-branches for l = 0, 1, 2, ..., lmax

  

P-branch: Dl = -1

 

for l from 1 by 1 to  lmax do      Pemodes1+Erotl1Erotl:  end do

P1838.58896557

P1818.86021988

P1799.13147419

P1779.40272850

P1759.67398282

(4.10)

 

R-branch: Dl = +1

for l from 0 by 1 to  lmax1 do     Remodes1+Erotl+1Erotl:  end do 

R1878.04645694

R1897.77520263

R1917.50394832

R1937.23269401

R1956.96143969

(4.11)

 

What do you notice about the spacing between lines in the P-branch?  in the R-branch? Are these observations consistent with an experimental IR spectrum of the diatomic AB?

Answer

There is equal spacing between lines in both P and R branches. This is consistent with a rigid rotor approximation!

Construct Potential Energy Surface

 

In this section, use electronic structure methods to solve for the potential energy surface of diatomic AB.  We begin by using the ScientificConstants package to get the mass of each of our elements A and B. Once the method and basis have been chosen, then we use the QuantumChemistry package to calculate the PES for a range of separation values between Rmin and Rmax.     (Note, you may notice that the ESmethod may not converge for smaller basis sets at larger values of R.)   

 

mAevalfElementelementAMassNumberA,atomicmass,system=Atomic:mBevalfElementelementBMassNumberB,atomicmass,system=Atomic:

mAevalfElementelementA,atomicweight,system=Atomic;mBevalfElementelementB,atomicweight,system=Atomic;

mA1837.36350387

mB64626.91063223

(5.1)

atomAconvertelementA,string:atomBconvertelementB,string:Rdataseqi,i=Rmin..Rmax,0.05:   # Determines the points at which our PES will be explicitly calculated molecules  seqatomA,0,0,0,atomB,0,0,i, i=Rmin..Rmax,0.05: R  evalnR:edata mapEnergy,molecules, method=ESmethod,basis=AObasis:pes  splineRdata,edata, R,2: plot_pes plot pes, R=Rmin..Rmax, font=ROMAN,16, labelfont=ROMAN,16, labels='R','E', color=blue

Calculate Vibrational Energy Levels

 

Once we have a PES (in a given basis for a given level of electronic structure theory), we can solve the vibrational Schrodinger equation.  We will calculate the energies for a range of angular momentum values and calculate the P- and R-branches.   This may take a few minutes!

 

ntrunc20RmaxRmin:lmax5:

EvlMatrixn,lmax+1:HDVRMatrixn,n:rVectorn:VVectorn :redmmAmBmA+mB: drRmaxRminn1:dxdr 0.52917721092: 

for i from 1 by 1 to n do            riRmin+i1.dr:                 #Vi0.16971  exp0.9890ri0.52917721092   2.4092:     # Morse potential for HCl...           VisplineRdata,edata,ri,3:end do:

for l from 0 by 1 to  lmax  do     for i from 1 by 1 to n do          for j from 1 by 1 to n do               if i=j then                    HDVRi,j0.5redmdx21 ijPi23.00.5i2+Vi  +ll+12redmri2               else                   HDVRi,j0.5redmdx21 ij2ij22i+j2              end if          end do      end do :   EEigenvaluesMatrixHDVR,shape=symmetric: for i from 1 by 1 to n do Evli,l+1Ei end do end do:

Results

Fundamental Transition Frequency

We can now calculate the fundamental frequency ( in wavenumbers, 1/cm). This number can be compared to the experimental value for the AB diatomic of interest.  Enter the results into Table 1 below!

 

wavenumEvl2,1Evl1,1219476.329478

wavenum2916.05626091

(7.1.1)

PercentErrorwavenumwavenum_observedwavenum_observed100

PercentError1.04845315

(7.1.2)

 

Table 1: Fundamental  Frequencies for Diatomic AB   (v0 = 2872.3 cm-1 for HCl.)

 

ESMethod

AObasis

Fundamental Frequency v0 (cm-1)

%Error

Hartree-Fock

STO-3G

 

 

6-31G

 

 

cc-pVDZ

 

 

cc-pVTZ

 

MP2

STO-3G

 

 

6-31G

 

 

cc-pVDZ

 

 

cc-pVTZ

 

 

Parametric2RDM

STO-3G

 

 

6-31G

 

 

cc-pVDZ

 

 

cc-pVTZ

 

 

Density Functional Theory

STO-3G

 

 

6-31G

 

 

cc-pVDZ

 

 

cc-pVTZ

 

 

 

 P-Branch and R-Branch

 

As a final exercise, we consider the rovibrational transitions allowed for a heteronuclear diatomic AB using the method / basis that gave the best results in Table 1.   If necessary, recompute the rovibrational eigenvalues for this combination before proceeding.

 

  

P-branch: DJ = -1

 

for l from 1 by 1 to  lmax do      PEvl2,l1+1Evl1,l+1219476.329478:  end do

P2843.17588300

P2768.33714588

P2691.68880667

P2613.37999119

P2533.55957404

(7.2.1)

 

R-branch: DJ = +1

for l from 0 by 1 to  lmax1 do      REvl2,l+1+1Evl1,l+1219476.329478:  end do 

R2986.83042273

R3055.35185488

R3121.47573937

R3185.05920428

R3245.96146160

(7.2.2)

 

What do you notice about the spacing between lines in the P-branch?  in the R-branch? Are these observations consistent with an experimental IR spectrum of the diatomic AB?

Answer

P-branch: spacing increases as J increases.
R-branch: spacing decreases as J increases.

Appendix

References

J. C.Light, I. P.Hamilton, and J. V. Vill, J. Chem. Phys. 82 ,1400 (1985).