# Particle-based solid for nonsmooth multidomain dynamics

- 333 Downloads

## Abstract

A method for simulation of elastoplastic solids in multibody systems with nonsmooth and multidomain dynamics is developed. The solid is discretised into pseudo-particles using the meshfree moving least squares method for computing the strain tensor. The particle’s strain and stress tensor variables are mapped to a compliant deformation constraint. The discretised solid model thus fit a unified framework for nonsmooth multidomain dynamics simulations including rigid multibodies with complex kinematic constraints such as articulation joints, unilateral contacts with dry friction, drivelines, and hydraulics. The nonsmooth formulation allows for impact impulses to propagate instantly between the rigid multibody and the solid. Plasticity is introduced through an associative perfectly plastic modified Drucker–Prager model. The elastic and plastic dynamics are verified for simple test systems, and the capability of simulating tracked terrain vehicles driving on a deformable terrain is demonstrated.

## Keywords

Multidomain Nonsmooth dynamics Meshfree Elastoplastic Deformable terrain Multibody dynamics## 1 Introduction

We address the modelling and simulation of multidomain systems with nonsmooth dynamics and deformable solids of particulate nature. This includes mechatronic multibody systems with nonsmooth dynamics, such as vehicles, robots, and processing machinery that handle or operate on soil or bulk materials. Fast multidomain simulation is useful for concept design exploration, development of control strategies, and for interactive real-time simulators, e.g. for operator training, human–machine interaction studies, and hardware-in-the-loop testing.

### 1.1 Nonsmooth multidomain dynamics

Multidomain system simulation requires integration of multiple heterogeneous subsystems into a single full-system model. Mechatronic systems are typically composed by rigid and flexible multibodies coupled by kinematic constraints for modelling of joints and sets of differential algebraic equation (dae) models for electronics, hydraulics, and powertrain dynamics [1]. If the subsystems are not strongly coupled, the full-system simulation can be realised by means of co-simulation [2]. At coarse timescales, however, the dynamics need to be treated as nonsmooth [3, 4, 5]. This means that velocities are allowed to be arbitrarily discontinuous and impulses—from impacts, joint limits, and frictional stick–slip transitions—can propagate instantly throughout the system. This enables implicit time integration using large timesteps. To ensure numerical stability and computational efficiency, the full system must be approached with a consistent mathematical framework and adequate numerical solvers. Current techniques for co-simulation do not support this for strongly coupled systems with nonsmooth dynamics.

### 1.2 Particulate-based solids

The versatile and widely used discrete element method (DEM) [6] for simulating particulate solids have been extended to the framework of nonsmooth dynamics [4, 5, 7, 8]. When the lengthscale of deformations is much larger than the particle size, it is more computationally favourable to model the solid as a continuum with elastoplastic constitutive law [9]. There are several arguments for using a meshfree discretisation [10, 11] over traditional mesh-based methods such as the finite element method (FEM). Meshfree methods allow large deformations and topological changes without need for remeshing [12]. This makes them well suited for fracturing materials and transitions from solid into viscous and free-surface flow, or from continuum to particulate level of detail when using multi-scale methods [13, 14] or model reduction techniques [15].

### 1.3 Our contribution

The solid is modelled as a particle system with strain tensor constraints introduced as the stiff limit of energy and dissipation potentials for elastic deformations, with constraint regularisation and stabilisation based on a discrete variational approach [16, 17]. An associative perfectly plastic Drucker–Prager model is employed using an elastic predictor–plastic corrector strategy to detect yielding and compute the plastic flow. In its basic form, this model does not yield in hydrostatic compression in contrast to many real materials. Many soils yield under hydrostatic compression by failure in the microscopic structures whereby air and fluid are released. Therefore, the Drucker–Prager model is extended to a capped version [18] that model also plastic compaction. A meshfree method [10, 11] is chosen in order to handle large deformations and, for future development, support fracturing and transitions to viscous flow or to granular media represented by contacting discrete elements. The displacement gradient and strain tensor is approximated by the method of moving least squares (mls) [19]. A stabilisation constraint is introduced to suppress spurious short wavelength modes associated with the mls approximation [20].

