28 KiB
“Defining tangential softening in Abaqus/Explicit” below), the relative surface motions will be governed by the specified softening behavior.
Input File Usage: *FRICTION, ROUGH
Abaqus/CAE Usage: Interaction module: contact property editor: Mechanical→Tangential Behavior: Friction formulation: Rough
Shear stress versus elastic slip while sticking
In some cases some incremental slip may occur even though the friction model determines that the current frictional state is “sticking.” In other words, the slope of the shear (frictional) stress versus total slip relationship may be finite while in the “sticking” state, as shown in Figure 37.1.5–6.
line
| total slip | shear stress |
|---|---|
| 0 | 0 |
| κ | τ_crit |
| >κ | ≤τ_crit |
Figure 37.1.5–6 Elastic slip versus shear traction relationship for sticking and slipping friction.
The relationship shown in this figure is analogous to elastic-plastic material behavior without hardening: corresponds to Young’s modulus, and { { \tau } _ { c r i t } } corresponds to yield stress; sticking friction corresponds to the elastic regime, and slipping friction corresponds to the plastic regime. A finite value of the sticking stiffness may reflect a user-specified physical behavior or may be characteristic of the constraint enforcement method.
Frictional constraints are enforced with a stiffness (penalty method) by default in Abaqus/Standard and for the general contact algorithm in Abaqus/Explicit; in this case the sticking stiffness will have a finite value. An infinite sticking stiffness, in which case the elastic slip is always zero, can be achieved with the optional Lagrange multiplier method for imposing frictional constraints in Abaqus/Standard or with the kinematic constraint method (available only for contact pairs) in Abaqus/Explicit. In Abaqus/Explicit some tangential contact damping acts on the elastic slip rate by default, as discussed in “Contact damping,” Section 37.1.3. Tangential softening to reflect a physical behavior is available only in Abaqus/Explicit.
Defining tangential softening in Abaqus/Explicit
To activate softened tangential behavior in Abaqus/Explicit, specify the slope of the shear stress versus elastic slip relationship ( in Figure 37.1.5–6). User subroutine VFRIC cannot be used in conjunction with softened tangential behavior.
Input File Usage: *FRICTION, SHEAR TRACTION SLOPE=
Abaqus/CAE Usage: Interaction module: contact property editor: Mechanical→Tangential Behavior: Friction formulation: Penalty or Static-Kinetic Exponential Decay: Elastic Slip, Specify:
Stiffness method for imposing frictional constraints in Abaqus/Standard
The stiffness method used for friction in Abaqus/Standard is a penalty method that permits some relative motion of the surfaces (an “elastic slip”) when they should be sticking (similar to the allowable elastic slip defined with softened tangential behavior in Abaqus/Explicit). While the surfaces are sticking (i.e., \tau _ { e q } < \tau _ { c r i t } for the basic isotropic Coulomb friction), the magnitude of sliding is limited to this elastic slip. Abaqus continually adjusts the magnitude of the penalty constraint to enforce this condition.
The stiffness method in Abaqus/Standard requires the selection of an allowable elastic slip, . Using a large \gamma _ { c r i t } in the simulation makes convergence of the solution more rapid at the expense of solution accuracy (there is greater relative motion of the surfaces when they should be sticking). Behavior in which no slip is permitted in the sticking state is approximated more accurately by allowing only a small \gamma _ { c r i t . } \mathrm { ~ I f ~ } \gamma _ { c r i t } is chosen very small, convergence problems may occur; in that case, it may be better to use the Lagrange multiplier method to apply the sticking constraint (see “Lagrange multiplier method for imposing frictional constraints in Abaqus/Standard” later in this section).
The default value of allowable elastic slip used by Abaqus/Standard generally works very well, providing a conservative balance between efficiency and accuracy. Abaqus/Standard calculates \gamma _ { c r i t } as a small fraction of the “characteristic contact surface length,” \bar { l } _ { c h a r } , and scans all of the facets of all the slave surfaces when calculating \bar { l } _ { c h a r } . Abaqus/Standard reports the value of \bar { l } _ { c h a r } used for each contact pair in the data (.dat) file if you request detailed printout of contact constraint information (see “Controlling the amount of analysis input file processor information written to the data file” in “Output,” Section 4.1.1). The allowable elastic slip is given as \gamma _ { c r i t } = F _ { f } \bar { l } _ { c h a r } , where F _ { f } is the slip tolerance; the default value of F _ { f } is 0.005.
This method of calculating the allowable elastic slip is used for all analysis procedures in Abaqus/Standard except steady-state transport analysis (“Steady-state transport analysis,” Section 6.4.1), in which the penalty constraint is based on a maximum allowable slip rate, \dot { \gamma } _ { c r i t } . The maximum slip rate is calculated as
\dot {\gamma} _ {c r i t} = F _ {f} 2 \omega R,
where is the angular spinning rate and R is the radius of the rolling structure.
If the stiffness method is used for an anisotropic friction model, \gamma _ { c r i t } is a nominal allowable elastic slip (or slip rate). \operatorname { I f } \gamma _ { 1 } ^ { e } and \gamma _ { 2 } ^ { e } represent components of elastic slip in the t _ { 1 } and t _ { 2 } tangent directions, respectively, the transition from stick to slip will occur when \gamma _ { e f f } = \gamma _ { c r i t } , where \gamma _ { e f f } is computed as
\gamma_ {e f f} = \sqrt {\frac {2 [ (\mu_ {1} \gamma_ {1} ^ {e}) ^ {2} + (\mu_ {2} \gamma_ {2} ^ {e}) ^ {2} ]}{\mu_ {1} ^ {2} + \mu_ {2} ^ {2}}}.
For example, if \gamma _ { 2 } ^ { e } = 0 , the stick/slip transition will occur at \begin{array} { r } { \gamma _ { 1 } ^ { e } = \sqrt { \frac { 1 } { 2 } \big ( 1 + \frac { \mu _ { 2 } ^ { 2 } } { \mu _ { 1 } ^ { 2 } } \big ) } \gamma _ { c r i t } } \end{array} . Depending on values of \dot { \mu } _ { 1 } and \mu _ { 2 } , this \gamma _ { 1 } ^ { e } can be greater or smaller than \gamma _ { c r i t } . As another example, if the “1” and ^ { \mathfrak { c } \mathfrak { c } } 2 ^ { \mathfrak { s } \mathfrak { s } } components of elastic slip are equal, the stick/slip transition will occur at \begin{array} { r } { \gamma _ { 1 } = \gamma _ { 2 } = \frac { \gamma _ { c r i t } } { \sqrt { 2 } } } \end{array} , such that the magnitude of the elastic slip, \gamma _ { m a g } = \sqrt { \gamma _ { 1 } ^ { 2 } + \gamma _ { 2 } ^ { 2 } } = \gamma _ { c r i t } .
Cases in which the default elastic slip value may not be suitable
In certain situations the default value for the allowable elastic slip may not be suitable. For example, slave surfaces defined by node-based surfaces or some contact element types, such as GAPUNI elements, have no physical dimensions and Abaqus/Standard cannot estimate a value of \bar { l } _ { c h a r } . For models containing only node-based surfaces or these types of contact elements, Abaqus/Standard first tries to use the “characteristic contact surface length” of the other contact pairs in the model. If there are none, it calculates \overline { { l } } _ { c h a r } using all of the elements in the model and issues a warning message. If a model contains no elements for which a characteristic length can be determined (for example, if it contains only substructures), Abaqus/Standard has no information with which to calculate \bar { l } _ { c h a r } . As a result, it uses a value of 1.0 and issues a warning message. If the contact surface face dimensions vary greatly, the average value of \bar { l } _ { c h a r } may be unreasonable for some contact surfaces. The elastic slip should then be specified directly for the surfaces with a much smaller “characteristic face dimension.”
There are two methods for modifying the allowable elastic slip. One method is to specify \gamma _ { c r i t } directly; the other is to specify the slip tolerance, F _ { f } . Some analyses call for nondefault \gamma _ { c r i t } or F _ { f } only in specific steps (see “Changing friction properties during an Abaqus/Standard analysis, above).
Specifying the allowable elastic slip directly
You can provide the absolute magnitude of \gamma _ { c r i t } directly. Specify a reasonable value for the relative displacement that may occur before surfaces actually begin to slip. Typically, the allowable elastic slip is set to a small fraction ( 1 0 ^ { - 2 } { - } 1 0 ^ { - 4 } ) of a “characteristic contact surface face dimension.” In a steady-state transport analysis you can define the maximum allowable viscous slip rate, \dot { \gamma } _ { c r i t } .
The specified allowable elastic slip will be used only for the contact pairs referencing the contact property definition that contains the friction definition. For example, three surfaces ASURF, BSURF, and CSURF form two contact pairs that each refer to their own contact property definition, as shown below.
| Contact Pair | Contact Property | $\gamma_{crit}$ |
| ASURF, BSURF | DEFAULT | $F_{f}\bar{l}_{char}$ |
| CSURF, BSURF | NONDEF | 0.1 |
In the DEFAULT contact property definition no value for \gamma _ { c r i t } is specified, so the allowable elastic slip used for the friction interaction between ASURF and BSURF would be the default value F _ { f } \bar { l } _ { c h a r } . In the
NONDEF contact property definition a value of 0.1 is specified for \gamma _ { c r i t } , which will be the allowable elastic slip used for the friction interaction between CSURF and BSURF.
Input File Usage: *FRICTION, ELASTIC \mathrm { S L I P } { = } \gamma _ { c r i t }
Abaqus/CAE Usage: Interaction module: contact property editor: Mechanical→Tangential Behavior: Friction formulation: Penalty or Static-Kinetic Exponential Decay: Elastic Slip, Absolute distance: \gamma _ { c r i t }
Changing the default slip tolerance
You can alter the default value of the slip tolerance, F _ { f } . This method of altering the default elastic slip is convenient if the goal is to increase computational efficiency, in which case a value larger than the default of 0.005 would be given, or if the goal is to increase accuracy, in which case a value smaller than the default would be given.
Input File Usage: *FRICTION, SLIP TOLERANCE=
Abaqus/CAE Usage: Interaction module: contact property editor: Mechanical→Tangential Behavior: Friction formulation: Penalty or Static-Kinetic Exponential Decay: Elastic Slip, Fraction of characteristic surface dimension: F _ { f }
Stiffness method for imposing frictional constraints in Abaqus/Explicit
The stiffness method used for friction with the general contact algorithm in Abaqus/Explicit and, optionally, with the contact pair method in Abaqus/Explicit is a penalty method that permits some relative motion of the surfaces (an “elastic slip”) when they should be sticking (similar to the allowable elastic slip defined with softened tangential behavior in Abaqus/Explicit). While the surfaces are sticking ( \mathrm { i } . \mathrm { e } . , \tau _ { e q } < \tau _ { c r i t } ) , the magnitude of sliding is limited to this elastic slip. Abaqus continually adjusts the magnitude of the penalty constraint to enforce this condition.
In Abaqus/Explicit you can choose to have contact constraints for the contact pair algorithm enforced with the penalty method; the general contact algorithm always uses a penalty method (see “Contact constraint enforcement methods in Abaqus/Explicit,” Section 38.2.3).
The default penalty stiffness for frictional constraints is chosen automatically by Abaqus/Explicit and is the same as would be used for normal hard contact constraints. Softening in the normal direction does not affect the penalty stiffness used to enforce stick conditions. If tangential softening is specified (see “Defining tangential softening in Abaqus/Explicit” above), the penalty stiffness will be equal to the value specified for the slope of the shear stress versus elastic slip relationship. You can specify a scale factor to adjust the penalty stiffness, as discussed in “Contact controls for general contact in Abaqus/Explicit,” Section 36.4.5, and “Contact controls for contact pairs in Abaqus/Explicit,” Section 36.5.5.
Lagrange multiplier method for imposing frictional constraints in Abaqus/Standard
In Abaqus/Standard the sticking constraints at an interface between two surfaces can be enforced exactly by using the Lagrange multiplier implementation. With this method there is no relative motion between two closed surfaces until \tau _ { e q } = \tau _ { c r i t } . However, the Lagrange multipliers increase the computational
cost of the analysis by adding more degrees of freedom to the model and often by increasing the number of iterations required to obtain a converged solution. The Lagrange multiplier formulation may even prevent convergence of the solution, especially if many points are iterating between sticking and slipping conditions. This effect can occur particularly if locally there is a strong interaction between slipping/sticking conditions and contact stresses.
Because of the added cost of using the Lagrange friction formulation, it should be used only in problems where the resolution of the stick/slip behavior is of utmost importance, such as modeling fretting between two bodies. In typical metal forming applications or for contact of rubber components, accurate resolution of the stick/slip behavior is not important enough to justify the added costs of the Lagrange multiplier formulation.
Input File Usage: *FRICTION, LAGRANGE
Abaqus/CAE Usage: Interaction module: contact property editor: Mechanical→Tangential Behavior: Friction formulation: Lagrange Multiplier
Kinematic method for imposing frictional constraints in Abaqus/Explicit
By default, the contact pair algorithm in Abaqus/Explicit uses a kinematic method for imposing frictional constraints (see “Contact constraint enforcement methods in Abaqus/Explicit,” Section 38.2.3). The kinematic method applies sticking constraints in a way similar to the optional Lagrange multiplier method in Abaqus/Standard; however, the algorithm is quite different. The value of the force required to enforce sticking at a node is first calculated using the mass associated with the node; the distance the node has slipped; the time increment; and additionally for softened contact, the current value of the elastic slip and the elastic slip versus shear stress slope. For hard contact this sticking force is that which is required to maintain the node’s position on the opposite surface in the predicted configuration. For softened contact this force is consistent with the user-specified value for the slope of the shear stress versus elastic slip relationship. The sticking force for each node is calculated using the mass associated with the node, the distance the node has slipped, the shear traction-elastic slip slope (if softened contact is specified in the tangential direction), and the time increment. If the shear stress at the node calculated using this force is less than \tau _ { c r i t : } , the node is considered to be sticking and this force is applied to each surface in opposing directions. If the shear stress exceeds \tau _ { c r i t } , the surfaces are slipping and the force corresponding to \tau _ { c r i t } is applied. In either case the forces result in acceleration corrections tangential to the surface at the slave node and either the nodes of the master surface facet or the points on the analytical rigid surface that it contacts.
User-defined friction model
You can define the shear stress between contacting surfaces through a user subroutine when the friction behavior provided by Abaqus is not sufficient. The shear stress can be defined as a function of a number of variables such as slip, slip rate, temperature, and field variables. You can also introduce a number of solution-dependent state variables that you can update and use within the friction user subroutines. You can declare a number of properties or constants associated with your friction model and use these values in the user subroutine.
In addition to the friction user subroutines, subroutines are available for defining the complete mechanical interaction between surfaces, including the interaction in the normal direction as well as the frictional behavior in the tangential direction; see “User-defined interfacial constitutive behavior,” Section 37.1.6, for more information.
Defining generic frictional behavior
You can define a generic frictional behavior between contacting surfaces using user subroutine FRIC in Abaqus/Standard. In Abaqus/Explicit the generic frictional behavior for contact pairs is defined in user subroutine VFRIC, while the generic frictional behavior for general contact is defined in user subroutine VFRICTION.
Input File Usage: Use the following option to define a frictional behavior with user subroutine FRIC or VFRIC:
*FRICTION, USER, DEPVAR=n, PROPERTIES=p
Use the following option to define a frictional behavior with user subroutine VFRICTION:
*FRICTION, USER=FRICTION, DEPVAR=n, PROPERTIES=p
Abaqus/CAE Usage: Use the following options to define a frictional behavior with user subroutine FRIC or VFRIC:
Interaction module: contact property editor: Mechanical→Tangential Behavior: Friction formulation: User-defined, Number of state-dependent variables: n, Friction Properties
User subroutine VFRICTION is not supported in Abaqus/CAE.
Defining complex isotropic friction
Abaqus provides a simple way to specify complex isotropic frictional behavior when the expression for the friction coefficient can be defined explicitly. You need only to specify the friction coefficient, and Abaqus will compute the resulting frictional forces. Abaqus/Standard provides user subroutine FRIC_COEF and Abaqus/Explicit provides user subroutine VFRIC_COEF for this purpose. VFRIC_COEF can be used only with general contact.
Input File Usage: *FRICTION, USER=COEFFICIENT, PROPERTIES=p
Abaqus/CAE Usage: User subroutines FRIC_COEF and VFRIC_COEF are not supported in Abaqus/CAE.
Consideration of incremental rotation of shell and beam thickness offsets in Abaqus/Explicit
By default, in Abaqus/Explicit slip increment calculations for friction do not account for the incremental rotation of shell and beam thickness offsets, and frictional constraints do not apply a moment to nodes offset from the contact interface due to shell or beam thicknesses. This behavior can be modified for general contact; for details see “Consideration of incremental rotation of shell and beam thickness offsets for frictional contact” in “Contact controls for general contact in Abaqus/Explicit,” Section 36.4.5.
Improving Abaqus/Standard simulations that include friction in the surface interactions
Several features of the frictional interaction of surfaces can have a strong influence on the rate of convergence in an Abaqus/Standard simulation.
Unsymmetric terms in the system of equations
Friction constraints produce unsymmetric terms when the surfaces are sliding relative to each other. These terms have a strong effect on the convergence rate if frictional stresses have a substantial influence on the overall displacement field and the magnitude of the frictional stresses is highly solution dependent. Abaqus/Standard will automatically use the unsymmetric solution scheme if \dot { \mu } > 0 . 2 or if \mu is pressuredependent. If desired, you can turn off the unsymmetric solution scheme; see “Matrix storage and solution scheme in Abaqus/Standard” in “Defining an analysis,” Section 6.1.2.
No slip occurs with rough friction; the contribution to the stiffness will be fully symmetric, and Abaqus/Standard will use the symmetric solution scheme by default.
Heat generated by frictional interaction of surfaces
In fully coupled temperature-displacement analysis and fully coupled thermal-electrical-structural analysis, all dissipated mechanical (frictional) energy is converted to heat and distributed equally between the two surfaces by default. This behavior can be modified; for details about this and other thermal surface interactions, see “Thermal contact properties,” Section 37.2.1.
Temperature and field-variable dependence of friction properties for structural elements
Temperature and field-variable distributions in beam and shell elements can generally include gradients through the cross-section of the element. Contact between these elements occurs at the reference surface; therefore, temperature and field-variable gradients in the element are not considered when determining friction properties that depend on these variables.
Surface interaction variables related to friction
Abaqus provides output of the shear stresses at points on the slave surface that use a surface interaction model containing frictional properties. The shear stresses, CSHEAR1 and CSHEAR2, are given in the two orthogonal local tangent directions, which are constructed on the master surface (see “Contact formulations in Abaqus/Standard,” Section 38.1.1). There is only one local tangent direction in two-dimensional problems. Details about how to request contact surface variable output are given in “Defining contact pairs in Abaqus/Standard,” Section 36.3.1, and “Defining contact pairs in Abaqus/Explicit,” Section 36.5.1.
Contour plots of these variables can also be plotted in Abaqus/CAE.
Additional reference
• Oden, J. T., and J. A. C. Martins, “Models and Computational Methods for Dynamic Friction Phenomena,” Computer Methods in Applied Mechanics and Engineering, vol. 52, pp. 527–634, 1985.
37.1.6 USER-DEFINED INTERFACIAL CONSTITUTIVE BEHAVIOR
Products: Abaqus/Standard Abaqus/Explicit
References
• “UINTER,” Section 1.1.42 of the Abaqus User Subroutines Reference Guide
• “VUINTER,” Section 1.2.20 of the Abaqus User Subroutines Reference Guide
• “VUINTERACTION,” Section 1.2.21 of the Abaqus User Subroutines Reference Guide
• *SURFACE INTERACTION
Overview
User-defined interfacial constitutive behavior:
• is provided so that any constitutive behavior across an interface can be added to the library of existing models such as softened contact and Coulomb friction;
• requires that a constitutive model (or a library of models) for the interface be programmed in user subroutine UINTER in Abaqus/Standard;
• requires that a constitutive model (or a library of models) for the interface be programmed in user subroutine VUINTER in Abaqus/Explicit when using the contact pair algorithm;
• requires that a constitutive model (or a library of models) for the interface be programmed in user subroutine VUINTERACTION in Abaqus/Explicit when using the general contact algorithm;
• is available only for surface-based contact definition involved in stress/displacement, coupled temperature-displacement, coupled thermal-electrical-structural, or heat transfer analysis; and
• requires considerable effort and expertise: the feature is very general and powerful, but it is intended for advanced users.
Purpose of user subroutines UINTER, VUINTER, and VUINTERACTION
User subroutines UINTER, VUINTER, and VUINTERACTION provide a very general interface for you to define the constitutive behavior across the interface between two surfaces. These subroutines replace all built-in interfacial constitutive behavior models; hence, no other contact property definitions (e.g., friction, thermal conductance, etc.) can be specified in conjunction with them.
In a stress/displacement analysis you must define the stresses, both normal and tangential, at the slave node (or points on the slave surface) at the current point in time. In a coupled temperature-displacement analysis and a coupled thermal-electrical-structural analysis you must also define the heat flux across the interface. The constitutive calculation thus involves computing the stresses and heat fluxes based on the increments in relative position of the slave node with respect to the master surface (which act as strains in this context), temperature at the surface, and predefined field variables. The calculations would typically involve solution-dependent state variables, which can be
updated inside these routines. If contact damping is to be included in the interfacial constitutive model, you must include the damping contribution in the stress definition.
When a user subroutine is used to define the interfacial constitutive behavior, all decisions regarding the contact status of a slave node must be made inside the subroutine based on the information provided. You can make such decisions based on the values of the relative position of the point on the slave surface with respect to the master surface and appropriately defined solution-dependent state variables. Thus, usage of this feature involves not only developing a constitutive behavior of the interface but also developing conditions under which contact is active at a given point on the slave surface. The interface is always assumed to be massless.
User subroutine UINTER will be called for each contact constraint location of affected contact pairs in each iteration of an Abaqus/Standard analysis. The input to this user subroutine includes the current relative position of a particular constraint point on the slave surface with respect to the corresponding closest point on the master surface, as well as the incremental relative motion between these two points. Values of temperature and field variables at the constraint point on the slave surface and the corresponding closest point on the master surface and several other variables are also provided as input. In addition to defining the contact stress or heat flux, appropriate Jacobian terms must also be defined to ensure proper convergence characteristics in Abaqus/Standard.
User subroutine VUINTER will be called multiple times for the affected contact pairs in each time increment of an Abaqus/Explicit analysis. All slave nodes are processed in each call to VUINTER, whereas only a single constraint is processed in each call to UINTER. Similar input is provided to VUINTER as UINTER.
User subroutine VUINTERACTION will be called multiple times for each interacting surface in each time increment of an Abaqus/Explicit analysis. Points of potential contact for a given interaction are processed in blocks in calls to VUINTERACTION. Similar input is provided to VUINTERACTION as VUINTER.
Interfacial constants
You must specify the number of interfacial constants that are needed in user subroutine UINTER, VUINTER, or VUINTERACTION; and you must provide values for all these constants. All surface constitutive behavior calculations and all decisions regarding the contact status at a slave node (or a point on the slave surface in question) must be programmed in the user subroutine. Any other contact property definitions included in the analysis are reported as an error.
Input File Usage: For contact interactions defined through user subroutine UINTER or VUINTER:
*SURFACE INTERACTION, USER,
PROPERTIES=number_of_material_constants
For contact interactions defined through user subroutine VUINTERACTION:
*SURFACE INTERACTION, USER=INTERACTION, PROPERTIES=number_of_material_constants
