You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently we do not provide at all for constrained atoms in our simulations. However, when using an ase calculator with constraints, the forces are correctly set to 0, but the velocities may incorrectly have nonzero values if the distribution is not set up correctly.
To avoid this scenario we can add an extra DynamicalDistribution(...; fix=1:10) keyword that will ensure the specified atoms have their initial velocities set to 0.
In the future we might want to think about a more formal way of including constraints throughout the code but this is a simple fix that'll work for a lot of cases.
The text was updated successfully, but these errors were encountered:
I think this would be easy to include in a "formal" way by creating constructors for DynamicalDistributions that take an AbstractSimulation subtype as input.
That way, we could check NQCModels.mobileatoms() for any frozen atoms, as well as throw errors if there's a size mismatch.
I've effectively done this for VelocityBoltzmann in #332 and NQCD/NQCDistributions.jl#12 already, so should be a quick addition.
Currently we do not provide at all for constrained atoms in our simulations. However, when using an ase calculator with constraints, the forces are correctly set to 0, but the velocities may incorrectly have nonzero values if the distribution is not set up correctly.
To avoid this scenario we can add an extra
DynamicalDistribution(...; fix=1:10)
keyword that will ensure the specified atoms have their initial velocities set to 0.In the future we might want to think about a more formal way of including constraints throughout the code but this is a simple fix that'll work for a lot of cases.
The text was updated successfully, but these errors were encountered: