Wednesday, December 14, 2011

How to Do a Computational Research Project?

When using computational chemistry to answer a chemical question, the obvious problem is that you need to know how to use the software. The problem that is missed is that you need to know how good the answer is going to be. Here is a check list to follow.


What do you want to know? How accurately? Why? If you can't answer these questions, then you don't even have a research project yet.

How accurate do you predict the answer will be? In analytical chemistry, you do a number of identical measurements then work out the error from a standard deviation. With computational experiments, doing the same thing should always give exactly the same result. The way that you estimate your error is to compare a number of similar computations to the experimental answers. There are articles and compilations of these studies. If none exist, you will have to guess which method should be reasonable, based on it's assumptions then do a study yourself, before you can apply it to you unknown and have any idea how good the calculation is. When someone just tells you off the top of their head what method to use, they either have a fair amount of this type of information memorized, or they don't know what they are talking about. Beware of someone who tells you a given program is good just because it is the only one they know how to use, rather than the basing their answer on the quality of the results.

How long do you expect it to take? If the world were perfect, you would tell your PC (voice input of course) to give you the exact solution to the Schrödinger equation and go on with your life. However, often ab initio calculations would be so time consuming that it would take a decade to do a single calculation, if you even had a machine with enough memory and disk space. However, a number of methods exist because each is best for some situation. The trick is to determine which one is best for your project. Again, the answer is to look into the literature and see how long each takes. If the only thing you know is how a calculation scales, do the simplest possible calculation then use the scaling equation to estimate how long it will take to do the sort of calculation that you have predicted will give the desired accuracy.

What approximations are being made? Which are significant? This is how you avoid looking like a complete fool, when you successfully perform a calculation that is complete garbage. An example would be trying to find out about vibrational motions that are very anharmonic, when the calculation uses a harmonic oscillator approximation.

Once you have finally answered all of these questions, you are ready to actually do a calculation. Now you must determine what software is available, what it costs and how to use it. Note that two programs of the same type (i.e. ab initio) may calculate different properties, so you have to make sure the program does exactly what you want.

When you are learning how to use a program, you may try to do dozens of calculations that will fail because you constructed the input incorrectly. Do not use your project molecule to do this. Make all your mistakes with something really easy, like a water molecule. That way you don't waste enormous amounts of time.

No comments:

Post a Comment