# Research Advances in Large Deformation Analysis and Applications of the Material Point Method
## 2 Methodology of the MPM
### MPM Contact Model  
In the standard MPM, a one-to-one mapping function is used between the grid and material points, which automatically satisfies the no-slip contact constraints between different phases of the object and prevents penetration. However, the standard MPM cannot address relative contact sliding and separation between objects. Therefore, many scholars have studied the contact algorithms of the MPM model and proposed corresponding improved methods. [PERSON] et al. (2014) were the first to establish a material point contact algorithm, considering frictional contact. This algorithm prevents interpenetration while permitting separation, sliding, and rolling friction. Node velocities are predicted,and if there is no contact, the contact model is used for correction. The following equation is used to determine whether two objects are in contact:  
\[\left(\widetilde{v}_{i}^{n+1,k}-v_{i}^{cm}\right)\cdot m_{i}^{k}>0 \tag{10}\]  
where \(i\) is the contact point, \(k\) is the normal vector of the object, \(v_{i}^{cm}\) is the centroid velocity, and \(m_{i}^{k}\) is the mass gradient of the object. The Bardenhagen contact algorithm uses node-based contact detection and supports only Coulomb friction for frictional contact. Therefore, the resolution provided by the material points and the grid, as well as the MPM discretization method, can affect the accuracy and stability of contact detection. [PERSON] and [PERSON] (2015) proposed a sliding/separation contact algorithm based on a multi-grid scheme, placing each material (as shown in Figure 2 with objects I and II) on a separate background grid. However, in their contact algorithm, contact friction is not considered, and the no-penetration condition based on grid nodes does not guarantee the same for different particles. To address this, [PERSON] et al. (2016) incorporated the no-penetration condition into the velocity calculation. In early contact algorithms, the determination of whether two objects are in contact was based on the velocities at common nodes, which could lead to the \"early contact\" phenomenon (see Figure 3). To prevent contact from occurring before the actual physical contact on the surfaces of the objects, [PERSON] et al. (2017) introduced a penalty function to improve contact detection, proposed a geotechnical contact algorithm, and revised the velocity difference in Equation (10) as follows:  
\[\widetilde{v}_{i}^{n+1,k}-v_{i}^{cm}=f_{p}\cdot\left(\widetilde{v}_{i}^{n+1,k }-v_{i}^{cm}\right) \tag{11}\]  
\[f_{p}=1-\left(\frac{min(\Delta x,d)}{\Delta x}\right)^{\gamma} \tag{12}\]  
Figure 2: The multi-mesh mapping scheme ([PERSON] et al., 2015). Where, I and II represent two distinct objects. where \(\Delta x\) is the size of the background cell; \(\gamma\) is the coefficient that controls the smoothness of the smoothing function \(f_{p}\); \(d\) is the distance from the contact node to the object's surface, approximated by traversing all the material points of the object from the contact node, which requires the refinement of both particles and grids for a satisfactory approximation. To address this, [PERSON] and [PERSON] [19] proposed a more accurate distance formula derived from the extrapolated distance \(d^{ext}\):  
\[\frac{d}{\Delta x}= \begin{cases}1-2\left(\frac{-d^{ext}}{1.25\Delta x}\right) ^{0.58}&d^{ext}\leq 0\\ 2\left(\frac{-d^{ext}}{1.25\Delta x}\right)^{0.58}-1&d^{ext}>0\end{cases}  \tag{13}\]  
\[d^{ext}=\left(x_{j}-x_{i}\right)\cdot n_{i} \tag{14}\]  
where \(x_{j}\), \(x_{i}\), and \(n_{i}\) represent the extrapolated position of the material point from the contact node, the node position, and the surface normal, respectively. Building upon Equation (13), [PERSON] et al. [20] modified the smoothing function \(f_{p}\) as follows:  
\[f_{p}=\frac{1-\alpha x^{\beta}}{1+\alpha x^{\beta}}\quad\alpha\epsilon[0,1], \beta\epsilon[2,+\infty) \tag{15}\]  
where \(x=|d/\Delta x|\), \(\alpha\), and \(\beta\) are parameters that adjust the smoothness of the function. Furthermore, [PERSON] et al.