# yade-users team mailing list archive

## Re: [Question #698605]: The distribution of contact normal direction and contact normal force are not uniform after isotropic consolidation

```Question #698605 on Yade changed:

Status: Open => Needs information

Hello,

Please provide a MWE. M = minimal, i.e. also make the computation time minimal if possible (which is this case, see below).
I am running your code for a while (more then 1 hour) with veeeeery slow convergence.
If you provide the final packing and a script to load it, make one iteration to create interactions and O.save for the plot scripts, it is sufficient.

> After isotropic consolidation, I check the contact normal direction
and contact normal force distribution which should be evenly distributed
in all directions, and I found they are not uniform.

What is your definition of "even distribution" and "uniform"? They
cannot be perfect from the discrete nature of the simulation.

> def plotdirections(...

any difference from utils.plotDirections? what difference? why?

Why are you using different code for forces and directions? Aren't they essentially the same?
If you have code for forces, you can directly use it for directions (?)

The picture of force distribution seems overall ok to me (as discussed,
you cannot expect perfect circle).

The force distributions are exactly the same for all 3 sections, should
not be like this (!?)

> contact_normal_force_XY[nXY]+=fn
> contact_nXY[nXY]+=1

I would cut out "almost perpendicular" forces, or used projection of the force to the plane.
This way, a perpendicular force is assigned its full strength to a random bin.

> contact_normal_force_XY[i]=contact_normal_force_XY[i]/contact_nXY[i]

Why do you count the numbers and use an average force for each bin? Isn't total force of the bin more meaningful?
Imagine you have 10 same forces. 9 forces in one bin and 1 forces is in another bin. With this approach you would get the same height for both bins. Is this what you intend?

Cheers
Jan

--