I want to calculate diffusion constant vs time (D vs t) in Gromacs. Is there a direct way to do that? I want to check system equilibration using block averaging of diffusion constant. If there is another way to check equilibrium state, I would be appreciated to tell.
Simply run gmx msd on different time blocks from your simulation.
How you measure “equilibrium state” depends on what is important to you from the simulation. For some systems/properties of interest something as simple as the energy may be sufficient, which typically stabilises pretty quickly. However, with others (such as bilayer phase behaviour) the structure and behaviour occurs over much longer time frames.
Does the velocity of the particles and their correlation with time relate with the property you are interested in? If your answer is yes, then it is likely to provide an indicator. If your answer is no, then you need to find another property to monitor.