← Back to team overview

yade-users team mailing list archive

Re: [Question #698566]: Confused by identificationSpheresOnJoint.py

 

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

    Status: Open => Answered

Luc Scholtès proposed the following answer:
I'll try to answer but, unfortunately, you'll have to go through the
code by yourself to understand everything in details:

- in the statements you mentioned, surface and plane have the same
meaning: they both represent the discontinuity plane/surface.

- you may have several fracture planes/surfaces in your model. The code
is written so that you can have maximum 3 planes associated to each
particle. For example, in a 2D model, if you have a fracture plane
dipping at 20° and another one dipping at 60°, they might intersect at
some location in your model. The particles located around the
intersection point must then have in memory the fact that they belong to
2 planes with different inclinations, hence the jointNormal1 and the
jointNormal2. Then, the code will be able to know if particles located
on each side of the planes belong to plane1 or to plane2 and adjust the
geometry (and behavior) according to their respective orientations
(normals). For instance, if there is an interaction between a particle
belonging to plane1 and a particle belonging to plane1 and plane 2, the
interaction geometry will be defined according to the geometry of
plane1. If they both belong to plan1e and to plane2, I think the
interaction geometry is not affected so that the overall behavior is
only affected by the surrounding well defined interactions (according to
plane1 or to plane2).

- nRef corresponds to the normal to the facet that is tested within the
interaction loop and which represents the actual discontinuity plane
(temporary attribute). JointNormali is the particle attribute (permanent
attribute): the code defines jointNormali according to nRef when and
then move on the next interaction.

Be careful: the code is made so that there is 2 loops:
- the first one which tests interactions between facet and spheres to identify which particles belong to the fracture plane.
- the second one which tests interactions between the particles belonging to the fracture plane (identified in the first loop) and particles in contact with these particles.

It is good that you want to understand but may I ask what is your goal
exactly? The code has been verified already and seems to work properly.
Do you plan to make some modifications?

Luc

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