The dynamics of other subsystems and their potentially strong coupling is treated within the same multibody dynamics framework using a variational time integrator [16, 17]. Each timestep involves solving a block-sparse mixed linear complementarity problem (mlcp) that also support modelling of frictional contacts and secondary constraints for joints and motors. The present paper is motivated by the exploration of ground vehicles on deformable terrain [21]. Current solutions enable simulation of complex vehicle models with real-time performance but not with dynamic terrain models firmly based on solid mechanics in three dimensions. Usually, empirical terrain models of Bekker–Wong type are used [22, 23]. On the other hand, there exist many solutions for more accurate offline simulations with fine spatial and temporal resolution for elastoplastic solids coupled with tire models [24, 25]. But few support inclusion of multibody systems and not in real time or faster.

### 1.4 Notations

Matrices and vectors are represented in bold face in capital and lower case, \(\varvec{A}\) and \(\varvec{x}\), respectively. Latin superscripts indicate the index of a specific body \(i,j, k = 1, \ldots , N\), where *N* is the total number of bodies in the system. Greek subscripts indicate a specific scalar component of a vector or matrix. The Einstein summation convention is used where repeated indices imply summation over them, e.g. representing matrix–vector multiplication as \(\varvec{A}\varvec{x} = A_{\alpha \beta } x_\beta \). Subscripts *x*, *y* or *z* indicate a specific component of a vector or matrix assuming a Cartesian coordinate system. As an example of these notations, the position vector of a body *i* is denoted \(\varvec{q}^{i}\). The relative position of particle *j* to *i* is \(\varvec{q}^{ij} = \varvec{q}^{j} - \varvec{q}^{i}\). The *y* component of this vector is \(q^{ij}_{y} = q^j_y - q^i_y\). For rigid bodies, the position vector includes also the rotation variables of the body. The system position vector is \(\varvec{q} = \left[ \varvec{q}^1, \varvec{q}^2,\ldots , \varvec{q}^i,\ldots , \varvec{q}^N\right] \). The gradient is denoted \(\nabla _{\varvec{x}} = \frac{\partial }{\partial \varvec{x}}\) and \(\nabla _{\alpha } = \frac{\partial }{\partial x_{\alpha }}\). The dot notation is used for the time derivative \(\dot{} \equiv \tfrac{\text {d}}{\text {d}t}\). The Cauchy stress tensor is represented by \(\varvec{\sigma }_{\textsc {C}}\) and the second Piola Kirchoff stress tensor by \(\varvec{\sigma }\).

## 2 Discrete multidomain dynamics

This section provides a summary of discrete dynamics and of the numerical integration method that is used.

### 2.1 Lagrangian formulation

### 2.2 Time discretisation

The combined effect of the regularisation and stabilisation terms is to bring elastic and viscous properties to motion orthogonal to the constraint surface \(\varvec{g}(\varvec{q}) = 0\), e.g. for modelling elasticity in mechanical joints. The parameters \(\varepsilon \) and \(\gamma \) need not be chosen arbitrarily, as for the conventional approaches to constraint regularisation and stabilisation, but can be based on physics models using parameters that can be derived from first principles, found in the literature or be identified by experiments. This becomes straightforward when the regularisation is introduced by potential energy as quadratic functions in \(\varvec{g}\), i.e. \(U_{\varepsilon }(\varvec{q}) = \tfrac{1}{2}\varvec{g}^{\mathrm{T}}\varvec{\varepsilon }^{-1}\varvec{g}\). This has been exploited in previous work to constraint-based modelling of lumped element beams [29], wires [30], meshfree fluids [31], and granular material [8].

### 2.3 Nonsmooth dynamics

*nonsmooth*[3], meaning that the velocity may change discontinuously in accordance with some impact law, expressed in terms of inequality constraints or complementarity conditions, in addition to the equations of motion. This is an efficient way of modelling dynamical contacts, dry friction, joint limits, electric and hydraulic circuit switching and actuator dynamics in discrete time with large step size. The alternative is to use fine enough temporal resolution where the dynamics appear smooth and may be modelled by daes or ordinary differential equations alone. In general, this is an intractable approach for full-system simulations and interactive applications. The nonsmooth dynamics can be formally treated as differential variational inequalities [32]. The discrete equations of motion (9) can be linearised into a mixed linear complementarity problem (mlcp), when nonsmooth dynamics is included

