VFRIC_COEF

User subroutine to define the frictional coefficient for contact surfaces.

User subroutine VFRIC_COEF:

  • can be used to define the isotropic frictional coefficient between contacting surfaces;

  • corresponds to the classical Coulomb friction model; and

  • can be used only with the general contact algorithm.

This page discusses:

User Subroutine Interface

      subroutine vfric_coef (
C Write only - 
     *   fCoef, fCoefDeriv, 
C Read only - 
     *   nBlock, nProps, nTemp, nFields, 
     *   jFlags, rData, 
     *   surfInt, surfSec, surfMain, 
     *   props, slipData, pressure, 
     *   tempAvg, fieldAvg )
C
      include 'vaba_param.inc'
C
      dimension fCoef(nBlock), 
     *   fCoefDeriv(nBlock,3),
     *   props(nProps),
     *   slipData(nBlock,6),
     *   pressure(nBlock),
     *   tempAvg(nBlock), 
     *   fieldAvg(nBlock,nFields)
C
      parameter( iKStep   = 1,
     *           iKInc    = 2,
     *           nFlags   = 2 )
C
      parameter( iTimStep = 1,
     *           iTimGlb  = 2,
     *           iDTimCur = 3,
     *           nData    = 3 )
c
c    Offset parameters to slip variables in slipData
c
      parameter( i_SD_SlipRateMag  = 1,
     *           i_SD_SlipEq       = 4,
     *           n_SD_Length       = 6)

C
      dimension jFlags(nFlags), rData(nData)
C
      character*80 surfInt, surfSec, surfMain 
C
      user coding to define fCoef
C
      return
      end

Variables to Be Defined

fCoef(nBlock)

This array must be updated to the current values of the friction coefficient for all contacting points.

fCoefDeriv(nBlock,3)

This array is not applicable to Abaqus/Explicit analyses.

Variables Passed in for Information

nBlock

Number of contacting points to be processed in this call to VFRIC_COEF.

nProps

User-specified number of property values associated with this friction model.

nTemp

1 if the temperature is defined, and 0 if the temperature is not defined.

nFields

Number of user-specified field variables.

jFlag(1)

Step number.

jFlag(2)

Increment number.

rData(1)

Value of step time.

rData(2)

Value of total time.

rData(3)

Current increment in time from t=tcurr-Δt to t=tcurr.

surfInt

User-specified surface interaction name, left justified.

surfSec

Secondary surface name, not applicable to general contact.

surfMain

Main surface name, not applicable to general contact.

props(nProps)

User-specified vector of property values to define the frictional coefficient at contacting points.

slipData(nBlock,6)

Position slipData(kBlock,i_SD_SlipRateMag) contains the slip rate magnitude, and position slipData(kBlock,i_SD_SlipEq) contains the equivalent slip distance accumulated over increments for a contacting point indexed by kBlock for the current time increment. The other positions in slipData are not applicable to Abaqus/Explicit analyses.

pressure(nBlock)

Contains the pressure at the contacting points applied at the end of the current time increment.

tempAvg(nBlock)

Average current temperature between the main and secondary surfaces at the contacting points.

fieldAvg(nBlock,nFields)

Average current value of all the user-specified field variables between the main and secondary surfaces at the contacting points.