What Is ... an Atomic Population? 

Copyright (c) WhatIsProject 2023 

 

What Is?   

The Mulliken theory of atomic populations, or the populations of electrons localized to individual atoms within a molecule, as described in his 1955 paper "Electronic Population Analysis on LCAO-MO Molecular Wave Functions," earned Robert Mulliken the 1966 Nobel Prize in Chemistry for his work in molecular orbital theory. Using different atomic orbital basis sets and the tools of computational chemistry, Mulliken population analysis provides an avenue for characterizing the electronic charge of different atomic orbitals, the total charge on a molecule, and the population overlap for the atomic orbitals, which Mulliken hypothesized to in turn be related to the bonding or anti-bonding nature of the molecular orbitals. It takes advantage of the assumption that any molecular orbital can be described by a linear combination of atomic orbitals, which renders it to be extremely sensitive to the choice of basis sets for the atomic orbitals.  

 

History 

The son of a professor of organic chemistry at MIT, Robert Mulliken received a B.Sc. in chemistry from MIT in 1917. After being drafted into the Army's Chemical Warfare Service in 1918, he pursued a Ph.D. at the University of Chicago under William Draper Harkins. Receiving his Ph.D. in 1922, he was the recepient of a National Reseacrch Council Fellowship and conducted research at Harvard pertaining to molecular spectroscopy. In the period from 1925 - 1927, Mulliken collaborated with several notable scientists in Cambridge and travelled Europe studying under many illustrius physicists, including John Slater, J.R. Oppenheimer, Max Born, James Franck, and Frederich Hund. By 1928, he had collaborated with Hund to develop Hund-Mulliken molecular orbital theory and accepted an assistant professorship at the University of Chicago, where he remained until approximately two years before he died. In the two decades spanning 1930 - 1950, Mulliken was prolific in publishing papers relating to electronic structure theory and population levels. Then, in 1955 he published the first in a series of five papers, "Electronic population analysis on LCAO-MO molecular wave functions." This series developed the Mulliken Theory of Population Analysis, which is still widely used today.  

Details 

 

Consider a diatomic molecule. This molecule can have any molecular orbital, phi[i]; , that can be written as a linear combination of the normalized atomic orbitals. This is an approximation known as Linear Combination of Atomic Orbitals - Molecular Orbitals (LCAO-MO).  

phi[i] = `+`(`*`(c[r], `*`(chi[r])), `*`(c[s], `*`(chi[s])));  

The probability density for the molecular orbital, `*`(`^`(phi[i], 2)); , also describes the charge density for that molecular orbtial. This is in accordance with the Born Interpretation for the wavefunction.
 

`*`(`^`(phi[i], 2)) = `+`(`*`(`^`(c[r], 2), `*`(`^`(chi[r], 2))), `*`(2, `*`(c[r], `*`(c[s], `*`(S[rs](`/`(`*`(chi[s], `*`(chi[r])), `*`(S[rs]))))))), `*`(`^`(c[s], 2), `*`(`^`(chi[s], 2)))); ,
 

where S is the overlap integral that arises from acting chi[s]; on chi[r]; as they are non-orthonormal, since they are the eignestates for two different quantum mechanical systems - they are the atomic orbitals for two different atoms. The overlap integral itself is described by 

. 

Further, consider the fact that chi[s]; , chi[r]; , and S[rs]; are all normalized. Therefore, integrating over all space for each of the terms produces: 

 

orbitals acting upon themselves must go to 1. Further, acting two different atomic orbitals on each other will produce the overlap integral. Defining N as the total number of electrons in the molecular orbital and acting it upon both sides reveals that this total population N can be broken into three sub-populations, which Mulliken named.   

 

Net atomic population on atom r, 

Net atomic population on atom s, 

Overlap population. 

 

This process can be generalized to any molecule.  

In this case, a molecular orbital, phi[i]; , has equations that can be written as: 

phi[i] = sum(`*`(c[ir][k], `*`(chi[r][k])), rk);  

 

Partial overlap populations 

sum(sum(`*`(c[ir][k], `*`(c[is][l], `*`(S[`*`(r[k], `*`(s[l]))]))), s), r); ≡Subtotal overlap population. 

 

There are several things that are important to note about this representation. Firstly, in the initial example, we did not specify whether or not the atomic orbitals that composed the molecular orbital were pure. We assume that any hybrid orbitals can be replaced themselves by a linear combination of pure orbitals. Further, the overlap populations can be either positive or negative. For any given pair of atoms, positive values for overlap populations corresponds (by definition) to net bonding. In turn, negative values for overlap populations correspond to net antibonding.  

 

Mulliken also defines gross atomic populations in the general case.  

Gross atomic population for atom k ≡ . 

 

