Maple Quantum Chemistry Toolbox
The Maple Quantum Chemistry Toolbox from RDMChem, a separate add-on product to Maple, is a powerful environment for the computation and visualization of the electronic structure of molecules. In Maple 2020, this toolbox now provides more capabilities for computing and visualizing excited states, new commands for saving and restoring your computations, additional lessons for classroom learning from introductory chemistry to advanced computational chemistry, updates to the interactive Maplet, and additional enhancements to many methods and commands throughout the package.
Note that the Maple Quantum Chemistry Toolbox is required in order to execute the examples in this worksheet.
Computing and Visualizing Excited States
Saving and Restoring Computations
Using the Package in the Classroom
More than ten new commands have been introduced for the computation and visualization of excited states. Here we examine five of these commands. Consider the molecule 5-bromouracil which can substitute for thymine in DNA. After loading the QuantumChemistry package,
we retrieve the molecular geometry from a web database with the command MolecularGeometry
mol ≔ MolecularGeometry5-bromouracil;
The command ExcitationSpectra computes the molecule's electronic excited-state spectra
spectra ≔ ExcitationSpectramol;
We can set the optional keyword showtable to true to display a fancy table of the spectra
spectra ≔ ExcitationSpectramol, showtable=true:
The table contains information such as the excitation energy, wavelength, spin, and oscillator strength for the first 12 states. Additional or fewer states may be requested with the keyword nstates. The default method is time-dependent Hartree-Fock, but other supported methods like time-dependent density functional theory can be selected by changing the base method
spectra ≔ ExcitationSpectramol, method=DensityFunctional,nstates=1, showtable=true:
The command ExcitationSpectraPlot generates a plot of the molecule's excitation spectra
spectra ≔ ExcitationSpectraPlotmol;
We can use the keyword onlysinglets to show only the excitations from the ground state to singlet excited states.
The command TransitionDipolePlot visualizes the transition dipole moment of a specified excited state
The command TransitionOrbitals computes the most important orbitals for the ground-to-excited-state transition using the singular value decomposition
sv,orbital_ground,orbital_excited ≔ TransitionOrbitalsmol, state=1:
The singular values are returned as a vector
We observe that the first three singular values are "large" with the remaining values being negligible. The nth singular value corresponds to a transition from the molecular orbital in the corresponding column of orbital_ground to the molecular orbital in the corresponding column of orbital_excited.
The command TransitionOrbitalPlot visualizes the pair of orbitals involved in a ground-to-excited-state transition for the nth singular value, For example, for the transition from the ground state to the first excited state, we can visualize the most important pair of orbitals associated with the first singular value
TransitionOrbitalPlotmol, state = 1, orbitalindex=1;
Note that the change in electron density from the left (ground-state occupied orbital) to the right (excited-state occupied orbital) is consistent with the direction of the transition dipole moment (computed above).
Similarly, we can visualize the the second most important pair of orbitals associated with the second singular value
TransitionOrbitalPlotmol, state = 1, orbitalindex=2;
The excited-state data can also be computed directly in a supporting method. For example, we can perform a DensityFunctional computation that automatically computed the excited-state data by setting the optional keyword excited_states to true, "TDDFT" (Time-dependent Density Functional Theory) , or "TDA" (Tamm-Dancoff Approximation). Furthermore, we can control the number of computed singlet and triplet states with the optional keyword nstates whose default is 6 for 6 singlet states and 6 triplet states
data_dft ≔ DensityFunctionalmol, excited_states=TDA,nstates=1;
The table contains entries for the excited_state_energies, excited_state_spins, transition_dipoles, oscillator_strengths, and the 1-electron reduced transition matrices (1-RTMs), i.e.
ActiveSpaceCI and ActiveSpaceSCF
Excited states are now easily computed with the ActiveSpaceCI and ActiveSpaceSCF commands with the new keyword state. For example, we can readily compute the first excited-state energy and properties of the molecule 5-bromouracil
data_casci ≔ ActiveSpaceCImol,active=6,6, state=1;
The new entry spin_squared in the output table gives us the expectation value of the total electron spin squared, equal to S(S+1). Here we observe that this expectation value is 2, which indicates that the first excited state is a triplet (S =1 or 2S+1=3).
Two new commands Save and Restore have been added to the package to make it easier than ever to save your data for future analysis. The Save command saves the cache tables associated with your calculations while the Restore command restores these cache tables in a new Maple session. This pair of commands makes it easy to switch between Maple interfaces (i.e. between the Maple worksheet and the Maple command line or between the Maple worksheet and the interactive Maplet), between operating systems (i.e. Windows, MacOS, or Linux), or even between different computers without redoing your computations. For advanced computations it is convenient to run computations with the Maple command line and then perform your analysis and visualization in the Maple worksheet (or the interactive Maplet). On the Maple worksheet or Maple document mode the commands Save() and Restore() open a directory/file browser to facilitate file selection.
The Maple Quantum Chemistry Toolbox includes many lessons that can be used in chemistry and physics courses from advanced high school courses through the graduate level. These lessons and associated curricula provide instructors and students with real-time quantum chemistry computations and visualizations that quickly deepen understanding of molecular concepts. With Maple 2020, the support for Introductory (General) Chemistry, Computational Chemistry, and Quantum Chemistry has been extended even further, with the addition of over 13 new topics, including atomic structure, chemical bonding, valence-shell electron pair repulsion (VSEPR), the Maxwell-Boltzmann distribution, heat capacity, enthalpy, entropy, free energy, as well as advanced electronic structure methods. The general chemistry lessons are ideal not only for college-level introductory chemistry courses but also secondary-school Advanced Placement (AP) and International Baccalaureate (IB) courses. Computational chemistry lessons cover electronic structure theory and methods including Hartree-Fock method, Moller-Plessett perturbation theory, density functional theory, and 2-RDM theory for use in undergraduate and graduate computational chemistry courses. In the following two subsections we show snippets of the lessons on the Maxwell-Boltzmann distribution for Introductory Chemistry and density functional theory for Computational Chemistry.
Before we begin, we define the ideal gas constant in SI units
RSI ≔ evalfScientificConstantsConstant'R';
We can define the Maxwell-Boltzmann distribution with Maple
fv,M,T,R ≔ 4⋅Pi⋅M2⋅Pi⋅R⋅T32v2exp−M⋅v22⋅R⋅T;
Let us check that the total probability of the particle having some speed is unity for a gas with a molar mass of 0.1 kg/mol at a temperature of 273 K
P_total ≔ intfv,0.1,273,RSI, v=0..infinity;
(a) Does the total probability equal the expected value of unity?
We can explore the Maxwell-Boltzmann distribution as a function of the temperature and molar mass of the gas.
Exploreplotfv,M,T,RSI, v=0..2000, axes=boxed,labels='vms','fv', color=blue, thickness=2, T=100..1000,M=0.01..1;
Using the slide rules to change temperature T in K and molar mass M in kg/mol (SI units), answer the following questions:
(b) Approximately from the graph, what is the most probably velocity for water H2O at 275 K?
(c) Approximately from the graph, what is the most probably velocity for methane CH4 at 550 K?
Density Functional Theory
We compute the energy of diphenyl disulphide.
First, we define the geometry, which we obtained from the MolecularGeometry command
mol ≔ S,−0.55610000,−1.83210000,−0.97360000,S,0.62630000,−1.92950000,0.70830000,C,−1.79690000,−0.65310000,−0.47620000,C,1.82150000,−0.64580000,0.38420000,C,−2.60700000,−0.91680000,0.62830000,C,1.57350000,0.65950000,0.80660000,C,−1.95740000,0.53360000,−1.19130000,C,3.00290000,−0.94940000,−0.29110000,C,−3.57770000,0.00620000,1.01760000,C,2.50850000,1.66310000,0.55330000,C,−2.92800000,1.45670000,−0.80200000,C,3.93800000,0.05420000,−0.54430000,C,−3.73820000,1.19290000,0.30240000,C,3.69070000,1.36050000,−0.12220000,H,−2.50880000,−1.83880000,1.19590000,H,0.65860000,0.91480000,1.33560000,H,−1.33440000,0.75710000,−2.05390000,H,3.21330000,−1.96160000,−0.62770000,H,−4.21010000,−0.19990000,1.87620000,H,2.31610000,2.68020000,0.88210000,H,−3.05270000,2.38110000,−1.35840000,H,4.85860000,−0.18120000,−1.07020000,H,−4.49420000,1.91150000,0.60530000,H,4.41880000,2.14190000,−0.31940000;
Then we compute the energy from DFT with the DensityFunctional command. We select the B3LYP exchange-correlation (xc) functional and the 6-31g basis set
data ≔ DensityFunctionalmol, basis=6-31g, xc =B3LYP;
The ground-state energy is given by
(a) Compute the energy using the PBE functional, and compare your result with the energy from the B3LYP functional. Absolute energies are typically not too important in DFT.
The highest occupied molecular orbital (HOMO) can be visualized with the DensityPlot3D command
DensityPlot3Dmol,data,basis=6-31g, orbitalindex=57; # HOMO
DensityPlot3Dmol,data,basis=6-31g, orbitalindex=58; # LUMO
The energies of these two orbitals are
(b) Compare these orbitals with those from the PBE functional.
Download Help Document
What kind of issue would you like to report? (Optional)