← Back to team overview

yade-dev team mailing list archive

Re: [Bug 674000] [NEW] homoDeform=1 does not handle the periodic case correctly.

 

> I have two questions, one of which is for Bruno. My first point is that I do
> not understand the origin of the convective term (see the discussion we had
> in the thread I mentioned before) that you actually introduced
In 1D :
Say we have period size =1.
1) If point is at position x=1, it will be assigned a mean-field 
velocity v_p= 1*velGrad (Cundall's equation).
2) If it is at position 0, it will get the velocity v_p=0.
3) Remember we don't modify v_p if velGrad is not modified.

So, let's see what can happen in an extreme case : in one step, particle 
goes from x=1 to x=0 (on its own, not because of the period deformation) .
Without the convective term, the particle will still have v_p=1*velGrad, 
which is not consistent. It should be v_p=0.
With the convective term, it will give v_p=0.
Actually, this correction is accounting for the motion of particles in a 
v_p field that is constant in time but not constant in space.
In most cases, particles will have "free motion" way smaller than the 
period, and the effect will be negigeable.

For me, homo=3 is emulating Cundall's way. Why did I implement it that 
way? Precisely because I didn't want to solve this bug you just opened. 
It was simpler to work on velocities, especially because Yade is not 
working in reduced periodic coordinates (positions always between 0 and 
1). Instead, it uses absolute coordinates and never distinguises 
absolute velocities and mean-field velocity v_p.

Bruno

-- 
homoDeform=1 does not handle the periodic case correctly.
https://bugs.launchpad.net/bugs/674000
You received this bug notification because you are a member of Yade
developers, which is subscribed to Yade.

Status in Yet Another Dynamic Engine: New

Bug description:
Currently, in the periodic case, if homoDeform=1 (alias Cundall way) we do not adjust the values of the relative velocities as according to the velocity gradient. This should be done, since, in such a case, we only update particle positions and not particle velocities.





Follow ups

References