# Is the carbon atom in the carbon dioxide molecule partially positive?

I had a question about nonpolar molecules that have symmetrical dipole vectors.

Let's take $$\ce{CO2}$$ as an example. Each of the $$\ce{C=O}$$ bonds are pulling in the opposite way. My teacher says that this causes all atoms in $$\ce{CO2}$$ to be equally charged as there mustn't be any net 'force'.

However, I disagree. Intuitively, it seems that the oxygen atoms would pull electron density away from the central carbon atom and make the carbon atom slightly positive and the oxygen atoms slightly negative, like so:

$$\large\ce{\overset{\small\delta-}{O}=\overset{\small\delta+}{C}=\overset{\small\delta-}{O}}$$

This process should make the carbon atom slightly positive and the oxygen atoms slightly negative. However, if I was right, then why don't we say $$\ce{CO2}$$ has a dipole (there is a separation of charge)? Perhaps I may have the wrong definition of a dipole.

• It might help you to look up the definition of “quadrupole” – Andrew Apr 1 at 0:36
• – Karsten Theis Apr 1 at 19:33
• Non-polar is arguably a misnomer. It specifically means "non-dipolar". It doesn't mean the charge distribution is actually constant. – gardenhead Apr 1 at 20:27
• There's a difference between a molecule's overall dipole and local dipoles/bond dipoles within a molecule. A molecule with completely nonpolar bonds cannot have an overall molecular dipole. However, this does not imply that molecules with polar bonds must have an overall molecular dipole - having bond dipoles is a necessary but not sufficient condition. $\ce{CO2}$ is a case of a molecule with bond dipoles which cancel out exactly, and leave no overall molecule dipole. However, as has been stated, $\ce{CO2}$ does have a quadrupole moment. – Nicolau Saker Neto Apr 1 at 22:32
• @JohnHon Don't forget to accept an answer! – mpprogram6771 Apr 4 at 20:45

You're correct in assuming that the carbon atom in $$\ce{CO2}$$ has a partial positive charge. This is because the oxygen atoms are much more electronegative, so they pull the electrons away from the carbon atom. However, this molecule is still nonpolar. This is because, when you draw a dipole moment, you have to take all bonds into account. Take water for example:

In this molecule, there are two bonds, each with their own dipole. But these cancel out like any other vectors, leaving you with a vertical net dipole. The dipoles in carbon dioxide cancel out in a similar way; however, they cancel each other completely, because the bond is linear, not bent like in water:

This produces a zero net dipole, rendering the molecule nonpolar.

• This is correct, and we can actually test it. Replace one of the O with an S to break the symmetry, Now the direction of the O=C dipole is exactly opposite to that of the C=S dipole, but the magnitudes are not equal, so we get a net dipole moment (of 0.65 D, according to en.wikipedia.org/wiki/Carbonyl_sulfide). – Adam Chalcraft Mar 31 at 0:31
• but if the carbon is positive then surely the partially negative oxygen of another CO2 molecule can form a dipole dipole bond with the C? – John Hon Mar 31 at 6:56
• It does still somewhat affect the properties of the compound, because it encourages the molecules to stack in a staggered pattern, but technically it is still nonpolar, since there is no way for another molecule to align it's own dipole on the same axis as the original molecule's dipole. It's nonpolar because you can't say that one entire side of the molecule is more positive/negative than the entire other side – mpprogram6771 Mar 31 at 14:00
• Think about it this way; If you drew a perfect circle around the entire molecule, and then drew a line from the edge of the circle, through the center of the molecule, to the opposite side of the circle, then if the molecule is nonpolar, then no matter how you draw the line, one endpoint of the line won't have a different charge than the other endpoint. The line may cross some different charges on it's way, but that doesn't matter. This is how we know that there's no net dipole. If you try that with water, the strongest difference in the endpoint charges is along the dipole. – mpprogram6771 Mar 31 at 16:09
• This answer is a great starting point because it focuses on the idealistic model of $\mathrm{C}\mathrm{O}_2 ,$ where it's time-averaged, in a vacuum, both Oxygen atoms are of the same isotope, there're no significant fields, etc.. As a simple, informative idealization, it's great information to present first -- but, it should still be noted that this idealization is a starting place rather than a complete description. It may be worth noting this limitation then pointing toward some of the other answers which build from this starting point. – Nat Apr 1 at 11:37

