*SetJointFriction() - asymmetric joint pair
Sets the friction properties for an asymmetric joint pair.
Syntax
*SetJointFriction(varname, , use_friction_l, mu_static_l, mu_dynamic_l, 
                                     use_static_l, transition_vel_l, max_deformation_l, 
                                     effect_l, preload_input_l, reaction_force_input_l, 
                                     bending_moment_input_l, torsional_moment_input_l,
                                     f_preload_l, reaction_arm_l, initial_overlap_l,
                                     overlap_delta_l, rot_constraint_l, t_preload_l, 
                                     pin_radius_l, friction_arm_l, bending_reaction_arm_l,
                                     ball_radius_l 
                                     , use_friction_r, mu_static_r, mu_dynamic_r, 
                                     use_static_r, transition_vel_r, max_deformation_r, 
                                     effect_r, preload_input_r, reaction_force_input_r,
                                     bending_moment_input_r, torsional_moment_input_r,
                                     f_preload_r, reaction_arm_r, initial_overlap_r,
                                     overlap_delta_r, rot_constraint_r, t_preload_r, 
                                     pin_radius_r, friction_arm_r, bending_reaction_arm_r,
                                     ball_radius_r)
    Arguments
- varname
 - The variable name of the joint.
 - use_friction_l
 - Specifies the joint friction state. Valid values are: TRUE|FALSE.
 - mu_static_l
 - The coefficient of friction when the slip velocity is less than transition_vel.
 - mu_dynamic_l
 - The coefficient of friction when the slip velocity is greater than transition_vel.
 - use_static_l
 - Specifies if the frictional forces are to be calculated during Static/Quasi-Static solution. Valid values are: ACTIVE_STATIC|INACTIVE_STATIC. See Comments below.
 - transition_vel_l
 - Specifies the velocity threshold for the transition from dynamic friction to static friction.
 - max_deformation_l
 - Specifies the maximum creep that can occur in a joint during the stiction regime.
 - effect_l
 - Specifies the frictional effect included in the friction model. Valid values are: STICTION_AND_SLIDING| STICTION_ONLY| SLIDING_ONLY. See Comments below.
 - preload_input_l
 - Specifies if force preload is an input to the friction model. Valid values are: PRELOAD|NO_PRELOAD.
 - reaction_force_input_l
 - Specifies if joint reaction force is an input to the friction model. Valid values are: REACTION_FORCE|NO_REACTION_FORCE.
 - bending_moment_input_l
 - Specifies if bending moment is an input to the friction model. Valid values are: BENDING_MOMENT|NO_BENDING_MOMENT. See Comments below.
 - torsional_moment_input_l
 - Specifies if torsional moment is an input to the friction model. Valid values are: TORSIONAL_MOMENT|NO_TORSIONAL_MOMENT. See Comments below.
 - f_preload_l
 - Specifies the joint's preload friction force. See Comments below.
 - reaction_arm_l
 - Specifies the moment arm of the reaction torque. See Comments below.
 - initial_overlap_l
 - Specifies the initial overlap of the sliding bodies. See Comments below.
 - overlap_delta_l
 - Specifies the change in overlap in the sliding bodies connected by the joint. Valid values are: CONSTANT|INCREASE|DECREASE. See Comments below.
 - rot_constraint_l
 - Specifies the rotational constraint in the universal joint on which the friction acts. Valid values are: I_YOKE|J_YOKE. See Comments below.
 - t_preload_l
 - Specifies the joint's preload friction torque. See Comments below.
 - pin_radius_l
 - Specifies the radius of the pin. See Comments below.
 - friction_arm_l
 - Specifies the moment arm used to compute axial friction torque. See Comments below.
 - bending_reaction_arm_l
 - Specifies the moment arm used to compute the contribution of bending moment on friction torque. See Comments below.
 - ball_radius_l
 - Specifies the radius of the ball joint. See Comments below.
 
