SoftBond Model
The softbond model is referred to in commands and FISH by the name softbond.
Introduction
The softbond model can be used to simulate both unbonded and bonded systems.
In an unbonded state, it behaves essentially similar to the contact model proposed by [Jiang2015a], providing the ability to transmit both a force and a moment at the contact point, with frictional strength parameters limiting the shear force, bending moment and twisting moment.
In its bonded formulation, the behavior is similar to that of a linear parallel bond model, with the possibility for the bond to fail if the bond strength is exceeded either in shear or in tension. However, contrary to the linear parallel bond model, the bond is not removed upon failure. Instead, it may enter into a softening regime until the bond stress reaches a threshold value at which the bond is removed and considered broken. The slope and tensile breakage strength during softening can be specified by the user (via the softening factor and the softening tensile strength factor, respectively). Another difference with the linear parallel bond model is that only one set of stiffnesses is used for both the unbonded and bonded formulations. This behavior is essentially similar to that proposed by [Ma2018], with the difference that the bond elongation used to update the normal stress in the softening regime accounts for both the normal displacement and bending increments.
Behavior Summary
A soft bond can be envisioned as a set of elastic springs with constant normal and shear stiffnesses, uniformly distributed over a {rectangular in 2D; circular in 3D} crosssection lying on the contact plane and centered at the contact point. Relative motion at the contact causes a linear force and moment to develop, that act on the two contacting pieces. If the bond is inactive, frictional strength parameters cap the shear force, bending and twisting moments. If the bond is active, the force and moment can be related to maximum normal and shear stresses acting within the bond material at the bond periphery. If the maximum normal stress exceeds the bond tensile strength, the bond may enter a softening regime to a specified failure criteria. If the maximum shear stress exceeds the bond shear strength, then it breaks. After failure, the behavior reverts to the unbonded formulation.
ActivityDeletion Criteria
A contact with the soft bond model is active if it is bonded or if the surface gap is less than or equal to zero. The forcedisplacement law is skipped for inactive contacts.
ForceDisplacement Law
The forcedisplacement law for the softbond model updates the contact force and moment:
where \(\mathbf{F}\) is a linear force, \(\mathbf{F^{d}}\) is a dashpot force, and \(\mathbf{M}\) is a linear moment. These forces and moments are updated as described below.
The linear force is resolved into a normal and shear force, and the linear moment is resolved into a twisting and bending moment:
where \(F_n > 0\) is tension. The shear force and bending moment lie on the contact plane and are expressed in the contact plane coordinate system:
The crosssectional properties of the softbond contact are updated as:
(4)\[\begin{split}\begin{array}{l} R = \lambda \left\{ \begin{array}{rl} \min\left( R^{(1)}, R^{(2)} \right), & \mbox{ballball} \\ R^{(1)}, & \mbox{ballfacet} \end{array} \right. \\[3mm] A = \left\{ \begin{array}{rl} 2 R t, & \mbox{2D $(t = 1)$} \\ \pi R^2, & \mbox{3D} \end{array} \right. \\[3mm] I = \left\{ \begin{array}{rl} \tfrac{2}{3} t R^3, & \mbox{2D $(t = 1)$} \\ \tfrac{1}{4} \pi R^4, & \mbox{3D} \end{array} \right. \\[3mm] J = \left\{ \begin{array}{rl} 0, & \mbox{2D} \\ \tfrac{1}{2} \pi R^4, & \mbox{3D} \end{array} \right. \end{array}\end{split}\]
where \(A\) is the crosssectional area, \(I\) is the moment of inertia of the cross section (about the line passing through \(\mathbf{x_{c}}\) and in the direction of \(\mathbf{M_b}\)), and \(J\) is the polar moment of inertia of the cross section (about the line passing through \(\mathbf{x_{c}}\) and in the direction of \(\hat{\mathbf{n}}_\mathbf{c}\)). The cross section is {rectangular in 2D; circular in 3D}. The property user_area can be used to specify a different crosssectional area that remains constant, independent of the piece geometries.
The forces and moment are updated as described below for the unbonded or bonded softbond contact model.
Unbonded Behavior
When unbonded, the forces and moment are updated with the following steps.
Update \(F_n\) based on the normalforce update mode \(M_l\):
If \(M_l=0\) (absolute update), the normal force is computed as:
(5)\[\begin{split}F_n = \left\{ \begin{array}{rl} k_n A g_s, & g_s < 0 \\ 0 , & \mbox{otherwise} \end{array} \right.\end{split}\]where \(g_s\) is the surface gap (opposite of the overlap).
If \(M_l=1\) (incremental update), the normal force is computed as:
(6)\[F_n := \max\left(F_n + k_n {\kern 1pt} A \, \Delta \delta _n, 0\right)\]where \(\Delta \delta _n\) is the relative normaldisplacement increment of Equation (12) of the “Contact Resolution” section.
Note that the unbonded behavior cannot sustain tensile normal force.
Update \(\mathbf{F_s}\):
The shear force \(\mathbf{F_s}\) is first updated with:
(7)\[\mathbf{F_s} := \mathbf{F_s}  k_s {\kern 1pt} A{\kern 1pt} \Delta \pmb{δ} _\mathbf{s}\]where \(\Delta \pmb{δ}_\mathbf{s}\) is the relative sheardisplacement increment of :Equation (12) of the “Contact Resolution” section.
Update \(M_t\):
(8)\[\begin{split} M_t := \left\{ \begin{array}{rl} 0, & \mbox{2D} \\ M_t  k_s J \Delta \theta_t, & \mbox{3D} \end{array} \right.\end{split}\]where \(\Delta \theta _{t}\) is the relative twistrotation increment of Equation (12) of the “Contact Resolution” section.
Update \(\mathbf{M_b}\):
(9)\[\mathbf{M_b} := \mathbf{M_b}  k_n {\kern 1pt} I{\kern 1pt} \Delta \pmb{θ}_\mathbf{b}\]where \(\Delta \pmb{θ}_\mathbf{b}\) is the relative bendrotation increment of Equation (12) of the “Contact Resolution” section.
Enforce the slip criteria:
A Coulomb friction criterion is enforced on the shear force such that:
(10)\[\begin{split}\mathbf{F_s} = \left\{ \begin{array}{rl} \mathbf{F_s} , & \ \mathbf{F_s} \ \le  \mu F_n \\  \mu F_n \bigl( \mathbf{F_s} / \ \mathbf{F_s} \ \bigr), & \mbox{otherwise.} \end{array} \right.\end{split}\]The slip state is updated as:
(11)\[\begin{split}s = \left\{ \begin{array}{rl} \mbox{true}, & \ \mathbf{F_s} \ =  \mu F_n \\ \mbox{false}, & \mbox{otherwise.} \end{array} \right.\end{split}\]If the slip state is true, then the contact is sliding.
Similarly, maximum bending and twisting moment criteria are enforced as:
(12)\[\begin{split} \begin{array}{l} \mathbf{M_b} = \left\{ \begin{array}{rl} \mathbf{M_b} , & \ \mathbf{M_b} \ \le M_b^*\\ M_b^* \bigl( \mathbf{M_b} / \ \mathbf{M_b} \ \bigr), & \mbox{otherwise.} \end{array} \right. \\ M_t = \left\{ \begin{array}{rl} M_t , & \M_t\ \le M_t^* \\ M_t^* \bigl( M_t / \M_t\ \bigr), & \mbox{otherwise.} \end{array} \right. \end{array}\end{split}\]where the critical bending and twisting moments are:
(13)\[\begin{split}\begin{array}{l} M_b^* & =  2.1 \lambda_b F_n R {\kern 1pt} / {\kern 1pt} 4 \\ M_t^* & =  0.65 \lambda_t \mu F_n * R \end{array}\end{split}\]Where \(\lambda_b\) and \(\lambda_t\) are respectively the bending and twisting friction multiplier, that default to 1.0. The critical bending and twisting moments with \(\lambda_b=1.0\) and \(\lambda_t=1.0\) correspond to the values proposed by [Jiang2015a].
The bending and twisting slip states are updated as:
(14)\[\begin{split}\begin{array}{rl} s_b = \left\{ \begin{array}{rl} \mbox{true}, & \ \mathbf{M_b} \ = M_b^* \\ \mbox{false}, & \mbox{otherwise.} \end{array} \right. \\ s_t = \left\{ \begin{array}{rl} \mbox{true}, & \ \mathbf{M_t} \ = M_t^* \\ \mbox{false}, & \mbox{otherwise.} \end{array} \right. \\ \end{array}\end{split}\]Whenever the slip state, bendingslip state or twistingslip state change, the slip_change callback event occurs where the first argument is the contact pointer, the second argument is an integer ranging from 1 to 7 denoting which slip state(s) has(have) changed, and 3 addittional arguments holding the current values of the shear, bend and twist slip states.
Update the dashpot forces:
The dashpot force is updated as in the linear model.
Bonded Behavior
By default the bonded behavior of the softbond model is essentially that of the linear parallel bond (i.e., when the softening factor \(\zeta = 0\)). Note that, if the softening tensile strength factor \(\gamma = 1.0\), tensile softening is also inhibited. When \(\zeta \neq 0\) and \(\gamma \neq 1.0\) softening behavior in tension can occur. It is important to realize that softening only applies to the extension response; the shear response does not soften. Once the tensile stress at the bond periphery is exceeded during extension, the tensile stress is not automatically set to 0 as in the linear parallel bond model. Instead, the tensile stress is reduced with continued extension past the peak tensile strength. Softening continues until the tensile stress during extension is less than the product of \(\gamma\) and the peak tensile strength. Thus, when \(\gamma = 0\), tensile softening occurs until the tensile stress reaches 0 during extension. The rate at which softening occurs is governed by the softening factor \(\zeta\). If \(\zeta = 1\), tensile softening occurs with the same absolute rate as extension up to the peak tensile strength, though with the opposite sign (i.e, when extending before softening the tensile stress increases whereas when extending past the peak tensile strength, the tensile stress decreases). This behavior is inspired by the model of [Ma2018] though the softbond behavior is different in a number of ways. Note that in order to reach an arbitrarily large UCS to tensile ratio with the softbond model shear failure must be inhibited.
When bonded, the forces and moment are updated with the following steps.
Update \(F_n\) and \(\mathbf{F_s}\) using an incremental formulation:
(15)\[\begin{split}\begin{array}{rl} F_n & := F_n + k_n {\kern 1pt} A \Delta \delta _n \\ \mathbf{F_s} & := \mathbf{F_s}  k_s {\kern 1pt} A{\kern 1pt} \Delta \pmb{δ} _\mathbf{s} \end{array}\end{split}\]where \(\Delta \delta _n\) and \(\Delta \pmb{δ}_\mathbf{s}\) are respectively the relative normaldisplacement and sheardisplacement increments of Equation (12) of the “Contact Resolution” section.
Update \(\mathbf{M_b}\) and \(M_t\):
(16)\[\begin{split}\begin{array}{rl} \mathbf{M_b} & := \mathbf{M_b}  k_n {\kern 1pt} I{\kern 1pt} \Delta \pmb{θ}_\mathbf{b} \\ M_t & := \left\{ \begin{array}{rl} 0, & \mbox{2D} \\ M_t  k_s J \Delta \theta_t, & \mbox{3D} \end{array} \right. \end{array}\end{split}\]where \(\Delta \pmb{θ}_\mathbf{b}\) and \(\Delta \theta _{t}\) are respectively the relative bendrotation and twistrotation increments of Equation (12) of the “Contact Resolution” section.
Update the maximum normal (\(\sigma\), \(\sigma > 0\) is tension) and shear (\(\tau\)) stresses at the bond periphery:
(17)\[\begin{split}\begin{array}{l} \sigma = \displaystyle \frac{F_n} {A} + \beta \frac{\left\ \mathbf{M_b} \right\ R}{I} \\ \tau = \frac{\left\ \mathbf{F_s} \right\}{A} + \left\{ \begin{array}{rl} 0, & \mbox{2D} \\ \beta \frac{\left M_t \right R}{J}, & \mbox{3D} \end{array} \right. \\ \mbox{with }\quad \beta \in [0, 1]. \end{array}\end{split}\]
Update the bond state:
If the bond is intact (\(B=3\)) and the maximum normal stress at bond periphery exceeds the bond tensile strength (\(\sigma > \sigma_c\)), then the bond enters in softening regime (\(B=4\)), and the maximal bond elongation is set to:
(18)\[\begin{split}\begin{array}{l} l^*= l_c (1.0 + \zeta) \\ \mbox{with } l_c = \displaystyle\frac{F_n} {k_n A} + \beta \frac{\left\ \mathbf{M_b} \right\ R}{k_n I} \end{array}\end{split}\]
where \(l_c\) is the critical bond elongation (at peak strength) and \(\zeta\) is the bond softening factor.
If the bond is in softening regime (\(B=4\)), then the normal stress at bond periphery is checked against the softening envelope as follows.
The maximum stress is given by:
(19)\[\sigma^* = \displaystyle\frac{\sigma_c (l^*l) }{ \zeta l_c}\]where the current bond elongation \(l\) is given by:
(20)\[l = l_c + \delta l + R \pmb{\delta θ}_\mathbf{b}\]where \(\delta l\) is a measure of the bond elongation since softening started:
(21)\[\delta l := \delta l + \Delta \delta _n\]and \(\pmb{\delta θ}_\mathbf{b}\) is a measure of the accumulated bending since softening started.
If the current tensile stress is greater than \(\sigma^*\), then it is projected back on the softening envelope, otherwise the bond enters in compression:
(22)\[\begin{split}\begin{array}{l} \mbox{if } \sigma \ge \sigma^* \qquad \mbox{ then} \\ \qquad \left\{ \begin{array}{l} F_n & := F_n {\kern 1pt} \left(\sigma^* / \sigma \right) \\ \mathbf{M_b} & := \mathbf{M_b} {\kern 1pt} \left(\sigma^* / \sigma \right) \end{array} \right. \\ \mbox{else } \\ \qquad \left\{ \begin{array}{l} B & = 5 \mbox{ (compression starts)} \\ \sigma_{m} & = \sigma \\ l_m & := l_c + \delta l + R \pmb{\delta θ}_\mathbf{b} \end{array} \right. \end{array}\end{split}\]where \(\sigma_{m}\) and \(l_m\) are respectively the tensile stress and elongation at which the bond enters in compression.
If the bond is in softening regime and in compression (\(B=5\)) and the maximum normal stress at bond periphery exceeds the bond tensile strength at which compression initiated, then the bond state is set to be back in softening regime (\(B=4\)) and the tensile force and bending moment are scaled to project the tensile stress on the softening envelope as discussed above.
Check for bond failure:
Tensile failure is first checked if the bond is in softening regime (\(B=4\)):
(23)\[\begin{split}\begin{array}{l} \mbox{if } B=4 \mbox{ and } \sigma \le \sigma_c {\kern 1pt} \gamma \qquad \mbox{ then} \\ \qquad \left\{ \begin{array}{l} B & = 1 \mbox{ (tensile failure)} \\ \mathbf{F} & = \mathbf{0} \\ \mathbf{M} & = \mathbf{0} \end{array} \right. \end{array}\end{split}\]If the bond has not failed in tension, then shear failure is assessed. The shear strength \(\overline{\tau}_{c} = \overline{c}  \sigma \tan \overline{\phi}\), where \(\sigma = \overline{F}_{n} / \overline{A}\) is the average normal stress acting on the parallel bond cross section. If the shearstrength limit is exceeded \((\overline{\tau} > \overline{\tau}_{c})\), then break the bond in shear:
(24)\[\begin{split}\begin{array}{l} \mbox{if } \tau > \tau_c \qquad \mbox{ then} \\ \qquad B = 2 \mbox{ (shear failure)} \end{array}\end{split}\]
If the bond has broken, then the bond_break callback event is triggered, and the behavior becomes that of an unbonded softbond model.
Energy Partitions
The softbond model provides three energy partitions:
strain energy, \(E_{k}\), stored in the linear springs;
slip energy, \(E_{\mu }\), defined as the total energy dissipated by frictional slip;
dashpot energy, \(E_{\beta }\), defined as the total energy dissipated by the dashpots; and
Keyword 
Symbol 
Description 
Range 
Accumulated 

SoftBond: 


\(E_{k}\) 
strain energy 
\([0.0,+\infty)\) 
NO 

\(E_{\mu}\) 
total energy dissipated by slip 
\((\infty,0.0]\) 
YES 
Dashpot Group: 


\(E_{\beta}\) 
total energy dissipated by dashpots 
\((\infty,0.0]\) 
YES 
If energy tracking is activated (see the model energy
command), the energy partitions are updated as described below.
Update the strain energy:
(25)\[{\rm E} _{k} =\frac{1}{2} \left( \frac{F_n^{2} }{k_{n}{\kern 1pt} A} + \frac{\left\ \mathbf{F_s} \right\ ^{2} }{k_{s} {\kern 1pt} A} + \frac{\left\ \mathbf{M_b} \right\ ^{2} }{k_n {\kern 1pt} I} + \frac{M_t^{2} }{k_s {\kern 1pt} J} \right).\]Update the slip energy:
(26)\[\begin{split}\begin{array}{l} E_{\mu } := E_{\mu} + \Delta E_{\mu}^s + \Delta E_{\mu}^b + \Delta E_{\mu}^t \\ {\rm where} \\ \qquad \begin{array}{l} \Delta E_{\mu}^s :=  {\tfrac{1}{2}} \left(\left(\mathbf{F_{s}} \right)_{o} +\mathbf{F_{s}} \right)\cdot \Delta \pmb{δ} _\mathbf{s}^{\mu } \\ \Delta E_{\mu}^b :=  {\tfrac{1}{2}} \left(\left(\mathbf{M_{b}} \right)_{o} +\mathbf{M_{b}} \right)\cdot \Delta \pmb{\theta} _\mathbf{b}^{\mu } \\ \Delta E_{\mu}^t :=  {\tfrac{1}{2}} \left(\left(M_{t} \right)_{o} + M_{t} \right)\cdot \Delta \pmb{\theta} _\mathbf{t}^{\mu } \\ \end{array} \\ {\rm with} \\ \qquad \begin{array}{l} \Delta \pmb{δ} _\mathbf{s}^{\mu } =\Delta \pmb{δ} _\mathbf{s} \Delta \pmb{δ} _\mathbf{s}^{k} =\Delta \pmb{δ} _\mathbf{s} \left(\frac{\mathbf{F_{s}} \left(\mathbf{F_{s}} \right)_{o} }{k_{s} {\kern 1pt} A} \right) \\ \Delta \pmb{\theta} _\mathbf{b}^{\mu } =\Delta \pmb{\theta} _\mathbf{b} \Delta \pmb{\theta} _\mathbf{b}^{k} =\Delta \pmb{\theta} _\mathbf{b} \left(\frac{\mathbf{M_{b}} \left(\mathbf{M_{b}} \right)_{o} }{k_{n} {\kern 1pt} I} \right) \\ \Delta \pmb{\theta} _\mathbf{t}^{\mu } =\Delta \pmb{\theta} _\mathbf{t} \Delta \pmb{\theta} _\mathbf{t}^{k} =\Delta \pmb{\theta} _\mathbf{t} \left(\frac{M_{t} \left(M_{t} \right)_{o} }{k_{s} {\kern 1pt} J} \right) \\ \end{array} \end{array}\end{split}\]Update the dashpot energy:
(27)\[E_{\beta } :=E_{\beta }  \mathbf{F^{d}} \cdot \left(\dot{\pmb{δ} }{\kern 1pt} {\kern 1pt} \Delta t\right)\]where \(\dot{\pmb{δ} }\) is the relative translational velocity of this equation of the “Contact Resolution” section.
Properties
The properties defined by the softbond model are listed in the table below for a concise reference; see the “Contact Properties” section for a description of the information in the table columns. The mapping from the surface inheritable properties to the contact model properties is also discussed below.
Keyword 
Symbol 
Description 
Type 
Range 
Default 
Modifiable 
Inheritable 

softbond 
Model name 

SoftBond Group: 

kn 
\(k_n\) 
Normal stiffness [stress/disp./area] 
FLT 
\([0.0,+\infty)\) 
0.0 
YES 
YES 
ks 
\(k_s\) 
Shear stiffness [stress/disp./area] 
FLT 
\([0.0,+\infty)\) 
0.0 
YES 
YES 
fric 
\(\mu\) 
Friction coefficient [] 
FLT 
\([0.0,+\infty)\) 
0.0 
YES 
YES 
rgap 
\(g_r\) 
Reference gap [length] 
FLT 
\(\mathbb{R}\) 
0.0 
YES 
NO 
sb_bmul 
\(\lambda_b\) 
Bending Friction multiplier [] 
FLT 
\([0.0,+\infty)\) 
1.0 
YES 
YES 
sb_tmul 
\(\lambda_t\) 
Twisting Friction multiplier [] 
FLT 
\([0.0,+\infty)\) 
1.0 
YES 
YES 
sb_mode 
\(M_l\) 
Normalforce update mode [] 
INT 
\(\{0,1\}\) 
0 
YES 
NO 
\(\;\;\;\;\;\;\begin{cases} \mbox{0: update is absolute} \\ \mbox{1: update is incremental} \end{cases}\) 

emod 
\(E^*\) 
Effective modulus [force/area] 
FLT 
\([0.0,+\infty)\) 
0.0 
NO 
N/A 
kratio 
\(\kappa^*\) 
Normaltoshear stiffness ratio [] 
FLT 
\([0.0,+\infty)^*\) 
0.0\(^*\) 
NO 
N/A 
\(\kappa^* \equiv \frac{k_n}{k_s}\) 

sb_rmul 
\(\lambda\) 
Radius multiplier [] 
FLT 
\((0.0,+\infty)\) 
1.0 
YES 
NO 
sb_area 
\(A\) 
Soft bond area [length*length] 
FLT 
\((0.0,+\infty)\) 
N/A 
NO 
NO 
user_area 
\(A\) 
Constant soft bond area [length*length] 
FLT 
\((0.0,+\infty)\) 
0.0 
YES 
NO 
sb_radius 
\(R\) 
Effective radius [length] 
FLT 
\((0.0,+\infty)\) 
N/A 
NO (set via \(\lambda\)) 
NO 
sb_soft 
\(\zeta\) 
Softening factor [] 
FLT 
\([0.0,+\infty)\) 
0.0 
YES 
NO 
sb_cut 
\(\gamma\) 
Softening Tensile strength factor [] 
FLT 
\([0.0,1]\) 
1.0 
YES 
NO 
sb_mcf 
\(\beta\) 
Momentcontribution factor [] 
FLT 
\([0.0,1]\) 
1.0 
YES 
NO 
sb_ten 
\(\sigma_c\) 
Tensile strength [stress] 
FLT 
\([0.0,+\infty)\) 
0.0 
YES 
NO 
sb_coh 
\(c\) 
Cohesion [stress] 
FLT 
\([0.0,+\infty)\) 
0.0 
YES 
NO 
sb_fa 
\(\phi\) 
Friction angle [degrees] 
FLT 
\([0.0,90.0)\) 
0.0 
YES 
NO 
sb_state 
\(B\) 
Bond state 
INT 
{0,1,2,3,4,5} 
0 
NO 
NO 
\(\;\;\;\;\;\;\begin{cases} \mbox{0: unbonded} \\ \mbox{1: unbonded & broke in tension} \\ \mbox{2: unbonded & broke in shear} \\ \mbox{3: bonded} \\ \mbox{4: bonded & softening} \\ \mbox{5: bonded & compressing} \end{cases}\) 

sb_shear 
\(\tau_{c}\) 
Bond shear strength [stress] 
FLT 
\([0.0,+\infty)\) 
0.0 
NO (set via \(c\) and \(\sigma_c\)) 
N/A 
sb_sigma 
\(\sigma\) 
Normal stress at bond periphery [stress] 
FLT 
\([0.0,+\infty)\) 
0.0 
NO 
N/A 
sb_tau 
\(\tau\) 
Shear stress at bond periphery [stress] 
FLT 
\([0.0,+\infty)\) 
0.0 
NO 
N/A 
sb_slip 
\(s\) 
Slip state [] 
BOOL 
{false,true} 
false 
NO 
N/A 
\(\;\;\;\;\;\;\begin{cases} \mbox{true: slipping} \\ \mbox{false: not slipping} \end{cases}\) 

sb_slipb 
\(sb\) 
Bending slip state [] 
BOOL 
{false,true} 
false 
NO 
N/A 
\(\;\;\;\;\;\;\begin{cases} \mbox{true: slipping} \\ \mbox{false: not slipping} \end{cases}\) 

sb_slipt 
\(st\) 
Twisting slip state [] 
BOOL 
{false,true} 
false 
NO 
N/A 
\(\;\;\;\;\;\;\begin{cases} \mbox{true: slipping} \\ \mbox{false: not slipping} \end{cases}\) 

sb_force 
\(\mathbf{F}\) 
Force (contact plane coord. system) 
VEC 
\(\mathbb{R}^3\) 
\(\mathbf{0}\) 
YES 
NO 
\(\left( F_n,F_{ss},F_{st} \right) \quad \left(\mbox{2D model: } F_{ss} \equiv 0 \right)\) 

sb_moment 
\(\mathbf{M}\) 
Moment (contact plane coord. system) 
VEC 
\(\mathbb{R}^3\) 
\(\mathbf{0}\) 
YES 
NO 
\(\left( M_t,M_{bs},M_{bt} \right) \quad \left(\mbox{2D model: } M_{t} \equiv M_{bt} \equiv 0 \right)\) 

Dashpot Group: 

dp_nratio 
\(\beta_n\) 
Normal critical damping ratio [] 
FLT 
\([0.0,1.0]\) 
0.0 
YES 
NO 
dp_sratio 
\(\beta_s\) 
Shear critical damping ratio [] 
FLT 
\([0.0,1.0]\) 
0.0 
YES 
NO 
dp_mode 
\(M_d\) 
Dashpot mode [] 
INT 
{0,1,2,3} 
0 
YES 
NO 
\(\;\;\;\;\;\;\begin{cases} \mbox{0: full normal & full shear} \\ \mbox{1: notension normal & full shear} \\ \mbox{2: full normal & slipcut shear} \\ \mbox{3: notension normal & slipcut shear} \end{cases}\) 

dp_force 
\(\mathbf{F^d}\) 
Dashpot force (contact plane coord. system) 
VEC 
\(\mathbb{R}^3\) 
\(\mathbf{0}\) 
NO 
NO 
\(\left( F_n^d,F_{ss}^d,F_{st}^d \right) \quad \left(\mbox{2D model: } F_{ss}^d \equiv 0 \right)\) 

\(^*\) By convention, \(\kappa^*\) equals zero if either normal or shear stiffness is zero. 
Note
Modifying the contact model force will not alter forces accumulated to the bodies. Therefore, any change to \(\mathbf{F^l}\) or \(\mathbf{M}\) may only be effective during the next forcedisplacement calculation. When \(M_l = 0\), the normal component of the linear force is automatically overridden during the next forcedisplacement calculation.
Surface Property Inheritance
The linear stiffnesses, \(k_n\) and \(k_s\), and the friction coefficient, \(\mu\), may be inherited from the contacting pieces. See this section from the linear formulation for details on property inheritance.
Methods
Method 
Arguments 
Symbol 
Type 
Range 
Default 
Description 

SoftBond Group: 

area 
Set user_area to sb_area 

deformability 
Set deformability 

emod 
\(E^*\) 
FLT 
\([0.0,+\infty)\) 
N/A 
Effective modulus 

kratio 
\(\kappa^*\) 
FLT 
\([0.0,+\infty)^*\) 
N/A 
Normaltoshear stiffness ratio 

bond 
Bond the contact if \(g_c \in G\) 

gap 
\(G\) 
VEC2 
\(\mathbb{R}^2\) 
\((\infty,0]\) 
Gap interval 

soft 
\(\zeta\) 
FLT 
\([0.0,+\infty)\) 
\(0.0\) 
Softening parameter 

cut 
\(\gamma\) 
FLT 
\([0.0,1.0]\) 
\(1.0\) 
Softening threshold parameter 

unbond 
Unbond the contact if \(g_c \in G\) 

gap 
\(G\) 
VEC2 
\(\mathbb{R}^2\) 
\((\infty,0]\) 
Gap interval 

\(^*\) By convention, setting \(\kappa^*\) equal to zero sets the shear stiffness to zero but does not modify the normal stiffness. 
Area
Set the user_area property via the current sb_area. This operation means that the contact area stays constant and is fixed independent of changes to the piece sizes/geometries. In order for the stiffnesses to be recomputed accounting for this area, one should subsequently call the deformabilty method.
Deformability
The deformability can be specified with the deformability method, which sets
The first term in this expression is obtained by equating the normal stiffness to the axial stiffness of the volume of material shown in this figure of the linear model formulation.
Bond
Activate the bond if the contact gap between the pieces is within the bondinggap interval.
If no gap is specified, then the bond is activated if the pieces overlap.
A single value can be specified with the gap keyword corresponding to the maximum gap.
One can ensure the existence of contacts between all pieces with a contact gap less than a specified bonding gap \((g_b)\) by specifying \(g_b\) with the proximity in the contact cmat default
command of the Contact Model Assignment Table (CMAT). If the bond is activated, then the normal force calculation mode sb_mode is automatically set to 1 (incremental).
Unbond
Deactivate the bond if the contact gap between the pieces is within the gap interval. If no gap is specified, then the bond is deactivated if the pieces overlap. A single value can be specified with the gap keyword corresponding to the maximum gap. If the bond is deactivated, then the bond state becomes unbonded \((B=0)\). The force and moment are unaffected and will be updated during the next cycle.
Callback Events
Event 
Array Slot 
Value Type 
Range 
Description 

contact_activated 
Contact has become active 

1 
C_PNT 
N/A 
Contact pointer 

SoftBond Group: 

slip_change 
Slip state has changed 

1 
C_PNT 
N/A 
Contact pointer 

2 
INT 
{0,7} 
Slip change mode 

\(\;\;\;\;\;\;\begin{cases} \mbox{1: shear slip state has changed} \\ \mbox{2: bend slip state has changed} \\ \mbox{3: twist slip state has changed} \\ \mbox{4: shear & bend slip states have changed} \\ \mbox{5: shear & twist slip states have changed} \\ \mbox{6: bend & twist slip states have changed} \\ \mbox{7: all slip states have changed} \end{cases}\) 

3 
INT 
{0,1} 
shear slip state 

4 
INT 
{0,1} 
twist slip state 

5 
INT 
{0,1} 
bend slip state 

bond_break 
Bond has broken 

1 
C_PNT 
N/A 
Contact pointer 

2 
INT 
{1,2} 
Failure mode 

\(\;\;\;\;\;\;\begin{cases} \mbox{1: failed in tension} \\ \mbox{2: failed in shear} \end{cases}\) 

3 
FLT 
\([0.0,+\infty)\) 
Failure strength [force] (\(\overline{\sigma }_{c}\) or \(\overline{\tau }_{c}\), according to the failure mode) 

4 
FLT 
\([0.0,+\infty)\) 
Bond strain energy \(\overline{E}_k\) at onset of failure 
Usage and Verification Examples
The example “Genesis and Testing of a SoftBonded Material” demonstrates usage of the softbond contact model.
Model Summary
An alphabetical list of the softbond contact model methods is given here. An alphabetical list of the softbond contact model properties is given here.
References
Was this helpful? ...  Itasca Software © 2024, Itasca  Updated: Apr 02, 2024 