The other answers have done a great job explaining why, even though its bonds are polar, $$\ce{CO2}$$ lacks a permanent dipole: the molecule's symmetry cancels out the polarity of its bonds.

But that's not the whole story. I'd like to add to this a very interesting and environmentally important charateristic of $$\ce{CO2}$$ — namely that, while it lacks a permanent dipole, it does exibit transient (dynamic) dipoles.

Specifically, $$\ce{CO2}$$ lacks a dipole only when the two oxygens are both equidistant from, and in alignment with, the carbon. In $$\ce{CO2}$$'s symmetric vibrational mode, that symmetry is maintained. But $$\ce{CO2}$$ has three other vibrational modes: a linear asymmetric vibrational mode, and two bending vibrational modes (the collection is nicely pictured here: Is carbon dioxide IR inactive?).

Why is this important environmentally? In order for $$\ce{CO2}$$ to absorb IR light (i.e., in order for it to be a greenhouse gas), it needs to have a dipole. And it does, transiently, because of these asymmetric vibrational modes.

This animation, added by Karsten Theis, shows the dipoles dynamically created by one of $$\ce{CO2}$$'s bending modes (aka "The Floss"):

[According to Karsten, the "GIF is via jsmol from molcalc.org, with the arrow added using Camtasia".]

• Just pointing out that in the picture you have, the oxygens are still equidistant from the carbon. – gardenhead Apr 1 at 20:25
• Slight edit to make it clear -- it's not just equidistance, it's vector alignment. BTW, the pictured vibration appears to be one of the bending modes. – Ross Presser Apr 1 at 20:37
• @gardenhead Thanks, you are of course correct. Ross Presser's edit nicely clears this up. – theorist Apr 1 at 22:08
• @RossPresser Thanks for the edit, which I accepted. – theorist Apr 2 at 3:20
• @KarstenTheis Ah, sorry, I misunderstood who added the gif. I've credited you in the answer. – theorist Apr 2 at 3:20

You are correct, the carbon does have a positive charge. We cannot measure a dipole, but that doesn't prove anything. However, $$\ce{CO2}$$ does have a quadrupole moment. Imagine a $$\ce{CO2}$$ molecule oriented along the $$x$$-axis, and a bit further along the $$x$$-axis there's also a $$\ce{H2O}$$ molecule with its dipole oriented along the $$x$$-axis. Its dipole moment interacts with both dipole moments of $$\ce{CO2}$$, but one of the two dipoles in $$\ce{CO2}$$ is closer to the water dipole. So, schematically you get

        H
O=C=O    O
H


If there was no charge distribution on the $$\ce{CO2}$$, we wouldn't see this.

Mathematically, this happens because space is 3D. Forces between two charges drop of with the square of their distance.

The previous answers by mpprogram6771 and MSalters nailed it. I'd like to add that, as $$\ce{CO2}$$ is a very small molecule, you can, with a bit of effort, set up a little numeric experiment to answer your own question, and even get approximate partial charges in each atom, and dipole moment of the whole molecule, using just free/open source software.

First, you need to install molecular modelling software in your machine. The one I like most is Avogadro. It has wonderful usability and many features to design and visualize your compounds. Ghemical was also good, but it seems to be unmaintained for years now. I could not getting it working properly anymore.

In my machine I use Ubuntu MATE 18.04 (a GNU/Linux variant) as the operating system. There I'm able to install Avogadro with a simple command in the terminal:

sudo apt-get install avogadro


With Avogadro you can assemble the $$\ce{CO2}$$, joining the carbon atom and both oxygen atoms with double bonds. Beyond the molecular editor, you will need another piece of software, able to take the data about the molecule you assembled and do a series of quantum mechanical calculations over it, to give you an approximate answer to your questions.

There is a great variety of quantum mechanical software, as this page on Wikipedia shows. Unfortunately, IMHO the landscape of free/open source tools in this field is fragmented, and most lag far behind Avogadro in terms of usability, stuck in the average level of user-friendliness of the 1980s (sometimes at the compile-it-yourself level), and the proprietary alternatives have restrictive licenses and/or are eye-watering expensive, out of reach of people with no institutional affiliation. Academia treats its voluntary toolmakers badly, as some great people in mathematics can tell you, firsthand. Sooner or later we must fix that. We need a William Stein in computational chemistry. I just hope he/she gets better treatment after stepping up to the task.

