So yes guys! I am starting to explain you the wonderful world of molecular dynamics simulations. Anyone who is motivated can follow these series of articles. I will take you through fundamental conceptual blocks necessary for a basic understanding of classical MD simulations. Also wherever necessary I will be giving examples and steps for implementing it. Before beginning, I would like to clarify few points:
I will be explaining about Classical Molecular Dynamics(MD) in this entire series. But what is "Classical" here? And why classical? Because we assume the motion of particles/molecules in this scale obey Newton's laws. (or can be approximated so. So no Quantum spookiness here. There are lot different kind of MD techniques, including Quantum mechanical ones. But they are computationally very complicated. Classical MD itself is computationally demanding. We will get into those points later.) So when I say MD simulations here, it is classical molecular dynamics what I am mentioning about.
Secondly the tools I will be using to demonstrate MD simulations are:
-- NAMD (the software for MD simulations)
-- VMD (for visualization of the simulations)
-- MATLAB & TCL (and may be Python too) for analysis of MD data
-- Sometimes gnuplot for plotting dataAs mentioned before MD simulations are computationally intensive. So I don't know if all my readers will be able to try out any practical MD simulations other than some small test cases. In that case, I will run some simulations and upload it to my readers for analysis etc. Also if any interesting curiosity-driven simulation request from readers are most welcome. :)
When I mention a particle in this series, it means I am referring to an atom or ion etc. Like a sodium ion or carbon atom etc.
Introduction
So let me start by explaining what we try to achieve by doing MD simulations. For the moment let us assume that we don't apply external force or flux to the system. Say we need to understand how a biomolecule like a protein behaves in water. Or maybe we need to understand why certain polymers starts to aggregate at a higher concentration of salts. These are questions which a wet-lab experimentalist may want to know but has no way to understand using existing experimental techniques. Classical MD simulations assume that particles obey F=ma, which means if you have initial positions and velocities of your particles you can predict the motion of the particles in future. Before getting into the details, let me explain some very fundamental interaction between particles possible.
The basic kinds of interactions possible between atoms are of 2 kinds :
- Bonded interactions
- Non-bonded interactions
For example, take the case of two water molecules as in the figure below. There are bonded interactions between hydrogen(grey) and oxygen(red) of the same molecule. Also, you can see there can be interactions between 2 water molecules which are non-bonded in nature. These 2 kinds of interactions are very different in nature.
As you can naively assume that the bonded interactions are stronger. And non-bonded interactions are weaker. The bonded interactions and non-bonded interactions comprise the FORCE-FIELD. Force-field actually refers to the functional form and parameter sets used to calculate the potential energy of a system. To completely explain what force-field is, let us take an excursion to the basics of physics. I will motivate things using an example. Let me assume that you know the concept of Force you studied in school. Also, we assume force is conservative in nature. I will explain why this is so. Work done by a force can be defined as the dot product of force and displacement vectors (theta is the angle between the force and displacement vectors).
Instead of two simple vectors if the force and displacement are dynamic we can write the above equation as this:
I will refer you to few nice links for beginners:
- A Khan Academy Video from youtube: Explains the concept of work, energy etc
- Another cool youtube video: This video explains about conservative forces, potential energy functions, and the gradient etc.
- A nice wired article on the difference between work and potential energy.
Why are we concerned about conservative force and what is it? Answer from wiki :
A conservative force is a force with the property that the total work done in moving a particle between two points is independent of the taken path. Equivalently, if a particle travels in a closed loop, the net work done (the sum of the force acting along the path multiplied by the displacement) by a conservative force is zero.
A conservative force is dependent only on the position of the object. If a force is conservative, it is possible to assign a numerical value for the potential at any point.
Since the energy is conserved, the sum of kinetic and potential energies must be conserved and same at points 'a' and 'b' (See FIG:2). Below we notate K as kinetic energy, K_a as kinetic energy at point 'a' and U is the respective potential energy. Delta symbol is the difference symbol. And Work done from 'a' to point 'b' is the difference in the kinetic energies Kb-Ka, which Ua-Ub. If the path was closed the total work done would have been zero(if points 'a' and 'b' were same).
the above equation concludes to:
The above equations are mathematical consequences, if the force is conservative. Those who wanted to see more mathematical rigor can see 2 wiki links here and here. In short MD simulations are trying to solve this differential equation :
Provided you have the initial coordinates and velocities (momentum to be precise) of the particles, you can start solving this equation. But something is missing here. We don't know the potential function U for our system yet!
COMING NEXT: How do you get the potential energy function a.k.a Force-Field?
Hi,
I am Devanand from Chennai, India. And my steemit handle is @dexterdev
Do you like my posts? In case you have questions, please ask as reply to this article. Also, Resteem and Upvote if you like these posts!
If you would like to see any improvements, please tell me.
Also, Follow me! :)