Two questions on JCFpmPhys

Asked by Xavier Thurman

Hi,

I have two questions on JCFpmPhys. The first one is how to calculate all the intact bonds befor loading? Besides, nbShearCracks and nbTensCracks are the numbers of broken bonds under shear or tensile loads (https://yade-dem.org/doc/yade.wrapper.html?highlight=jcfpmphys#yade.wrapper.Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM)?

The second question is about the theory of calculating totalShearCracksE and totalTensCracksE. Getting a good knowledge of the theories can help me modifying or writing my own code to work out some tough questions.

Thanks in advances,
Xavier

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
Robert Caulk
Solved:
Last query:
Last reply:
Revision history for this message
Best Robert Caulk (rcaulk) said :
#1

Hello Xavier,

>The first one is how to calculate all the intact bonds befor loading?

I do not quite understand, you want the total number of cohesive bonds? You could iterate through the interactions like so:

cohesiveCount = 0
for i in O.interactions:
 if hasattr(i.phys, 'isCohesive'):
              if i.phys.isCohesive == True:
                     cohesiveCount+=1

>The second question is about the theory of calculating totalShearCracksE and totalTensCracksE

It looks like Luc is simply computing the energy released by assuming it is equal to the energy stored in the normal and shear components of the interaction just before it breaks [1]:

0.5 * F_n^2/k_n + 0.5 * F_s^2/k_s
F_ = normal/shear force before break & k_ = normal/shear stiffness before break

Cheers,

Robert

[1]https://github.com/yade/trunk/blob/master/pkg/dem/JointedCohesiveFrictionalPM.cpp#L91

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

For the first point (number of intact bonds before loading), you can follow Robert's advice (loop over interactions and find those which are cohesive).

For the second point, I thought the names were obvious but it seems not so, yes, nbTensCracks is the number of cracks (cumulative) that fail due to normal loading (mode I rupture), and nbShearCracks is the number of cracks (cumulative) that fail due to shear loading (mode II rupture).

For the third point, as mentioned by Robert, totalShearCracksE and totalTensCracksE correspond to the energy released (cumulative) by either shear cracks or tensile cracks according to Robert's definition (equal to the elastic energy stored at contact in the normal and tangential springs before failure).

Luc

Revision history for this message
Xavier Thurman (xavierthurman) said :
#3

Thanks Robert Caulk, that solved my question.