Correctly setting non-default temperatures in Brownian dynamics simulations
This note is for advanced BD (and possibly MD) users only - it is not relevant if you simulate IMP at the default IMP temperature (297.15 K).
The issue if you do simulations at non-default temperature is that the particles diffusion coefficients scale with T according to the equations of Brownian However, The BrownianDynamics class relies on whatever diffusion coefficients were set by the Diffusion decorator, regardless of the simulation temperature. Therefore, to simulate correctly at non-default temperatures, one must do two things: (1) Call BrownianDynamics::set_temperature() (2) Update the diffusion coefficients for all particles to scale with temperature - e.g. D is 10% higher at 330 K than at 300 K.
I will update the IMP documentation to explain this subtlety. Let me know if you think we should change the code behavior. Perhaps we can add code to automatically update D, but it's also risky and could lead to unexpected behavior.
Barak
participants (1)
-
Barak Raveh