Rigid body contacts are modelled by the Signorini–Coulomb law for unilateral dry frictional contacts [5], denoting the penetration depth by \(\delta \), contact normal and tangent by \(\varvec{n}\) and \(\varvec{t}\). The Signorini–Coulomb law states that if the nonpenetration constraint, \({g}_{\text {n}}\equiv \delta \le 0\), is violated, then the normal contact velocity and constraint force are complementary to ensure separation, \(0 \le {\dot{g}}_{\text {n}} \perp {\lambda }_{\text {n}} \ge 0\), and the tangential friction force that acts to maintain zero slip, \({g}_{\text {t}}\equiv \varvec{t}^{\mathrm{T}} \dot{\varvec{q}} = 0\), is bound by the Coulomb friction cone, \(|{\varvec{\lambda }}_{\text {t}}| \le \mu {\lambda }_{\text {n}}\). The latter may be linearised by approximating the cone with a polyhedral or a box. Impacts are treated post facto in a separate *impact stage* succeeding the update of velocities and positions. At the impact stage, an impulse transfer is applied enabling discontinuous velocity changes, i.e. from \(\dot{\varvec{q}}^-\) to \(\dot{\varvec{q}}^+\). Newtons’ impact law, \(\varvec{n}^{\mathrm{T}}\dot{\varvec{q}}^{+} = - e \varvec{n}^{\mathrm{T}}\dot{\varvec{q}}^-\), is used with restitution coefficient *e* in conjunction with preserving all other constraints, \(\varvec{G}\dot{\varvec{q}} = 0\). This amounts to solving the same mlcp (10) but with \(\varvec{p}_{n} = \varvec{M}\dot{\varvec{q}}_{n}\) and \(\varvec{v}_{n} = 0\) on the right-hand side of Eq. (9).

A fixed timestep approach is preferred when aiming for fast full-system simulation with many nonsmooth events per unit time, which is the case with many dynamic contacts. The alternative, using variable timestep and exact event location, makes the numerical integration computationally intractable and may fail by occurrence of Zeno points.

### 2.4 Heterogeneous multidomain dynamics

*A*and

*B*, takes the following formwhere \(\varvec{\lambda }_{AB},[\varvec{G}_{{AB}_A},\varvec{G}_{{AB}_B}],\varvec{\varSigma }_{AB}\) are the multiplier, Jacobian, and regularisation of the subsystem coupling constraints. The individual subsystem matrices, \(\varvec{H}_{A}\) and \(\varvec{H}_{B}\), take the generic form of a saddle point matrix as in Eq. (9).

## 3 Constraint-based meshfree elastoplastic solid

This section describes the elastoplastic model that is assumed, the spatial discretisation method and the compliant deformation constraint.

### 3.1 Elastoplastic solid

*E*and \(\nu \) by \( \lambda = E\nu /\left( 1+\nu \right) \left( 1{-}2\nu \right) \) and \(\mu = E/2\left( 1+\nu \right) \). The corresponding strain energy density is

*c*the cohesion parameter such that \(\eta = 6\sin \phi /\sqrt{3}\left( 3-\sin \phi \right) \) and \(\xi = 6\cos \phi /\sqrt{3}\left( 3-\sin \phi \right) \).

*W*is the maximum volume compaction,

*D*is the hardening rate, and \(\kappa _0\) is the initial cap position where compressive failure first occurs. Observe that when the plastic volume compaction \({-}{{\mathrm{tr}}}({\varvec{\epsilon }}^{\text {p}})\) approaches

*W*, the cap variable \(\kappa \) goes to infinity. In this regime, the material no longer compact plastically and behaves like the standard Drucker–Prager model. The elastoplastic material parameters are summarised in Table 1. Expressions for the detailed shape of the compression cap and the derivatives of the yield functions are found in “Appendix”.

Elastoplastic model parameters

\(E, \nu \) | Young’s modulus and Poisson’s ratio |

\(\phi , c\) | Friction angle and cohesion |

| Max compaction and hardening rate |

\(T, \kappa \) | Cap \(I_1\)-intersections |

### 3.2 Meshfree method

