Subspring Network Model in UCS test

Hi all,
I am having a problem with setting the gap size (uniform value, just to make it easier) in the Subspring Network Contact Model, which can be featured as microcrack fabric and enables the reproduction of initial compaction behaviour in the stress-strain curve of the UCS test. I ran both in 2D and 3D; in the console, it looks fine, meaning it assigns the reference gap, but it doesn’t. Because when I checked the plot: contact rgap, it shows zero. As I am trying to understand this model more, any feedback is welcome!

My reference paper is from Potyondy, D.O., & Fu, W. (2024). A 3D Subspring Network Breakable Voronoi Model for Rock: Laboratory Scale Behavior. In Proceedings, 58th U.S. Rock Mechanics/Geomechanics Symposium (ARMA, Golden, Colorado, USA, June 2024), ARMA 24-493. Alexandria, Virginia: ARMA

The source code of my model is from Verification Examples of Spring Network Model: Using the Rigid Body Spring Network Paradigm. But I adapted it to the Subspring Network Contact Model. Follow the same simulation procedures; in Step2Contacts, I paste it here:
;------------------------------------------
; Create the contacts and assign the proerties.
; See contacts.dat for more information.

model restore ‘voro’
[emod = 8.e+9]
[pois = 0.25]
[fricAngle = 30]
[tenStr = 5.e+06]
[cohFac = 2.5]
[facetTotal = 0.001]
[rgap = - 2e-6]

program call ‘contacts’
model save ‘voroContacts’

;------------------------------------------;
; Create the contacts and assign the properties
; Expected input parameters are:
; emod Young’s modulus
; pois Poisson ratio
; fric Friction coefficient
; tenStr Tensile strength
; cohFac Cohesion is set to this factor multiplied by the
; tensile strength.

; Instead of self-similar scaling, dilation has been modified so that
; the facets are all moved outward (in the facet normal direction)
; by the specified amount
rblock dilate expand 0.0001 keep-inertial
; Set the density and use local damping
rblock attribute density 2750 damp 0.7
; The following command specifies:
; 1) Use areas in contacts for computing stiffnesses
; 2) Stress accumulation while cycling is required for the springnetwork
; model
; 3) Do not create contacts with initial area less than 1% of the total facet
; area. This is more efficient than inhibiting the contacts but, for very
; large strain problems, inhibiting may be more desirable as the contacts
; can be checked periodically for activation.
rblock contact-resolution update-area true accumulate-stress true …
facet-total [facetTotal]
; Assign the springnetwork model as the default slot in the CMAT
contact cmat default model subspringnetwork method compute-stiffness …
emod [emod] poisson [pois] …
property rgap [rgap] sn_ten 1e100 sn_coh 1e100 …
sn_fa [fricAngle] …
fric [math.tan(fricAngle/180*math.pi)]

model clean all

;sn_gap -2e-6
;rgap -2e-6
; Apply any facet groups to contacts.
rblock apply-facet-groups

; Assign uniform tensile strength in this simple example.
contact property sn_ten [tenStr] sn_coh [tenStr*cohFac]

; Bond the rblock-rblock contacts
contact method bond range contact gap -10000 0
; If no gap is specified, then the bond is activated if the pieces overlap.
; So we need to specify the gap range

Dear Jinci_Chen, This is David Potyondy. I have created a general PFC3D version 9 package that provides support for using the Subspring Network Breakable Voronoi model that
includes material creation and laboratory testing (direct-tension and triaxial/biaxial in 3D/2D). This package is ready for use, and will soon be put onto the Itasca website. For the time being, please send me an email to dpotyondy@oneitasca.com, and I will send you the package. I suggest that you use the package instead of trying to modify the manual doc {Verification Examples of Spring Network Model}
snbvPkgCover[9.2].pdf (1.1 MB)
.

1 Like

Thank you Dr. Potyondy. :grinning_face: