Force: Contact
Command ElementThe Force_Contact command can be used to modify the parameters of a Force_Contact model element.
Format
<Force_Contact
id = "integer"
num_i_graphics = "integer"
i_graphics_id = "integer [,integer,...,integer]"
num_j_graphics = "integer"
j_graphics_id = "integer [,integer,...,integer]"
ignore_penetration_larger_than = "real"
master_surface = { "I" | "J" | "I_and_J" | "AUTO" }
enable_sphere_to_mesh = { "TRUE" | "FALSE" | "AUTO" }
contact_stability_2d = "real"
{
penalty = "real"
restitution_coeff = "real"
normal_trans_vel = "real"
|
stiffness = "real"
damping = "real"
exponent = "real"
dmax = "real"
|
i_elastic_modulus = "real"
j_elastic_modulus = "real"
i_layer_depth = "real"
j_layer_depth = "real"
}
cff_type = " { Coulomb_On | Coulomb_Off | Dynamics_Only } "
mu_static = "real"
mu_dynamic = "real"
stiction_trans_vel = "real"
friction_trans_vel = "real"
/>
Attributes
- id
-
Element identification number (integer>0). This number is unique among all Force_Contact elements and uniquely identifies the element.
Note: id is used only to identify the Force_Contact element to be modified. By itself id cannot be modified. - num_i_graphics
- Modifies the number of Post_Graphic elements on body I or the first body that is to be considered in evaluating the contact force.
- i_graphics_id
- Modifies the list of Post_Graphic element IDs on the first body to be
considered for contact. The number of IDs in this list is specified by
num_i_graphics.Note: All the Post_Graphic entities must belong to the same body.
- num_j_graphics
- Modifies the number of Post_Graphic elements on body J or the second body that is to be considered in evaluating the contact force.
- j_graphics_id
- Modifies the list of Post_Graphic element IDs on the second body to be
considered for contact. The number of IDs in this list is specified by
num_j_graphics.Note: All the Post_Graphic entities must belong to the same body.
- ignore_penetration_larger_than
- Use this attribute to change the maximum penetration depth that MotionSolve will consider for evaluating contact forces. Any value above this threshold will be ignored.
- master_surface
- Use this attribute to change the selection of the master surface for the contact calculations.
- enable_sphere_to_mesh
- Use this attribute to change how MotionSolve treats spherical geometries. Set this to "TRUE" to use the analytical collision engine and "FALSE" to use the tessellated collision engine.
- i_elastic_modulus (VOLUME)
- Modifies the elastic modulus of the geometries belonging to Body I for the volume force model.
- j_elastic_modulus (VOLUME)
- Modifies the elastic modulus of the geometries belonging to Body J for the Volume force model.
- i_layer_depth (VOLUME)
- Modifies the size of the layer depth for the geometries belonging to body I.
- j_layer_depth (VOLUME)
- Specifies the size of the layer depth for the geometries belonging to body J.
- penalty (POISSON)
- Modifies the penalty parameter that is used to calculate the spring force.
- restitution_coeff (POISSON)
- Modifies the coefficient of restitution (COR) between the contacting bodies.
- normal_trans_vel (POISSON)
- Modifies the velocity limit between the two bodies at which full damping is applied in the contact force. If unset or set to 0, MotionSolve initializes it to 1.
- stiffness (IMPACT)
- Modifies the stiffness parameter of the contact.
- exponent (IMPACT)
- Modifies the exponent of the force deformation characteristic of the contact interface.
- damping (IMPACT)
- Modifies the maximum damping coefficient.
- dmax (IMPACT)
- Modifies the penetration at which full damping is applied.
- mu_static
- Modifies the coefficient of friction when the relative slip velocity is equal to stiction_trans_vel.
- mu_dynamic
- Modifies the coefficient of friction when the relative slip velocity is greater than friction_trans_vel.
- stiction_trans_vel
- Modifies the slip velocity at which the static coefficient of friction, mu_static, is applied.
- friction_trans_vel
- Modifies the slip velocity at which the dynamic coefficient of friction, mu_dynamic, is applied.
Example
The following example illustrates how the <Force_Contact> command element may be used to change the parameters of the 3D rigid body contact in a MotionSolve model. In this example, to see the effect of damping in 3D contact, the model is simulated two times - once with damping turned on, and once with damping turned off. The SAVE/LOAD commands are used to combine the two simulations into one.
<Model
…
…
<!- Definition of the contact force element in the model section with damping specified -->
<Force_Contact
id = "303001"
num_i_graphics = "1"
i_graphics_id = "90001"
num_j_graphics = "1"
j_graphics_id = "90002"
cnf_type = "Impact"
stiffness = "2000."
exponent = "1.2"
damping = "0"
dmax = "0.001"
cff_type = "Coulomb_Off"
/>
…
…
</Model>
<Command>
…
…
<!- Save the model -->
<Save
model_file = "model.xml"
/>
<!- Simulate the model with damping turned on for 1 second -->
<Simulate
analysis_type = "Transient"
end_time = "1."
print_interval = "0.01"
/>
<!- Load the saved model -->
<Load_Model
model_file = "model.xml"
result_file = "damping_off.mrf"
anima_file = "damping_off.h3d"
<!- Turn off damping -->
<Force_Contact
id = "303001"
damping = "0"
/>
<!- Simulate the model with damping turned off for 1 second -->
<Simulate
analysis_type = "Transient"
end_time = "1."
print_interval = "0.01"
/>
</Command>
Comments
- Please refer to the help pages on the model element for more details on modeling 3D rigid to rigid contact in your model.