The continuous solid of mass *m* and reference volume *V* is discretised into \({N}_{\text {p}}\) particles. The particles have mass \(m^i = m /{N}_{\text {p}}\), volume \(V^i = V /{N}_{\text {p}}\), position \(\varvec{q}^i\), and velocity \(\dot{\varvec{q}}^i\). The particle displacement is \(\varvec{u}^i = \varvec{q}^i - \varvec{x}^i\) with reference position \(\varvec{x}^i\) as illustrated in Fig. 1. A continuous and differentiable displacement field is approximated using the mls method [19, 33]. The displacement gradient field defines the strain tensor field in any point by Eq. (12). The particles can thus be understood as pseudo-particles having both particle and field properties.

*l*, and otherwise zero. The base function notation \(\varvec{p}^j = \varvec{p} (\varvec{x}^j)\) is used to simplify the expressions. The gradient of the interpolated displacement field is

### 3.3 Compliant deformation constraint

*i*, a deformation constraint is imposed

*l*. The compliance parameter becomes \(\varvec{\varepsilon }^i= (V^i\varvec{C}^i)^{-1}\), which depends on the material parameters, through Eq. (13), and on the spatial resolution through the particle volume factor \(V^i\) that appears when integrating from energy density to particle energy. As expected, softer materials will have larger compliance parameter and thus deform more easily. The Jacobian of the deformation constraint, \(\varvec{G} = \partial \varvec{g} /\partial \varvec{q}\), can be expanded through the chain rule into

*i*has block structure \(\varvec{G}^i = [\varvec{G}^{i1},\ldots , \varvec{G}^{ij}, \ldots , \varvec{G}^{i{N}_{\text {p}}}]\), where each block element \(\varvec{G}^{ij}\) has dimension \(6\times 3\). For notational convenience, the constraint vector is split in two parts, one for the diagonal terms of the strain tensor, \({\varvec{g}}_{\text {d}}^i = [\epsilon ^i_{xx},\epsilon ^i_{yy},\epsilon ^i_{zz}]^{\mathrm{T}}\) and one for the off-diagonal terms \({\varvec{g}}_{\text {od}}^i = [\epsilon ^i_{yz} + \epsilon ^i_{zy},\ \epsilon ^i_{zx} + \epsilon ^i_{xz},\ \epsilon ^i_{xy} + \epsilon ^i_{yx}]^{\mathrm{T}}\). The Jacobian blocks \(\varvec{G}^{ij}\) are split correspondingly into two \(3 \times 3\) Jacobian blocks, \(\varvec{G}^{ij} = [{{\varvec{G}}_{\text {d}}^{ij}}^{\mathrm{T}},\ {{\varvec{G}}_{\text {od}}^{ij}}^{\mathrm{T}}]^{\mathrm{T}}\). After some lengthy algebra, the following expressions for the Jacobians are found

#### 3.3.1 Stabilisation constraint

### 3.4 Contacts

*l*to each pseudo-particle and imposing the Signorini–Coulomb law for unilateral dry frictional contacts [5], as described in Sect. 2.3 and in greater detail in [8]. A contact situation between a solid and three rigid bodies is illustrated in Fig. 3. The contact overlap and normal are indicated as well as the contact point, which is defined at half distance between the overlapping geometries. Contacts between neighbouring pseudo-particles are ignored. Using spherical shapes to approximate the contact boundary of the solid has obvious drawbacks, e.g. perfectly smooth surfaces cannot be represented. This should be considered as an intermediate solution only, practical to implement in prototype code. More sophisticated representations of boundaries and contact detection algorithms for meshfree methods exist [35, 36] and should replace the use of spherical shapes.

## 4 Simulation

The implementation details and results from nonsmooth multidomain dynamic simulation including elastoplastic solids is presented in this section. The main simulation algorithm is given in Sect. 4.1. The elastoplastic solid model is implemented in C++ making use of the simulation software library *AGX Dynamics* [37] for data types, collision detection algorithms, and mlcp solver framework, covered in Sect. 4.2. The elastic and plastic model and implementation is verified by performing load–displacement simulation tests presented in Sect. 4.3. Finally, in Sect. 4.4, the applicability of the approach is demonstrated by multidomain examples including a simple terrain vehicle with tracked bogies driving over a deformable terrain and a simulated cone penetrometer test in soil with embedded rock.

### 4.1 Main algorithm

