Utility/GeneralModels a contact force or collision phenomena.
Use
This function can be called by any user-defined subroutine.
Format
- Fortran Calling Syntax
- CALL IMPACT(X, XD, X1, K, E, CMAX, D, IORD, VALUE,
ERRFLG)
- C/C++ Calling Syntax
- c_impact(x, xd, x1, k, e, cmax, d, iord, value, errflg)
- Python Calling Syntax
- [value, errflg] = py_impact(x, xd, x1, k, e, cmax, d,
irod)
- MATLAB Calling Syntax
- [value, errflg] = m_impact(x, xd, x1, k, e, cmax, d,
irod)
Attributes
- X
- [double precision]
- The independent variable. For example, to specify time as the independent
variable, specify X as TIME.
- XD
- [double precision]
- The time derivative of the independent variable.
- X1
- [double precision]
- The lower bound of X. If X is less
than X1, the IMPACT function returns a
positive value; otherwise it returns zero.
- K
- [double precision]
- The stiffness of the boundary surface interaction. It must be
non-negative.
- E
- [double precision]
- The exponent of the force deformation characteristic. For a stiffening
spring characteristic, E must be greater than 1.0. For a
softening spring characteristic, E must be less than 1.0.
It must always be positive.
- CMAX
- [double precision]
- The maximum damping coefficient. It must be non-negative.
- D
- [double precision]
- The penetration at which the full damping coefficient is applied. It must be
positive.
- IORD
- [integer]
- The order of the derivative that IMPACT has to return.
Order can be 0, 1 or 2.
Output
- Value
- [integer]
- A value that the subroutine returns.
- Errflg
- [logical]
- A logical (true or false) variable that IMPACT returns to
the calling subroutine. If IMPACT detects an error while
calling the subroutine, it sets the error flag to
true.