← Back to team overview

yade-users team mailing list archive

Re: [Question #658905]: I need to simulate uniaxial compaction

 

Question #658905 on Yade changed:
https://answers.launchpad.net/yade/+question/658905

    Status: Open => Answered

mohsen proposed the following answer:
>>Thanks again for your hint. Do you mean I need to have two distinct
scripts if I want to follow the instructions like in odeometer test?

Nima If you follow this, you need to scripts. the first one is for
sample generation and compaction; and the second one for shearing. i do
not have any script regarding this approach.

>>  I don't need an exact script for what I am doing, even if you have
an approximate solution (script) regarding deactivating walls that would
be enough for me.

You can easily deactivates walls:

wall_front_activated=False

there are 6 walls which in your case all of them should be deactivate.
you may define a plate for compaction. After compaction of each layer
you may move or delete the plate and then you can generate again the
next layer and compact and so on


>Another critical question is about how recognizing the surface of previous layers. I mean, I am compacting layers based on the geometry before compaction. How we can enforce the code to understand the new position of layers (top surface of layers will be lower after compaction but I am generating the next layer exactly from the original height of top surface of previous layer  (before compaction)). Is there any solution?

You easily can distinguish the new position of the recent layer that has
been just compacted:

MaxZ=max([b.state.pos[2]+b.shape.radius for b in O.bodies if isinstance(b.shape,Sphere)])
MaxZ is the coordination of the grain with maximum height (Note that Z is defined as the axis which grain are compacted in).

Regards
Mohsen

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.