*impact solve stage*, in which impacting contacts are solved using the Newton impulse law \(\varvec{G}_\text {n}\dot{\varvec{q}}^{+} = - e \varvec{G}_\text {n}\dot{\varvec{q}}^{-}\), with coefficient of restitution

*e*, while satisfying all other constraint velocity conditions, \(\varvec{G}\dot{\varvec{q}}^+ = 0\), and complementarity conditions. The main mlcp solve determines the new velocities and constraint forces. After this the positions and orientations are integrated. At the end of each timestep, data of the new state are stored for post-processing and visualisation.

### 4.2 Overview of the mlcp solver

The main computational task for each timestep is solving the mlcp in Eq. (10) with saddle point matrix structure given in Eq. (9). Each sub-matrix is block-sparse and the routines for building, storing, and solving are tailored for this and exploit blas3 operations as much as possible to gain computational speed. In order to achieve high performance, e.g. real-time simulation of complex multidomain systems, splitting is applied [38]. Each subproblem can then be treated with different mlcp solvers that best fit the requirements of accuracy, stability, and scalability. For the elastoplastic solid and for jointed rigid multibodies, with relatively few complementarity conditions, a direct mlcp solver is used that is described in Sect. 4.2.2.

#### 4.2.1 Split solve

*A*,

*B*, and

*AB*for two subsystem and their coupling. The linear system (11) is split into two subproblems by duplicating the variables \(\dot{\varvec{q}}\) and \(\varvec{\lambda }_{AB}\) and reordering the augmented system. A stationary iterative update procedure can then be formed based on the four matrix blocks

*A*and

*B*permuted. The iterative procedure converges if the spectral radius of the augmented system \(\varvec{H}\) fulfils \(\rho ([\varvec{D} + \varvec{L}]^{-1}\varvec{U}) < 1\). The key point is that each subproblem can be approached using different solvers. In the case of a machine interacting with an elastoplastic terrain, the machine and solid terrain constraints,

*A*, are split from the tangential contact forces related to dry friction,

*B*, both systems sharing the normal contact constraints (nonpenetration),

*AB*. The subsystem (32), with the solid, machine, and contact normals is solved first using a direct solver, while the subsystem (33), containing friction constraints, is solved using an iterative projected Gauss–Seidel solver. The split solve may be terminated after the first iteration, accepting potential errors from the friction forces, or continued with a final stage 1 solve. Experiments show that further iterations do not necessarily reduce the errors. For large contact systems (\({>}1000\) contacts), with many complementarity conditions, both normal and friction constraints may be moved to an iterative projected Gauss–Seidel solver [8].

#### 4.2.2 Direct solver

The direct solver is a block pivot method [38] for mlcps based on Newton–Rhapson iterations applied to nonsmooth formulation. The detailed algorithm is an adaptation of Murty’s principal pivoting method, and is found in the reference [39] as Algorithm 21.2. Before the solve step, the matrix \(\varvec{H}\) is factorised by a permuted ldl-factorisation, \(\varvec{H} =\varvec{P}\varvec{L}\varvec{D}\varvec{L}^{\mathrm{T}} \varvec{P}^{\mathrm{T}}\), where the permutation \(\varvec{P}\) is used to minimise fill-ins and may include leaf-swapping to avoid pivoting on \(\varvec{\varSigma }\) since it is often close to zero. The factorisation requires symmetric indefinite matrices, but this is not the case with \(\varvec{H}\) initially as shown in Eq. (11). This is fixed by absorbing a negative sign in the vector \(\varvec{z}\).

### 4.3 Verification tests

The rotational invariance of the elastic solid model is verified in simulations confirming that the strain invariants are unaffected by rigid rotations of the body.

#### 4.3.1 Elasticity

*u*) and hydrostatic compression (

*c*) are investigated, as described in Fig. 4.

Elastic verification parameters

Parameter | Value |
---|---|

Side length | 1 m |

\({N}_{\text {p}}\) | \(\left( 6^3, 9^3, 11^3 \right) \) |

Resolution | \(1/{N}_{\text {p}}^{3}\) m |

Influence radius | \(2\,{\times }\) resolution |

Mass density | 2000 kg/m\(^3\) |

Young’s modulus | \(\left( 10^6,10^8 \right) \) Pa |

