User-Defined Contact Force Model Reference
The User-Defined Contact Force model is an advanced model that allows you to use a contact force you have defined in a field function.
Define a vector field function that returns a vector for the contact force between two particles or particle and a wall. For example, you can define a linear spring model with added cohesion or dissipation. These additions can be made velocity-dependent, or given other conditions.
Provided By | ||
Example Node Path | ||
Requires |
|
|
Properties | See below |
Properties
- Dimensions
- Read only. The dimensions for the field function that is selected for the model, usually Force.
- Function
- The field function that is
selected for the model. To define a customized field function, write a
user field function. You can reference primitive field
functions in your own field function, including any of the following:
- Contact Centroid
- Contact Contact Mass 0 | 1
- Contact Contact Radius 0 | 1
- Contact Normal
- Contact Normal Overlap
- Contact Overlap
- Contact Physics Radius 0 | 1
- Contact Poisson Ratio 0 | 1
- Contact Relative Velocity
- Contact Surface Velocity 0 | 1
- Contact Tangential Overlap
- Contact Youngs Modulus 0 | 1
See the Discrete Element Method Field Function Reference and Creating a User Field Function.
When this model is activated, the Contact Torque field function uses the force computed by the model crossed with the torque arm of parcel centroid to point of contact.
Note Do not use Contact Damping Force or Contact Elastic Force in customized field functions or for post analysis.
Example Field Functions
- Example 1
- $$ContactNormalOverlap * -100000
The contact force is set equal to -100000 times the overlap vector. The minus sign is necessary to set the correct force direction.
- Example 2
-
- $${FCnormal}-$${FCtang}
The contact force is the vector difference between FCnormal and FCtang, which are defined in terms of Contact Normal Overlap and Contact Tangential Overlap:
- FCnormal = -1.72E7*$${ContactNormalOverlap}
- FCtang = (mag(1.48E7*$${ContactTangentialOverlap}) < mag(1.72*$${ContactNormalOverlap})*0.092) ? 1.48*$${ContactTangentialOverlap}:mag(1.72E7*$${ContactNormalOverlap})*0.092*unit($${ContactTangentialOverlap})