Sciencemadness Discussion Board

How to Balance Chemical Equation

Techarena - 2-4-2015 at 02:54

Hi, Need help in balancing chemical equations,

CH3OH + O2 = CO2 + H2O

I dont want simple resources to find the answer as i already got it from
https://www.easycalculation.com/chemistry/balancing-equation...

I want to know how to find it

Milan - 2-4-2015 at 03:13

Ok, first here's the equation:

2 CH3OH + 3 O2 = 2 CO2 + 4 H2O

I'll use it as an example.
So what you need to remember when balancing equations is the law of conservation of mass, which says "You can not create, nor destroy mass".
So if we apply it to the equation then the number of atoms of the same kind on the left side should be the same as the one on the right.
In this formula we have 2 Carbon atoms, 8 Hydrogen atoms and 8 Oxygen atoms on the left side, it is the same on the right side.

[Edited on 2-4-2015 by Milan]

woelen - 2-4-2015 at 04:33

You also need to have the same charge on the left and right side.

For many simple equations, it is a matter of guessing, but for more complicated equations where guessing is not easy, you can always find the right coefficients by writing down equations for the number of atoms and the amount of charge on the left side and right side.

Example:

a Cr2O7(2-) + b Fe(2+) + c H(+) --> x Fe(3+) + y Cr(3+) + z H2O

This leads to a set of equations:

For Cr: 2a = y
For O: 7a = z
For Fe: b = x
For H: c = 2z
For charge: -2a + 2b + c = 3x + 3y

You now have 5 equations for 6 unknowns. Just fix one of them, e.g. to 1. Let's say a = 1. Now you can solve the system.

For Cr: a = 1 ==> y = 2
For O: a = 1 ==? z = 7
For H: z = 7 ==> c = 14
The equations for Fe and H give two simultaneous equations for unknowns b and x. I leave it as an exercise for you to solve these.

Normally, for all chemical equations, you will have N unknowns and N+1 equations. Fixing one of them usually gives a solution. If the solution has fractional answers, then simply multiply all of them with the same factor to get rid of the fractions. If there is no solution, or there are infinitely many solutions, then problem is either ill-posed, or there are multiple possible reactions, which can occur simultaneously.

I have written some tools, which solve chemical equations:

A small windows program: http://woelen.homescience.net/science/chem/chemeq/index.html
An online calculator: http://woelen.homescience.net:18080/chemeq/

These tools recognize situations of ill-posed problems or the possibility of multiple reactions.

morganbw - 2-4-2015 at 05:11

@woelen
very informative post.

DraconicAcid - 2-4-2015 at 07:07

When you are balancing equations, always work on one element at a time. Start with the elements that appear in the fewest compounds first, and leave anything that appears as the element until last.

Consider this one:

C2H5OH + I2 --> CHI3 + HI + H2O

Hydrogen appears in four compounds, iodine appears as the element, so do carbon and oxygen, then hydrogen, then iodine.

? C2H5OH + ? I2 --> ? CHI3 + ? HI + ? H2O

Balance the carbon: C2H5OH + ? I2 --> 2 CHI3 + ? HI + ? H2O
Balance the oxygen: C2H5OH + ? I2 --> 2 CHI3 + ? HI + H2O

Now, when we balance the hydrogen, we've only got one coefficient to change. We've got six hydrogens on the reactants side, and four accounted for on the products, so we need two more, so we need 2 HI.

C2H5OH + ? I2 --> 2 CHI3 + 2 HI + H2O

Now we've got eight iodines on the products side, so we need 4 I2.

C2H5OH + 4 I2 --> 2 CHI3 + 2 HI + H2O

woelen - 2-4-2015 at 23:45

DraconicAcid, this is a good strategy, which I also frequenty use to get to a solution very quickly, but it unfortunately does not always work. Sometimes there are cyclic dependencies. In many cases these can be resolved by guessing, but this is not always the case, especially if you have equations with high coefficients and low GCD's between coefficients.

So my advice is to first try guessing, then apply DraconicAcid's strategy (optionally augmented with guessing on the cyclic dependencies) and if all of these fail, then use my general method of equation solving. The latter always works, but it is not the easiest way. For software purposes, however, it is the only sure-fire way.

I implemented it in a slightly different way in my software, I determine the null-space of the full set of equations. If it has dimension 1, then we have a well-defined solution. If it has dimension 0, then the set cannot be balanced (e.g. ? PCl3 + ? H2O --> ? H3PO4 + ? HCl) and if it has dimension larger than 1, then there are multiple independent solutions (e.g. ? Cu + ? HNO3 --> ? Cu(NO3)2 + ? NO + ? NO2 + ? H2O has null-space dimension equal to 2).

brubei - 3-4-2015 at 00:49

please can you explain what a cyclic dependency is ?

woelen - 3-4-2015 at 06:37

I'll give a certain example. NO2 gives nitric acid with water and as a side-product, NO is produced.

? NO2 + ? H2O ---> ? HNO3 + ? NO


We can balance for hydrogen:

? NO2 + 1 H2O --> 2 HNO3 + ? NO

Now, if we want to balance the oxygen, then we have a problem. It depends on the number of nitrogens. So, we could think that we first try to balance the nitrogen. However, that is not possible, because it depends on the number of oxygens. Ergo, we have a cyclic dependency, in this situation just two mutually dependent ones. In more complicated situations we might have that for balancing element A we need to have balanced B, for balancing B we need to have balanced C and for balancing C we need to have balanced A.

Solving this requires either guessing, or solving a set of equations. Guessing is fairly easy for this one. Start with 3 NO2 and 1 NO in order to make the nitrogens balanced. Just check whether the oxygens are balanced as well in that case. That indeed is the case, so the end result is

3NO2 + H2O --> 2HNO3 + NO

This is a somewhat trivial example, but it demonstrates the idea.

If you cannot guess, then write the following for the unknowns:

x NO2 + 1 H2O --> 2 HNO3 + y NO

For nitrogen: x = 2 + y
For oxygen: 2x + 1 = 6 + y

Solving this simultaneous set of equations is easy. It yields x = 3, y = 1. So, if you cannot guess a suitable set of values, then solve the set. It is more work, but it is a sure-fire technique.

aga - 3-4-2015 at 09:39

Here's a thing i typed up for someone once :

Attachment: Balancing Equations.pdf (44kB)
This file has been downloaded 562 times

Sometimes just seeing the answer in different words helps.

brubei - 3-4-2015 at 13:13

Quote: Originally posted by woelen  
I'll give a certain example.
Ok thx :)
I usually balance the equation element by element and i'm pretty good at it. by the way, the mathematic way is nice too.

diddi - 3-4-2015 at 16:00

@woelen
in you program, how have you implemented the solution of the matrix? I am thinking for a complex set of values you would need Gauss Seidel elimination...