Poisson ratio \(\nu \) | \(\left( 0.1,0.25,0.49 \right) \) |

Timestep | \(10^{-3}\) s |

Stabilisation \(\alpha \) | (0, 100) |

*l*, and the stretch ratio in that direction is \(\underline{\lambda } = l/l_0\). The following exact relations can be derived

#### 4.3.2 Plasticity

The Drucker–Prager cap model is tested under hydrostatic and triaxial loading and unloading, following the tests made in [18] with \(E = 91\) MPa, \(\nu =0.3\), \(c = 14\) kPa, \(\phi = 22^\circ \), \(W = 0.1\), \(D = 1\) mm\(^2\)/N. Stabilisation constraint is used with \(\alpha = 100\). The hydrostatic test examines the relation between the pressure, \({\sigma }_{\text {h}} = I_1/3\), and the volumetric strain, \({{\mathrm{tr}}}(\epsilon )\), while undergoing plastic deformation on the compression cap. The simulation result is presented in Fig. 7. The result is a permanent deformation of the cube by \({{\mathrm{tr}}}{\epsilon } = 0.1\) compared to \({{\mathrm{tr}}}{\epsilon } = 0.12\) in [18]. The evolution of the stress invariants, \(I_1\) and \(J_2\), in the yield space shows that the deviatoric stress is negligible and stress evolves purely along the hydrostatic axis during loading and unloading.

*z*-axis is then increased up to a level where the material yields while the side wall pressure is kept constant. The material is finally unloaded. The simulated evolution of the deviatoric stress as function of strain is displayed in Fig. 8 for a Drucker–Prager material with and without cap model. The simulated Drucker–Prager material is found to yield at a critical stress of 270 kPa. This is in good agreement with the analytical prediction from Eq. (18). As expected, the yield plateau is lower and less pronounced in the case of the capped Drucker–Prager material, because the stress reaches the compression cap surface before the Drucker–Prager surface. The triaxial test can be used to determine the value of the plastic hardening parameter

*D*, whereas the maximum compaction parameter,

*W*, can be determined from the hydrostatic compression test.

#### 4.3.3 Dynamic contacts

### 4.4 Multidomain demonstration

The second demonstration example is a dynamic cone penetration test, where a cylindrical weight is dropped repeatedly on a cone measuring the penetration depth. This is a common way of measuring the mechanical properties of terrain. The penetration depth of the cone in simulated for two different cases. The first case is a homogeneous material, and the second is material with an embedded rock, represented by a rigid body, as illustrated by Fig. 11. The colours indicate the magnitude of displacement. The simulated cone penetration is presented in Fig. 12. The resistance is higher in the ground with an embedded rock, before the cone actually comes in contact with the rock.

## 5 Discussion

A meshfree elastoplastic solid model is made compatible with nonsmooth multidomain dynamics. The solid appears as a particle system in a constrained multibody system, on the same footing as articulated rigid multibodies and power transmission systems. The pseudo-particles carry field variables, e.g. stress and strain tensor fields, approximated using the moving least squares method. The dynamic interaction between the deformable solid, rigid multibodies, and other geometric boundaries is modelled by unilateral contact constraints with dry friction. The full system can be processed using the same numerical integrator and solver framework without introducing additional coupling equations with unknown parameters. Impulsive behaviour can automatically be transmitted instantly through the full and strongly coupled system. This enables fast and stable simulation of complex mechatronic systems interacting with elastoplastic materials. The MLS approximation underestimates the strain for short wavelength deformation modes. A stabilisation constraint is developed to compensate for this and it improves the accuracy and stability significantly. The explicit form of the deformation constraint and its Jacobian is given in Eqs. (24)–(26), and the stabilisation constraint in Eqs. (29)–(31). The Jacobians can be factored to a constant matrix that can be pre-computed, multiplied with current particle displacements.

The verification tests show good agreement with analytical reference solutions for large deformations of elastic and elastoplastic test cubes. The stabilisation constraint is essential for the accuracy and stability. Demonstration is made with a tracked terrain vehicle driving over deformable terrain using the capped Drucker–Prager model and a cone penetrometer test on terrain with and without an embedded rock.