Yet, among the several packages supported by the Avogadro input generator, my recommendation is Psi4, for a beginner. It's as easy to install as Avogadro, if you're under Ubuntu or any Debian-based distribution.

sudo apt-get install psi4


They have a well documented site, with a section dedicated to education with simple projects and friendly message boards. The version available in the Ubuntu repository is functional, but quite outdated, 1.1.5, as of Mar 2020. If one is serious about learning it, my advice is to download it directly from their site. The latest stable version as Mar 2020 is 1.3.2. But for the sake of this answer, the repository default is enough.

After assembling your molecule and doing some preliminary geometry optimization inside Avogadro, you can generate a preliminary input text file with its Psi4 plugin under menu ExtrasPSI4. My preliminary version started like this:

set basis  aug-cc-pVDZ
molecule {
0 1
C       -3.47367        0.73246        0.22361
O       -2.43476        1.12414       -0.22175
O       -4.51237        0.34053        0.66926
}
optimize('B3LYP-D')


The Avogadro plugin for Psi4 is very basic, so we will need to tune the template by hand. A set of good templates you can change to fit your needs is a great thing to have when learning to use a new package. We should have more of these. But first things first, let's see what we have on our proto-input. It has three sections. The first section specify a basis set, aug-cc-pVDZ (computational chemists love to feast on alphabet soup). To be short, a basis set is a jury-rigged set of easy-to-calculate mathematical functions, used emulate the real, hard-to-calculate atomic and molecular orbitals, kind of like this:

The second section has the x,y,z coordinates of every atom in the molecule, and also its overall charge (in this case 0) and multiplicity (in this case 1, as all electrons are paired). The third section says what kind of information we want to calculate from our initial information, in this case, the optimum geometry of the molecule (optimize), and the algorithmic machinery chosen to process it, in this case, B3LYP-D (another serving of alphabet soup), a variant of density functional theory (DFT).

I changed the Avogadro generated template as follows:

memory 4 Gb

set basis  aug-cc-pVTZ
molecule {
0 1
C       -3.47367        0.73246        0.22361
O       -2.43476        1.12414       -0.22175
O       -4.51237        0.34053        0.66926
}
optimize('B3LYP-D')
E, wfn = energy('B3LYP-D', return_wfn=True)
oeprop(wfn, "MULLIKEN_CHARGES", "DIPOLE", title = "CO2 B3LYP-D")


I optionally raised the limit on system memory to 4 GB, from the system default, as my machine has a good amount of memory. As the molecule is small and the impact on runtime will be probably acceptable, I also changed the previous basis set, aug-cc-pVDZ, to one more detailed, aug-cc-pVTZ. Also added a section asking Psi4 to return a wavefunction (wfn) object for the system, besides its energy (E). Finally, following the guidance on the Psi4 manual here, I added a section asking for our information of interest, the estimated partial charges on each atom, given by Mulliken analysis, and the estimated dipole moment on the $$\ce{CO2}$$ molecule.

Now we can save the text file with our input data and run Psi4 in the terminal:

psi4 carbon_dioxide.in


After some time, Psi4 will finish the run, and return its results to an output file named carbon_dioxide.out that has a huge amount of information. But the section of more interest to your question is right at the end:

Properties computed using the CO2 B3LYP-D density matrix

Nuclear Dipole Moment: (a.u.)
X:    -0.0000      Y:     0.0000      Z:     0.0000

Electronic Dipole Moment: (a.u.)
X:     0.0000      Y:     0.0000      Z:    -0.0000

Dipole Moment: (a.u.)
X:     0.0000      Y:     0.0000      Z:    -0.0000     Total:     0.0000

Dipole Moment: (Debye)
X:     0.0000      Y:     0.0000      Z:    -0.0001     Total:     0.0001

Mulliken Charges: (a.u.)
Center  Symbol    Alpha    Beta     Spin     Total
1     C     2.80993  2.80993  0.00000  0.38015
2     O     4.09503  4.09503  0.00000 -0.19006
3     O     4.09504  4.09504  0.00000 -0.19008

Total alpha = 11.00000, Total beta = 11.00000, Total charge =  0.00000

*** Psi4 exiting successfully. Buy a developer a beer!


The results indicate exactly the situation you intuitively predicted, with both oxygen atoms pulling electron density away from the central carbon atom and the carbon atom becoming slightly positive and the oxygen atoms slightly negative. In fact, we were able to use the computer as a sort of power armor for the mind.

