gmx anaeig calculates configurational entropy of the system. But it does give only one value of entropy. Is there any option I can use for calculating entropy along the complete trajectory?
The Entropy due to the Quasi Harmonic approximation is 27848.4 J/mol K
The Entropy due to the Schlitter formula is nan J/mol K.
So I am not getting time-series data (time vs entropy). I want to plot the graph between entropy and time like this https://pubs.rsc.org/image/article/2015/mb/c4mb00689e/c4mb00689e-f2_hi-res.gif This is done with NAMD trajectory and I want the same analysis with GROMACS trajectory.
Sorry, it seems I failed to make you understand the question. So the question is I am getting just 1 value of entropy but I want a complete series of entropy associated with each conformer, which I am not able to do. So I need help regarding this.
How legendre transform will help me? Do you want me to transform covariance data from gmx covar? With the use of gmx anaeig I am getting this, The Entropy due to the Quasi Harmonic approximation is 26546 J/mol K
The Entropy due to the Schlitter formula is 28262.6 J/mol K
2 eigenvectors selected for output: 1 5373 only. But I want the entropy of each frame.
You will only get a single entropy value for your system (I assume that your system is a protein). Entropy is a measure of the randomness of the system. Your system has translational, rotational and vibrational degrees of freedoms. Therefore, it has entropy components associated with each of the above DOFs (S(trans), S(rot), S(vib). Besides, it has conformational entropy, which arises from having different protein conformations. Gromacs employs QH approximation to estimate the configurational entropy which is the sum of conformational and vibrational entropies. What it basically does is perform a PCA analysis to get the eigenvectors (eigenvec.trr) and eigenvalues (eigenval.xvg). If you have 10 atoms in your protein, you will get 30 eigenvectors (3N) since you have 30 DOF. You can think of each of these eigenvectors as a different collective motion of atoms of your protein. Before you do the PCA analysis, it is essential to remove the translation and rotation of your trajectory to eliminate the entropy arising from those two components (use -fit rot+trans along with gmx trjconv). Otherwise, the first 6 eigenvectors will be translational and rotational motions of your system. In that case, you have to use -neveskip 6 along with gmx anaeig to remove these 6 eigenvectors from your entropy calculation. Gromacs calculates frequencies associated with each eigenvector and uses those values to estimate the configurational entropy. You can refer to their manual for more information.
Update: Just now, I realized what you were trying to do from your second comment. it looks like you have around 1788 atoms in your system from the eigenvector index. If it’s a protein, make sure to use only backbone atoms for the analysis since most of the conformational entropy coming from the backbone. Also, it looks like you have run 530 ns simulation, which is enough time for the system to sample the conformational space. If you are trying to calculate the convergence of the entropy, then you have to repeat the same calculation for different time frames separately. From the image you posted, it looks like they have calculated the entropy every 1ns starting from 100 ps. You should first generate a covariance matrix for the first 100 ps and then use that covariance matrix to estimate the entropy (use -b 0 -e 100). That is the entropy of your first point. Then the second point is 100 ps + 1ns (1100 ps) and you should generate a new covariance matrix and use that to estimate the new entropy of the system (use -b 0 -e 1100). Third would be 2100 ps (use -b 0 -e 2100). Likewise, you should repeat the calculation at least 50 times to cover the entire 50 ns trajectory. The best thing to do is the automation of the calculation steps using a script. Then you can calculate the time evolution of the entropy more frequently. There's nothing called "entropy of each conformer". What you are estimating here is the evolution of the entropy of the system over time.
Sir, now I have written a code in python to calculate Schlitter's entropy by the determinant method. I am really thankful to you because your reply help me understand the concept better.