The computational bottleneck of the simulation lies in solving the block-sparse mixed linear complementarity problem (10). With dedicated hardware, parallel factorisation algorithms, and iterative solver for a more approximate solution of the terrain dynamics, the performance can be expected to increase by several orders in magnitude. Exploring this is left for future work. Another area of improvement is to integrate the plastic yield and flow computations with the mixed complementarity problem for the constraint forces and velocity update. This will enable integration with larger timestep for strongly coupled problems than the current predictor–corrector method allow.

The presented method rest on the St. Venant–Kirchhoff elasticity model in combination with the Drucker–Prager plasticity model and the additive decomposition of the elastic and plastic strain. These assumptions are in general only valid under small deformations and alternatives should be considered in future work.

## Notes

### Acknowledgements

The Project was funded in part by the Kempe Foundation Grant JCK-1109, Umeå University and supported by Algoryx Simulation. The authors thank Prof. Urban Bergsten from the Swedish University of Agriculture, Komatsu Forest and Olofsfors AB, for fruitful discussions and ideas.

## References

- 1.Burgermeister B, Arnold M, Eichberger A (2011) Smooth velocity approximation for constrained systems in real-time simulation. Multibody Syst Dyn 26(1):1–14MathSciNetCrossRefMATHGoogle Scholar
- 2.Kübler K, Schiehlen W (2000) Two methods of simulator coupling. Math Comput Model Dyn Syst 6(2):93–113CrossRefMATHGoogle Scholar
- 3.Acary V, Brogliato B (2008) Numerical methods for nonsmooth dynamical systems: applications in mechanics and electronics. Springer, BerlinMATHGoogle Scholar
- 4.Moreau JJ (1999) Numerical aspects of the sweeping process. Comput Methods Appl Mech Eng 177:329–349MathSciNetCrossRefMATHGoogle Scholar
- 5.Jean M (1999) The non-smooth contact dynamics method. Comput Methods Appl Mech Eng 177(3–4):235–257MathSciNetCrossRefMATHGoogle Scholar
- 6.Cundall PA, Strack ODL (1979) A discrete numerical model for granular assemblies. Geotechnique 29:47–65CrossRefGoogle Scholar
- 7.Radjai F, Richefeu V (2009) Contact dynamics as a nonsmooth discrete element method. Mech Mater 41(6):715–728CrossRefGoogle Scholar
- 8.Servin M, Wang D, Lacoursière C, Bodin K (2014) Examining the smooth and nonsmooth discrete element approach to granular matter. Int J Numer Methods Eng 97:878–902CrossRefMATHGoogle Scholar
- 9.de Souza Neto E A, Peric D, Owen DRJ (2008) Computational methods for plasticity: theory and applications. Wiley, ChichesterGoogle Scholar
- 10.Liu GR, Gu YT (2010) An introduction to meshfree methods and their programming. Springer Publishing Company, DordrechtGoogle Scholar
- 11.Nguyen VP, Rabczukb T, Bordasc S, Duot M (2008) Meshless methods: a review and computer implementation aspects. Math Comput Simul 79:763–813MathSciNetCrossRefGoogle Scholar
- 12.Ullah Z, Augarde CE (2013) Finite deformation elasto-plastic modelling using an adaptive meshless method. Comput Struct 118:39–52CrossRefGoogle Scholar
- 13.Wellmann C, Wriggers P (2012) A two-scale model of granular materials. Comput Methods Appl Mech Eng 205–208:46–58MathSciNetCrossRefMATHGoogle Scholar
- 14.Rycroft CH, Wong Y, Bazant MZ (2010) Fast spot-based multiscale simulations of granular flow. Powder Technol 200:111CrossRefGoogle Scholar
- 15.Servin M, Wang D (2016) Adaptive model reduction for nonsmooth discrete element simulation. Comput Part Mech 3(1):107121Google Scholar
- 16.Lacoursière C (2007) Ghosts and machines: regularized variational methods for interactive simulations of multibodies with dry frictional contacts. PhD thesis, Umeå universityGoogle Scholar
- 17.Lacoursière C (2007) Regularized, stabilized, variational methods for multibodies. In: Fritzson D, Bunus P, Führer C (eds) The 48th Scandinavian conference on simulation and modeling (SIMS 2007), Göteborg, 30–31 Oct 2007Google Scholar
- 18.Dolarevic S, Ibrahimbegovic A (2007) A modified three-surface elasto-plastic cap model and its numerical implementation. Comput Struct 85(7–8):419–430CrossRefGoogle Scholar
- 19.Belytschko T, Lu YY, Gu L (1994) Element-free Galerkin methods. Int J Numer Methods Eng 37(2):229–256MathSciNetCrossRefMATHGoogle Scholar
- 20.Beissel S, Belytschko T (1996) Nodal integration of the element-free Galerkin method. Comput Methods Appl Mech Eng 139:49–74MathSciNetCrossRefMATHGoogle Scholar
- 21.Taheri S, Sandu C, Taheri S, Pinto E, Gorsich D (2015) A technical survey on Terramechanics models for tire–terrain interaction used in modeling and simulation of wheeled vehicles. J Terrramech 57:1–22CrossRefGoogle Scholar
- 22.Azimi A, Holz D, Kövecses J, Angeles J, Teichmann M (2015) A multibody dynamics framework for simulation of rovers on soft terrain. J Comput Nonlinear Dyn 10(3):031004CrossRefGoogle Scholar
- 23.Madsen J, Seidl A, Negrut D (2013) Compaction-based deformable terrain model as an interface for real-time vehicle dynamics simulations. SAE World Congress, DetroitCrossRefGoogle Scholar
- 24.Shoop SA (2001) Finite element modeling of tire–terrain interaction. CRREL technical report, ERDC/CRREL TR-01-16, US Army Cold Regions Research and Engineering Laboratory, HanoverGoogle Scholar
- 25.Xia K (2013) Finite element modeling of tire/terrain interaction: application to predicting soil compaction and tire mobility. J Terrramech 48:113–123CrossRefGoogle Scholar
- 26.Shabana A (2005) Dynamics of multibody systems. Cambridge University Press, New YorkGoogle Scholar
- 27.Bornemann F, Schütte C (1997) Homogenization of Hamiltonian systems with a strong constraining potential. Phys D 102(1–2):57–77MathSciNetCrossRefMATHGoogle Scholar
- 28.Marsden JE, West M (2001) Discrete mechanics and variational integrators. Acta Numer 10:357–514MathSciNetCrossRefMATHGoogle Scholar
- 29.Servin M, Lacoursière C (2008) Rigid body cable for virtual environments. IEEE Trans Vis Comput Graph 14(4):783–796CrossRefGoogle Scholar
- 30.Servin M, Lacoursière C, Nordfelth F, Bodin K (2011) Hybrid, multiresolution wires with massless frictional contacts. IEEE Trans Vis Comput Graph 17(7):970–982CrossRefGoogle Scholar
- 31.Bodin K, Lacoursiere C, Servin M (2012) Constraint fluids. IEEE Trans Vis Comput Graph 18(3):516–526CrossRefGoogle Scholar
- 32.Pang JS, Stewart D (2008) Differential variational inequalities. Math Program 113(2):345–424MathSciNetCrossRefMATHGoogle Scholar
- 33.Wasfy M, Noor A (2003) Computational strategies for flexible multibody systems. Appl Mech Rev 56(6):553–613CrossRefGoogle Scholar
- 34.Miguel J, Onate P (2001) A finite point method for elasticity problems, computers and structures. Comput Struct 79:2151–2163CrossRefGoogle Scholar
- 35.Li S, Qian D, Liu W, Belytschko T (2001) A meshfree contact-detection algorithm. Comput Methods Appl Mech Eng 190:3271–3292MathSciNetCrossRefMATHGoogle Scholar
- 36.Wang H-P, Wu C-T, Chen J-S (2014) A reproducing kernel smooth contact formulation for metal forming simulations. Comput Mech 54:151–169MathSciNetCrossRefMATHGoogle Scholar
- 37.Algoryx Simulations (2016) AGX dynamics. SeptemberGoogle Scholar
- 38.Cottle R, Pang J-S, Stone R (1992) The linear complementarity problem. Computer Science and Scientific ComputingGoogle Scholar
- 39.Lacoursière C, Linde M (2011) Spook: a variational time-stepping scheme for rigid multibody systems subject to dry frictional contacts. UMINF report 11.09, Umeå UniversityGoogle Scholar

## Copyright information

**Open Access**This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.