At first, your intuition could only provide vague guidance in the direction of electron density transfer, from oxygen to carbon. Now we can corroborate that, and augment our intuition with numeric estimates, an average loss of 0.38 electrons in the carbon atom and an average gain of 0.19 electrons in each oxygen atom. Wonderful.

Despite the charge separation, the results of our little numeric experiment also point to near zero dipole moment, as we see. It doesn't tell us explicitly why. But our geometric intuition suggest a way out. As there are two oxygen atoms, the effect of charge separation on both may cancel out. The output of Psi4 corroborate that, as the partial charge on each oxygen atom is the same within four decimal places, and both take opposite positions in a linear geometry.

There's a similar molecule, but without the possibility of charge separation cancelling out, $$\ce{CO}$$, carbon monoxide, with a single oxygen. To do a comparison, I created the equivalent input file for it.

memory 4 Gb

set basis  aug-cc-pVTZ
molecule {
0 1
C       -3.99710        1.44942        0.00000
O       -2.86898        1.44942        0.00000
}
optimize('B3LYP-D')
E, wfn = energy('B3LYP-D', return_wfn=True)
oeprop(wfn, "MULLIKEN_CHARGES", "DIPOLE", title = "CO B3LYP-D")


And ran it.

psi4 carbon_monoxide.in


Again the results point to some measure of charge separation.

Properties computed using the CO B3LYP-D density matrix

Nuclear Dipole Moment: (a.u.)
X:     0.0000      Y:     0.0000      Z:     0.0023

Electronic Dipole Moment: (a.u.)
X:     0.0000      Y:     0.0000      Z:     0.0348

Dipole Moment: (a.u.)
X:     0.0000      Y:     0.0000      Z:     0.0371     Total:     0.0371

Dipole Moment: (Debye)
X:     0.0000      Y:     0.0000      Z:     0.0944     Total:     0.0944

Mulliken Charges: (a.u.)
Center  Symbol    Alpha    Beta     Spin     Total
1     C     2.95397  2.95397  0.00000  0.09206
2     O     4.04603  4.04603  0.00000 -0.09206

Total alpha =  7.00000, Total beta =  7.00000, Total charge =  0.00000

*** Psi4 exiting successfully. Buy a developer a beer!


But this time the dipole was nonzero, with an estimated value around 0.094 debye. The Wikipedia article on carbon monoxide gives us a measured value of 0.122 debye. So we got an estimate around 23% lower than the real value. The difference may arise either as a intrinsic limitation of our model (the science vs. engineering thing), or because I fumbled somewhere either in the input I gave to Psi4 or in my assumptions to treat the problem (always very likely).

It would be interesting to check the literature in the subject, if one wants to go deeper. Anyway, the contrast in the results between $$\ce{CO2}$$ and $$\ce{CO}$$ point clearly to mutual cancellation to explain the lack of a dipole in $$\ce{CO2}$$.

• Wow! you put a ton of effort into this! That's a definite upvote! – mpprogram6771 Mar 31 at 23:17
• I will go through this carefully this weekend. Five years ago I asked How can I calculate the charge distribution of a water molecule? and started to try to figure out how to run PyQuante but then realized I'd have to do much more reading before I'd understand what I was doing. – uhoh Apr 2 at 6:53
• Wow this is really impressive. I want to give it a try. Thank you so much for your effort! – John Hon Apr 3 at 5:10

My teacher says that this causes all atoms in CO2 to be equally charged as there must be no net 'force'.

I don't think the other answers have explained why this is wrong. If you have a set of three point charges arranged like $$Q$$ ... $$q$$ ... $$Q$$, then it's easy to show that the forces all cancel when $$q/Q=-1/4$$. However, this can't be the physical situation, for two reasons. (1) The net charge $$2Q+q$$ is nonzero unless $$q=Q=0$$. (2) The equilibrium is unstable.

So based on this argument using Coulomb's law and Newtonian mechanics, your teacher would actually be right that the charges can't be nonzero. However, even in the case of $$q=Q=0$$, the equilibrium isn't stable. In this case there is no binding force at all, so the atoms would just drift off. In reality, CO2 is bound.

In general, we simply don't expect to be able to explain the stability of matter using classical physics and electrostatic forces. There is a theorem called Earnshaw's theorem that shows this is impossible. Quantum physics is required in order to explain the stability of matter.