IMPACT
The IMPACT function models impact forces acting on bodies during collision. The elastic properties of the boundary surface between the two bodies can be tuned as desired.
Format
Impact(x,˙x,x1,k,e,cmax,d)
Arguments
- x
- The independent variable. For example, to use the z-displacement of I marker with respect to J marker as resolved in the reference frame of RM marker as the independent variable, specify x as DZ({marker_i.idstring}, {marker_j.idstring}, {marker_rm.idstring}).
- ˙x
- The time derivative of the independent variable. For example, if x is specified as above, then ˙x will be VZ({marker_i.idstring}, {marker_j. idstring}, {marker_rm.idstring}).
- x1
- The lower bound of x . If x is less than x1 , the impact function returns a positive value, otherwise it returns zero.
- k
- The stiffness of the boundary surface interaction. It must be non-negative.
- e
- The exponent of the force deformation characteristic. For a stiffening spring characteristic, e must be greater than 1.0 and for a softening spring characteristic, e must be less than 1.0. It must always be positive.
- cmax
- The maximum damping coefficient. It must be non-negative.
- d
- The penetration at which the full damping coefficient is applied. It must be positive.
Definition
Impact ={max(k(x1−x)e−STEP(x,x1−d,cmax,x1,0)∗˙x,0),if x<x10,if x≥x1}
Example
<Reference_Variable
id = "30300700"
type = "EXPRESSION"
expr = "IMPACT(DZ(10301030,30302030),
VZ(10301030,30302030),2.5,2500,1,1000,2.5)"
/>
OR
<Force_Vector_TwoBody
id = "10501"
type = "ForceOnly"
i_marker_id = "10515721"
j_floating_marker_id = "10516722"
ref_marker_id = "10516720"
fx_expression = "0"
fy_expression = "0"
fz_expression = "IMPACT(DZ(10515720,10516720,10515720),
VZ(10515720,10516720,10515720),1,10000.0,1.0,0.5,0.1)"
/>