Velocity Rescaling
系の現在の温度を T′、目標温度を T とするとき、ステップごとに速度(運動量)にスケーリング定数 s=T/T′ を乗じて系を補正する。
N 個の粒子について、Velocity Verlet による粒子 i の速度の時間発展を考える:
vi′(t+2Δt)=vi(t−2Δt)+miFi(t)Δt
時刻 t+Δt/2 において vi′ に対応する温度を T′ とするとき、運動エネルギーは
21i∑mivi′2(t+2Δt)=23NkBT′
の関係をもつ。この瞬間の系の目標温度を T、目標速度を vi(t+Δt/2) と定めるとき、系の速度 vi′ をスケーリング定数 s を用いて次のように補正する:
vi(t+2Δt)=svi′(t+2Δt)
この時刻において、運動エネルギーについて、
21i∑mivi2(t+2Δt)=21s2i∑mivi′2(t+2Δt)
すなわち
23NkBT=23s2NkBT′
の関係が成り立つから、
s=T′T
として系を補正できることがわかる。
Berendsen Thermostat
瞬間の温度 T′ が目標温度 T に緩和する速度を、緩和時定数 τ をパラメータとして、
dtdT′=τT−T′
が成り立つように制御する。
### Nose-Hoover Thermostat
Nose-Hoover Thermostat
系が温度 T0 の熱浴と平衡に熱平衡にあると考え、熱浴とエネルギーをやり取りする付加自由度 ζ を加える。
熱浴の温度を T0、質量を Q とするとき、Hamilton 運動方程式は、
dtdqi=mipi
dtdpi=Fi−ζpi
dtdζ=Q1(T−T0)