Using this gross atomic population, we can examine the charge on a single atom in a molecule. Returning again to the diatomic molecule composed of k and l with N total electrons,  

 

 

From this, Mulliken defines the gross charge, `+`(N[0](r[k]), `-`(N(r[k]))); , on one atomic orbital of the atom, or `+`(N[0](k), `-`(N(k))); , on the atom itself. Here, we define N[0](r[k]); as the total number of electrons in the χatomic orbital, and N[0](k); as the total number of electrons in the ground state of the free neutral atom k. 

 

Now, we can apply Mulliken's theory of population analysis more directly to computational chemistry by putting the above results into matrix form.  

 

Consider a molecule which has coefficients c[`*`(gamma, `*`(i))]; for the γ-th atomic orbital (basis function) of the i-th molecular orbital. Then, the subsequent density matrix has the following terms: 

D[`*`(gamma, `*`(lambda))] = `+`(`*`(2, `*`(sum(`*`(c[`*`(gamma, `*`(i))], `*`(`^`(c[`*`(lambda, `*`(i))], %H))), i))));  

 

It is important to note that the above density matrix assumes the molecular orbitals are fully occupied - eg. there are two electrons per orbital. Additionally, multiplying the elements of the density matrix by the overlap matrix, with each element of the matrix S[`*`(gamma, `*`(lambda))]; corresponding to the overlap integral, produces what is called a population matrix, describing the populations of all of the atomic orbitals of the molecule. The diagonal elements contain the atomic orbital populations, while the off-diagonal elements contain the overlap populations. Then, by performing a summation of all the diagonal elements with 1/2 of the off-diagonal overlap elements, we can achieve and approximation of the gross atomic populations for each of the atomic orbitals that are the basis set for the molecule we are investigating. 

Example 

As an example, we will use Mulliken Population Analysis, implemented in the Quantum Chemistry Toolbox in Maple, to compute the atomic populations and atomic orbital charges for formaldehyde First, we import a geometry for the carbon monoxide molecule.  

 

 

> Digits := 15; 1
 

Typesetting:-mprintslash([Digits := 15], [15]) (4.1)
 

> with(QuantumChemistry); 1
 

[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
[AOLabels, ActiveSpaceCI, ActiveSpaceSCF, AtomicData, BondAngles, BondDistances, Charges, ChargesPlot, ContractedSchrodinger, CorrelationEnergy, CoupledCluster, DensityFunctional, DensityPlot3D, Dipol...
(4.2)
 

> formaldehyde := MolecularGeometry(
 

Typesetting:-mprintslash([formaldehyde := [[
Typesetting:-mprintslash([formaldehyde := [[
(4.3)
 

whose 3D ball-and-stick structure is: 

> PlotMolecule(formaldehyde); 1
 

Plot_2d
 

 

Next, we use ActiveSpaceCI, a configuration interaction method operating through a set of atomic orbitals, to calculate the Mulliken population matrix of formaldehyde. There are 8 active electrons (1 from each H, 2 from C, and 4 from O) and 7 active orbitals (1s from each atom, and a 2s and a 2p from each C and O). 

 

> formaldehyde_mulliken := ActiveSpaceCI(formaldehyde, active = [8, 7], populations =
formaldehyde_mulliken := ActiveSpaceCI(formaldehyde, active = [8, 7], populations =
 

_rtable[36893490282767793196]; (4.4)
 

> mulliken_charges := formaldehyde_mulliken[charges]; 1
 

Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mtable(Typesetting:-mtr(Typesetting:-mtd(Typesetting:-mrow(Typesetting:-mo( (4.5)
 

 

These are the atomic populations and partial atomic charges obtained using Mulliken analysis. We can compare these values to those obtained using Hartree-Fock. 

 

> formaldehyde_hf := HartreeFock(formaldehyde, active = [8, 7]); -1; hf_populations := formaldehyde_hf[populations]; 1
 

_rtable[36893490282767773076]; (4.6)
 

> hf_charges := formaldehyde_hf[charges]; 1
 

Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mtable(Typesetting:-mtr(Typesetting:-mtd(Typesetting:-mrow(Typesetting:-mo( (4.7)
 

 

 

Selected References 

 

1. R.S. Mulliken, J. Chem. Phys. 23, 1833, (1955). "Electronic population analysis on LCAO-MO molecular wave functions." 

2. R. Carbo-Dorca, J. Math. Chem. 36, 3, (2004). "Quantum mechanical basis for Mulliken population analysis." 

3. R.S. Berry, Nat. Acad. Sci. 78, (2000). "Robert Sanderson Mulliken: A Biographical Memoir." 

4. Quantum Chemistry Toolbox in Maple (Maplesoft, Waterloo, 2023). 

 

                                                                                                                                                                                                                       Written by Emma L.E. McNesby