can we distinguish cracks of joints in jcfpmmat?

Asked by JIPEIQI

can we distinguish cracks of joints in jcfpmmat?
Normally in jcfpmmat, we have 4 types of cracks, that are tensile cracks of non-joints, shear cracks of non-joints, tensile cracks on joints and shear cracks on joints. How to indentify them

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
Luc Scholtès
Solved:
Last query:
Last reply:
Revision history for this message
Luc Scholtès (luc) said :
#1

Hi,

Currently, no distinction is made between cracks produced from "joint" or "matrix" interactions.

What would be the expected outcomes of these identifications? More pragmatically: How would you like to use this feature ? During postprocessing (e.g in paraview) and/or in the internal recorder of the law functor? Depending on what you need, we should be able to modify the code accordingly.

Luc

Revision history for this message
JIPEIQI (jpq-learning) said :
#2

Thank you for your reply, Luc.
If I understand correctly, the vtkRecorder will read the crack files of the law functor to generate the crack.vtu files. Am I correct?
So if I want to distinguish these cracks, I have to modify line 105 & 198 in JointedCohesiveFrictionalPM.cpp, which is
”file << boost::lexical_cast<string> ( scene->iter ) << " " << boost::lexical_cast<string> ( scene->time ) <<" "<< ........”
Of course I have to change the judgment condition.
After that, do I have to re-install all of yade?

Revision history for this message
JIPEIQI (jpq-learning) said :
#3

Hi Luc! There is another question related to this.
Can we adopt Law2_ScGeom6D_CohFrictPhys_CohesionMoment for the matrix interactions while Ip2_JCFpmMat_JCFpmMat_JCFpmPhys for the joint interactions?
I want to do this because I think the jcfpmmat considers the matrix interactions as contact bond models in PFC, in which moments are not considered.

Revision history for this message
Luc Scholtès (luc) said :
#4

Hi Jipeiqi,

I am not sure this is what you wanted but the option for distinguishing matrix and joint cracks when using Paraview for visualization is now available:

https://github.com/yade/trunk/commit/59495d08527c9c3c4047726bb7a51da24422a754

Regarding your second point (use of moment at contact), it is actually not related at all but I will nevertheless ask:

Why, in the first place, do you need/want to consider moment at contacts? Why do you think it will make a difference? If it is related to the related macroscopic behavior, I can already tell you that JCFPM with the near neighbour feature provides much more realistic behaviors than contact laws with moment (high ratios of UCS/UTS and non linear failure envelopes).

Now, regarding the technical possibility to combine JCFPM and cohesionMoment as you describe, I don't think this is possible.

Please open a dedicated thread if you want to discuss this aspect.

Cheers

Luc

Revision history for this message
JIPEIQI (jpq-learning) said :
#5

Thank you for your reply, Luc.
In many papers, including Potyondy and Coundall, 2004; Zhang and Wong 2012 and mine own paper, they will point out paraller bond model (which is similar like cohesionMoment) can be envisioned as an area of springs, compared to a point of spring which can not resisit particle rotation in contact bond model. They think paraller bond model is better to model cement-like materials without reason.
I test these two models yesterday by uniaxial compression test and Brazilian spilt test with same micro parameters. The uniaxial test has little difference and the Brazilian spilt test has about 20% difference. So basically, we cant say paraller bond model has much advantage over the contact bond model.

I want to distinguish cracks of joints on the paraview. I noted you write a new value (onjoint) into the cracks.txt file. Then how can I distinguish them in the paraview(I'm not very familar with the paraview). Do you think I can just change the crack type to:
1>> tensile crack of matriax
2>>shear crack of martriax
3>>tensile crack of joint
4>> shear crack of joint
The I can distinguish cracks by color of crack type in the paraview

Revision history for this message
Best Luc Scholtès (luc) said :
#6

To see cracks in Paraview, you just have to open the crack.vtu files created during your simulation (to get these, you need to add the 'cracks' attribute in the recorders list and also you have to define the same "Key" attribute as in the Law functor). Each point you'll see in the main window corresponds to a crack created during the simulation and you will be able to see their different attributes (type, onJnt, time of occurence, etc...).

Two ways to deal with these attributes:
- choosing the attribute in the "coloring" menu
- using the "threshold" function and selecting the attribute you want to threshold (e.g., selecting "onJnt" in the scalars menu and playing with the min/max values: if min=max=1, you'll see the cracks from joint interactions only, if min=max=0, you'll see the cracks from matrix interactions only).
By combining these two options, you should be able to distinguish tensile/shear/joint/matrix as you mentioned.

You can also apply glyphs to the cracks files so as to, e.g., associate a disk to each point (disks are good as they can be oriented according to the actual crack plane, i.e., the normal plane to the contact). I opened a thread in the Paraview mailing list when I was trying to do that: https://<email address hidden>/msg08166.html

Revision history for this message
JIPEIQI (jpq-learning) said :
#7

Thank you so much!

Revision history for this message
JIPEIQI (jpq-learning) said :
#8

Thanks Luc Scholtès, that solved my question.