strange phenomenon with compute temp/deform

I think I’ve rationalized this. Since your granular assembly starts from rest when shearing commences, there is a positive momentum flux of x momentum at top of the box, negative at the bottom. The flux continue until the shear periodicity is obtained, then evolution of the statistics should stop. That’s why you’re seeing this behavior. Just start your box with a velocity ramp and you should be fine.

Again for clarity, by shear periodicity I mean v(x,y=0,z)+(shear rate)*height=v(x,y=height,z).

Hi Eric,

Thanks for looking into this. I have previously tried initialising with a velocity gradient and I found the same behaviour as you describe above.

Steve, perhaps an “IMPORTANT NOTE:” in the compute temp/deform doc warning that it may be necessary to explicitly initialise the velocity profile in order for this compute to do what it says it does?


I agree that some notes in the doc pages are in order, both
for compute temp/deform and fix deform. I think the issue
here is more about fix deform. The normal use of fix deform
remap v is for liquids where you are also using a thermostat
like fix nvt/sllod or vanilla fix nvt or fix langevin, with compute temp/deform
as the temp compute coupled to the thermostat. This will
coerce the fluid into following the box deformation, after
some suitable equilibration time.

In you case, for a granular system, you are not using a thermostat,
which means there is really no external force to persuade
the particles to move with the box. The only trigger for inducing
shear is when a particle crosses the +/- y face of the box and
its velocity gets remapped. This will happen symmetrically
and thus a -5 to 5 profile results. You can get around this
by using “velocity ramp” to initialize the velocities to be consistent
with the box deformation, which is another typical trick to
reduce the equilibration time, even for liquids.

In any event, the rule of thumb here is that you should
carefully monitor the velocity profile, only use compute temp/deform
if the profile matches the box deformation, and that using compute temp/profile
is always OK.


Check out the additions to the compute temp/deform
and fix deform doc pages, to see if the new info
would have helped you avoid your problems.


Hi Steve, Thanks a lot for making that addition - yes I think this would have been useful to read when starting out, particularly the note in the compute temp/deform page.

Many thanks,