fix multicontact/halfspace command
Warning
GPU support for this command has not been tested and may not work as expected.Syntax
fix ID group multicontact/halfspace geometric_prefactor gp_value
ID, group are documented in fix command
multicontact/halfspace = style name of this fix command
zero or more keyword/value pairs may be appended
keyword = geometric_prefactor or contact_property_cutOff or max_penetration_ratio
geometric_prefactor value = gamma gamma = an empirical factor accounting for the geometry contact_property_cutOff value = d d = distance from the contact surface ij at which the multi contacts are considered (distance unit) max_penetration_ratio value = mpr mpr = maximum ratio of overlap to radius up to which the corrected overlap is calculated
Examples
fix mc all multicontact/halfspace
fix mc all multicontact/halfspace geometric_prefactor 1.8
fix mc all multicontact/halfspace geometric_prefactor 0.96 contact_property_cutOff 0.025 max_penetration_ratio 0.1
Description
Implements the multicontact model by (Brodu et al.) . This model computes a per-contact deformation for each particle based on the other contacts this particles has. A particle i with contact ij has the following new radius (when computing the contact laws with particle j):

where
is the default radius of particle i,
is the
sum over all particles in contact with i (k != j),
is the
Heaviside step function and
is the max_penetration_ratio
value. While the standard model does not have any constraint, the model has
been modified to avoid unphysical enlargement of particles. If the overlap
exceeds the maximum overlap/radius ratio up to which the multicontact
assumption is valid. This assumes that the particle deformation is isotropic
enough that the sphere inertia is reasonable. The delta value is given by
![\delta_{ij->ik} = & - \gamma (1 + \nu) \frac{F_{ik}}{2 \pi Y d_{ik->ij}} \left[(n_{ik} . u_{ik->ij})(n_{ij} . u_{ik->ij}) + \right. \\ & \left. (3 - 4 \nu) n_{ik} . n_{ij} - \frac{(1 - 2 \nu) (n_{ik} + u_{ik->ij}) . n_{ij})}{(1 + n_{ik} u_{ik->ij})} \right]](_images/math/602dec1c63936662ee9cfa3f3f5f8f1e9d5afd5c.png)
where
= geometric prefactor
= Poisson ratio
= absolute value of normal force acting at contact ik
= Youngs modulus
= distance from contact ik to contact ij
= unit vector pointing from contact ik to contact ij
= normal vector of contact ik
= normal vector of contact ij
The reason for applying the constraint is that, for displacements above the defined maximum, the deformation at each contact is as large that the for the certain local strain, the formulation can go back to the base contact law. Otherwise, the accumulated displacement fields would lead to a numerical failure of the model, i.e., an over-prediction of the overlaps. It has to be noted that the user-defined max_penetration_ratio can range between 0 and 1; 0 corresponding to the base contact law (e.g., Hertz) and 1 denoting the standard multicontact model.
Restart, fix_modify, output, run start/stop
No information about this fix is written to binary restart files.
fix_modify cannot be used on the parameter of this fix.
Restrictions
Requires the use of the gran surface model multicontact