The parameters for the right side joint are appended with "_r" in the *SetJointFriction() statement above. These parameters hold the same meaning as their left side counterparts, but are applicable to the right side joint.
Example
Example 1
*BeginMDL( the_model, "Model" )
  *StandardInclude(FILE)
  *PointPair( p_0, "Pivot" )
  *BodyPair( b_pendu, "InputShaft", p_1, , , , b_pendu.cm )
  *UJointPair( j_0, "Pivot", b_pendu, b_0, p_0, SHAFT, POINT, p_5, SHAFT, POINT, p_6 )
  *PointPair( p_2, "Ground Shaft" )
  *PointPair( p_3, "Body shaft" )
  *PointPair( p_1, "Point 1" )
  *BodyPair( b_0, "OutputShaft", p_4, , , ,  )
  *PointPair( p_4, "Point 4" )
  *InlineJointPair( j_1, "OutputShaftInlJt", b_0, B_Ground, p_5, ORIGIN, POINT, p_0 )
  *PointPair( p_5, "Point 5" )
  *PointPair( p_6, "Point 6" )
  *RevJointPair( j_2, "InputShaftRevJt", b_pendu, B_Ground, p_6, POINT, p_0 )
  *Set( b_pendu.usecm, true )
  *Set( b_0.usecm, true )
  *SetOrientation( b_pendu.cm, LEFT, TWOAXES, ZX, POINT, p_0, DXDYDZ, 1.0, 0.0, 0.0 )
  *SetBodyInertia( b_pendu, LEFT, 1.0, 100000, 100000, 100000, 0.0, 0.0, 0.0 )
  *SetBodyInertia( b_0, LEFT, 1, 100000, 100000, 100000 )
  *SetPoint( p_0, LEFT, , -100 )
  *SetPoint( p_2, LEFT, 10, -100, 0.0 )
  *SetPoint( p_3, LEFT, -10, -100, -4 )
  *SetPoint( p_1, LEFT, -25, -100, -10 )
  *SetPoint( p_4, LEFT, 25, -100 )
  *SetPoint( p_5, LEFT, 50, -100, 0 )
  *SetPoint( p_6, LEFT, -50, -100, -20 )
  *SetJointFriction( j_0, , true, 0.35, 0.26, ACTIVE_STATIC, 0.11, 0.012, STICTION_AND_SLIDING, PRELOAD, REACTION_FORCE, BENDING_MOMENT, , , , , , 
J_YOKE, 1000, 10, 10, 100, 
                         , true, 0.36, 0.27, ACTIVE_STATIC, 0.1,  0.012, STICTION_AND_SLIDING, PRELOAD, REACTION_FORCE, BENDING_MOMENT, , , , , , 
I_YOKE, 1000, 10, 10, 100, )
*EndMDL()Example 2
*BeginMDL( the_model, "Model" )
  *StandardInclude(FILE)
  *PointPair( p_0, "Pivot" )
  *PointPair( p_1, "Point 1" )
  *BodyPair( b_pendu, "Pendulum", p_1, , , ,  )
  *RevJointPair( j_0, "Pivot", b_pendu, B_Ground, p_0, VECTOR, V_Global_Y )
  *SetBodyInertia( b_pendu, LEFT, 1.0, 100.0, 100.0, 100.0, 0.0, 0.0, 0.0 )
  *Set( b_pendu.usecm, true )
  *SetPoint( p_1,  LEFT, -100, -100.0, -75 )
  *SetPoint( p_0, LEFT, , -100 )
  *SetJointFriction( j_0, , true, 0.36, 0.28, INACTIVE_STATIC, 0.15, 0.01, 
SLIDING_ONLY, NO_PRELOAD, REACTION_FORCE, BENDING_MOMENT, , , , , , , 1000, 
10, 24, 60, 
                          , true, 0.36, 0.28, INACTIVE_STATIC, 0.15, 0.01, 
SLIDING_ONLY, NO_PRELOAD, REACTION_FORCE, BENDING_MOMENT, , , , , , , 2000, 
12, 25, 65, )
*EndMDL()Context
Comments
This statement is used to set the friction properties of a joint in "Non-Compliant" mode. Five types of joints can be assigned frictional properties: Ball joint, Cylindrical joint, Revolute joint, Translational joint, and Universal joint.
- use_static
 - 
              
- ACTIVE_STATIC
 - Frictional forces will also be calculated during a Static/Quasi-Static solution.
 - INACTIVE_STATIC
 - Frictional forces will be calculated only during a Dynamic solution.
 
 - effect
 - Specifies the frictional effects included in the friction model.
- STICTION_AND_SLIDING
 - Both static and dynamic friction effects are included.
 - STICTION_ONLY
 - Only static friction effect is included.
 - SLIDING_ONLY
 - Only dynamic friction effect is included.
 
 - bending_moment_input
 - This field is applicable to revolute, translational, cylindrical, and universal joints.
 - torsional_moment_input
 - This field is applicable to translational joint only.
 - f_preload
 - Applicable for translational and cylindrical joints only.
 - reaction_arm
 - Applicable for translational joint only.
 - initial_overlap
 - Applicable for translational and cylindrical joints only.
 - overlap_delta
 - Applicable for translational and cylindrical joints only.
 - rot_constraint
 - Applicable for universal joint only.
 - t_preload
 - Applicable for revolute, cylindrical, universal and ball joints only.
 - pin_radius
 - Applicable for revolute, cylindrical, and universal joints only.
 - friction_arm
 - Applicable for revolute and universal joints only.
 - bending_reaction_arm
 - Applicable for revolute and universal joints only.
 - ball_radius
 - Applicable for ball joint only.