SMASS and Nose-frequency - MD simulation
Posted: Thu Jun 01, 2023 11:59 am
Dear Developers and Users,
I am trying to control temperature fluctuation in my MD simulation using the Nose thermostat.
But I am confused a lot with the selection of the SMASS factor.
the vasp manual says
SMASS≥0
For SMASS≥0, a canonical ensemble is simulated using the algorithm of Nosé. The Nosé mass controls the frequency of the temperature oscillations during the simulation.[1][2][3] For SMASS=0, a Nosé-mass corresponding to the period of 40-time steps will be chosen. The Nosé-mass should be set such that the induced temperature fluctuation shows approximately the same frequencies as the typical 'phonon'-frequencies for the specific system. For liquids something like 'phonon'-frequencies might be obtained from the spectrum of the velocity auto-correlation function. If the ionic frequencies differ by an order of magnitude from the frequencies of the induced temperature fluctuations, the Nosé thermostat and ionic movement might decouple leading to a non-canonical ensemble. The frequency of the approximate temperature fluctuations induced by the Nosé-thermostat is written in the OUTCAR file.
Hence I tried to vary SMASS and got the following info
SMASS = 10.00 estimated Nose-frequenzy (Omega) = 0.42E+13 period in steps =****** mass= 0.486E-25a.u. 4.20 THz
SMASS = 5.00 estimated Nose-frequenzy (Omega) = 0.59E+13 period in steps =****** mass= 0.243E-25a.u. 5.90 THz
SMASS = 3.00 estimated Nose-frequenzy (Omega) = 0.76E+13 period in steps =826.03 mass= 0.146E-25a.u. 7.60 THz
SMASS = 2.00 estimated Nose-frequenzy (Omega) = 0.93E+13 period in steps =674.45 mass= 0.972E-26a.u. 9.30 THZ
SMASS = 1.96 estimated Nose-frequenzy (Omega) = 0.94E+13 period in steps =667.13 mass= 0.951E-26a.u. 9.40 THZ
SMASS = 1.85 estimated Nose-frequenzy (Omega) = 0.97E+13 period in steps =648.67 mass= 0.899E-26a.u. 9.70 THz
SMASS = 1.80 estimated Nose-frequenzy (Omega) = 0.98E+13 period in steps =639.84 mass= 0.875E-26a.u. 9.80 THZ
SMASS = 1.75 estimated Nose-frequenzy (Omega) = 0.10E+14 period in steps =630.89 mass= 0.851E-26a.u. 10.0 THz
SMASS = 1.50 estimated Nose-frequenzy (Omega) = 0.11E+14 period in steps =584.09 mass= 0.729E-26a.u. 11.0 THz
SMASS = 1.00 estimated Nose-frequenzy (Omega) = 0.13E+14 period in steps =476.91 mass= 0.486E-26a.u. 13.0 THz
SMASS = 0.00 estimated Nose-frequenzy (Omega) = 0.31E+15 period in steps = 40.00 mass= 0.855E-29a.u. 31.0 THz
However, I have done phonon calculations using VASP+phonopy. The first optical phonon at the Gamma point is at 2.5 THz. So here I have a few questions to clarify
before going into very deep AIMD
1. Even SMASS 10 gives only 4.2 THz but induces a very large period ( I hope it is more than 1000 steps ). So how can I select proper SMASS?
2. What is the meaning of "period in steps" and what it says about temperature fluctuation in MD calculation?
my understanding is the fluctuation in the temperature profile will repeat in every 40 ionic steps if I set SMASS = 0. Is it correct ??.
The info " mean value of Nose-thermostat <S> " is written into OUTCAR in every "NBLOCK*KBLOCK" ionic step. and <S> determines the momentum transfer to control the temperature.
3. So how often should <S> be updated? or How should NBLOCK and KBLOCK be selected? what are their optimal values?
Any comments on these questions are highly appreciated
I hope the answers to these questions may be beneficial for other users also.
Thank you
Best regards
Muthu Vallinayagam
Postdoctorate
TU Freiberg
Germany
I am trying to control temperature fluctuation in my MD simulation using the Nose thermostat.
But I am confused a lot with the selection of the SMASS factor.
the vasp manual says
SMASS≥0
For SMASS≥0, a canonical ensemble is simulated using the algorithm of Nosé. The Nosé mass controls the frequency of the temperature oscillations during the simulation.[1][2][3] For SMASS=0, a Nosé-mass corresponding to the period of 40-time steps will be chosen. The Nosé-mass should be set such that the induced temperature fluctuation shows approximately the same frequencies as the typical 'phonon'-frequencies for the specific system. For liquids something like 'phonon'-frequencies might be obtained from the spectrum of the velocity auto-correlation function. If the ionic frequencies differ by an order of magnitude from the frequencies of the induced temperature fluctuations, the Nosé thermostat and ionic movement might decouple leading to a non-canonical ensemble. The frequency of the approximate temperature fluctuations induced by the Nosé-thermostat is written in the OUTCAR file.
Hence I tried to vary SMASS and got the following info
SMASS = 10.00 estimated Nose-frequenzy (Omega) = 0.42E+13 period in steps =****** mass= 0.486E-25a.u. 4.20 THz
SMASS = 5.00 estimated Nose-frequenzy (Omega) = 0.59E+13 period in steps =****** mass= 0.243E-25a.u. 5.90 THz
SMASS = 3.00 estimated Nose-frequenzy (Omega) = 0.76E+13 period in steps =826.03 mass= 0.146E-25a.u. 7.60 THz
SMASS = 2.00 estimated Nose-frequenzy (Omega) = 0.93E+13 period in steps =674.45 mass= 0.972E-26a.u. 9.30 THZ
SMASS = 1.96 estimated Nose-frequenzy (Omega) = 0.94E+13 period in steps =667.13 mass= 0.951E-26a.u. 9.40 THZ
SMASS = 1.85 estimated Nose-frequenzy (Omega) = 0.97E+13 period in steps =648.67 mass= 0.899E-26a.u. 9.70 THz
SMASS = 1.80 estimated Nose-frequenzy (Omega) = 0.98E+13 period in steps =639.84 mass= 0.875E-26a.u. 9.80 THZ
SMASS = 1.75 estimated Nose-frequenzy (Omega) = 0.10E+14 period in steps =630.89 mass= 0.851E-26a.u. 10.0 THz
SMASS = 1.50 estimated Nose-frequenzy (Omega) = 0.11E+14 period in steps =584.09 mass= 0.729E-26a.u. 11.0 THz
SMASS = 1.00 estimated Nose-frequenzy (Omega) = 0.13E+14 period in steps =476.91 mass= 0.486E-26a.u. 13.0 THz
SMASS = 0.00 estimated Nose-frequenzy (Omega) = 0.31E+15 period in steps = 40.00 mass= 0.855E-29a.u. 31.0 THz
However, I have done phonon calculations using VASP+phonopy. The first optical phonon at the Gamma point is at 2.5 THz. So here I have a few questions to clarify
before going into very deep AIMD
1. Even SMASS 10 gives only 4.2 THz but induces a very large period ( I hope it is more than 1000 steps ). So how can I select proper SMASS?
2. What is the meaning of "period in steps" and what it says about temperature fluctuation in MD calculation?
my understanding is the fluctuation in the temperature profile will repeat in every 40 ionic steps if I set SMASS = 0. Is it correct ??.
The info " mean value of Nose-thermostat <S> " is written into OUTCAR in every "NBLOCK*KBLOCK" ionic step. and <S> determines the momentum transfer to control the temperature.
3. So how often should <S> be updated? or How should NBLOCK and KBLOCK be selected? what are their optimal values?
Any comments on these questions are highly appreciated
I hope the answers to these questions may be beneficial for other users also.
Thank you
Best regards
Muthu Vallinayagam
Postdoctorate
TU Freiberg
Germany